Анализ логов с помощью Hadoop/Python

    Привет, Хабр! В этом посте я хотел бы рассказать вам о том, как мы, Лаборатория новых профессий, вместе с компанией Data-centric Alliance смогли сконструировать несколько лабораторных работ, посвящённых обработке и анализу веб-логов. Эти лабораторные работы являются ключевыми в рамках первого кейса нашей образовательной программы «Специалист по большим данным» и выполняются на основе аудиторных данных DMP Facetz.DCA. Меня зовут Артем Пичугин, и я являюсь её координатором.



    Задача


    Представьте, что вы компания, продающая автомобили. Кому показать рекламу автомобиля? На каких сайтах? Так, чтобы недорого и эффективно? Казалось бы, ответ очевиден: пользователям, которые заходят на страницы покупки автомобилей на сайтах компаний, а также на досках объявлений типа Avito и т д.

    Но в этом и заключается проблема: именно в этом месте, ровно этим пользователям показывать рекламу хотят все — большой спрос на маленьком количестве известных площадок, такие показы будут дорогими! Есть второй вариант: найти менее популярные сайты, на которых сидят интересующие вас пользователи (просматривающие страницы покупки автомобилей), и показывать рекламу на этих сайтах. В таком случае стоимость показа рекламы будет ниже, при том, что конверсия может оставаться неплохой. Может даже возникнуть ситуация, когда человек ещё ничего не смотрел на тему покупки авто, а лишь задумывался об этом – и первое, что он увидит – ваше предложение!

    Анализ логов


    Подобную задачу решают компании-игроки RTB-рынка, который сейчас переживает активный рост (на днях платформа GetIntent привлекла раунд инвестиций в $1 млн, в начале года Сбербанк купил платформу Segmento, а новые игроки появляются, как грибы после дождя). Аналитический компонент RTB-платформы, отвечающий за сбор информации о пользователе, выполняет DMP-система. Собственные DMP необходимы не только RTB-компаниям, но и всем, кто обладает большим объемом данных (например, банкам, телекомам, интернет-порталам), а также всем, кто хочет обогатить свои данные с помощью покупки внешних данных в формате веб-логов. В основе DMP-системы лежит работа с большими объёмами данных о посещении пользователями сайтов на основе логов. Эти логи тщательно собираются с привлечением множества партнёров.

    Дисклеймер! Ниже мы хотим описать пошаговый сценарий обработки и анализа логов с помощью Hadoop и Python, которые в упрощённом виде повторяют работу ключевого компонента DMP-системы. Мы используем этот сценарий во время обучения обработке и анализу больших данных в Лаборатории новых профессий. При проектировании этого сценария мы старались быть максимально близкими к решению конкретной бизнес-задачи построения DMP-системы. Слушатели курса выполняют эти работы с реальными данными на Hadoop-кластере от 4 до 20 серверов.

    Последовательность действий


    Итак, как можно использовать логи для оптимизации показа рекламы (казалось бы: userid, url, timestamp – скука смертная, только поглядите)? Для этого необходимо проделать несколько операций.

    Дано: несколько терабайт логов посещений сайтов.  

    Что мы делаем:

    1. Простейшей эвристикой определяем «нужных пользователей», например, по числу заходов на сайт auto.ru за неделю или две. В итоге получаем список нужных пользователей.

    2. Теперь для каждого сайта считаем его посещаемость нужными пользователями и всеми пользователями вообще. И долю «правильных» от числа всех посетителей сайта. У каких-то сайтов это будет 0.01% (мало нашей целевой аудитории), а у каких-то 5% (много нашей целевой аудитории).

    3. Сортируем сайты по убыванию расчитанного показателя и выбираем топ-300 сайтов, на которых находится наша целевая аудитория. Смотрим их глазами.

    Наблюдаем, что в топе таких сайтов оказываются сайты «подготовка к ПДД», сайты автошкол. Вы скажете – это очевидный вывод, можно было и так догадаться, безо всяких веб-логов. Тогда ответьте — какие? На каких именно сайтах автошкол и подготовки к ПДД нужно рекламировать Ладу Калину? А Форд Фокус? А Mercedes ML? Именно на этом этапе и требуются более глубокие знания о клиенте, которые «поставляет» DMP-система, о которой немного ниже.

    Инструменты Big Data


    Для того, чтобы выполнить эту, казалось бы, несложную задачу, необходимо уже уметь работать с инструментами Big Data и иметь доступ к данным для анализа. В нашем случае данные были предоставлены DMP Facetz.DCA.

    1. Логи нужно где-то хранить – можно положить их напрямую в HDFS, причём таким образом, чтобы с ними мог хорошо работать MapReduce.

    2. Необходимо уметь эти логи обрабатывать – сортировать по разным параметрам, находить топ-100/300/1000 сайтов, определять долю целевых пользователей в общем трафике. Тут уже понадобится парадигма MapReduce и умение писать распредёленные алгоритмы с использованием:

      – фильтрации (map-only jobs)
      – оптимизации: соединения map-join (использование distributed cache)
      – оптимизации: применения combiner (требования реализации reducer)
      – соединения reduce-join
      – поиск top-100 (single reducer)

    3. Хотя это верно и не только для Big Data, но для большого объёма данных становится особенно критично, необходимо построить грамотный процесс предобработки данных.

    Машинное обучение


    В предыдущей части мы выявили пользователей, которые интересуются автомобилями, нашли, на каких неочевидных сайтах они сидят. Теперь как понять, какую рекламу им показывать? Для этого нам нужно узнать больше о профиле клиента, его возрасте, уровне дохода и других важных для нас как продавца харакетристиках. Конечно, бизнес хорошо знает социо-демографический профиль своих покупателей и знает, кому из них лучше предложить Калину, а кому Mercedes ML.

    Задача DMP-системы – обогащать знания о каждом отдельно взятом клиенте, навешивая на него как можно больше «тэгов» — пол, возраст, уровень доходов и т.д. (в частности система Facetz.DCA умеет выделять более 2000 подобных сегментов на материале 650 000 000 кук). Естественно, про каждого человека подробной информации нет, поэтому приходится  восстанавливать признаки с высоким уровнем точности с помощью машинного обучения. На этом этапе и появляются элементы «rocket science».

    В рамках программы слушатели решают одну из самых важных задач – восстановление пола и возрастной категории клиента по логам его посещения сайтов.

    Итак, мы возвращаемся к итоговой задаче – дано несколько терабайт логов посещений сайтов.

    Задача 1: для каждого userid определить вероятность, что это мужчина или женщина.
    Задача 2 (дополнительной сложности): предсказать пол и возраст для конкретных клиентов.

    Первый этап работы – очистка и предобработка данных.

    • Работа с аномальными значениями
    • Удалить мусор (технические посещения)
    • Нормализовать url (например, c www и без www)
    • Работа с пропущенными значениями (заполняешь, если пропущен timestamp или url, либо удаляешь совсем если пропущен userid)

    Второй этап – feature engineering.

    Это самый интересный и творческий этап работы – необходимо обогатить исходные данные, добавить какие-то дополнительные свойства («фичи»), которые позволят интерпретировать небогатый формат данных!

    На этом уровне существует множество подходов и нет однозначной «методички», как делать это правильно. Несколько идей, как подходили к решению этой задачи слушатели программы:

    • Можно проанализировать сам домен и сгруппировать сайты по нему;
    • Можно скачать описательную часть страницы (title, keywords, метаописания) и проанализировать их;
    • Самый тяжёлый, но глубокий вариант – это перейти по ссылке и скачать весь код страницы и постараться определить тематику страницы;
    • Ещё один подход, это связать посещения пользователем сайтов в цепочку и определить логику в последовательности переходов;
    • Отдельной «фичей» могут стать мобильные домены (m.facebook.com), они тоже могут быть полезны для определения категории пользователя.

    Все эти «фичи» станут основой для алгоритма машинного обучения.

    Последний этап – применение машинного обучения.

    Следующим шагом необходимо применить машинное обучения для решения задачи. Для решения первой задачи необходимо выбрать целевую переменную – степень уверенности классификатора в поле конкретного userid. Каждый слушатель, проделав предварительную работу по предобработке данных и feature engineering, создаёт модель предсказания, которая в итоге и определяет значение целевой переменной для каждого пользователя. Данная задача является классической задачей бинарной классификации, которая в рамках программы решается с использованием стека Python, где уже реализованы большинство алгоритмов машинного обучения, например, в классической библиотеке scikit-learn. Автоматический скрипт проверки оценивает качество классификатора по показателю AUC.

    Задача с дополнительным уровнем сложности наиболее приближена к реальной задаче data scientist’ов, которые разрабатывают аналитический движок DMP-системы. Слушатели должны были сделать предсказания о поле и возрастной категории конкретного человека. Если обе переменные предсказаны правильно, то по данному userid предсказание считается верным. При этом можно было делать предсказание не для всех пользователей, а на своё усмотрение выбрать 50%. Таким образом, сам слушатель мог отсортировать людей по уровню уверенности в предсказании, а потом выбрать лучшую половину.

    Это одно из отличий от обычной академической задачи, где зачастую ты должен спрогнозировать заданный парметр для всех наблюдений. В бизнес-подходе мы учитываем, что размещение рекламы стоит денег, поэтому рекламодатель старается  оптимизировать затраты и показывать рекламу только тем, про кого наш уровень уверенности в предсказании превышает заданное пороговое значение.

    Этот этап работы оказался наиболее творческим и требующим применить здравый смысл, системное мышление и умение итеративно улучшать своё решение.

    Что в особенности удивило наших слушателей:

    1. Даже простые алгоритмы дают неплохой результат на достаточно большой выборке
    2. Важнее предобработка + feature engineering (генерирование «фич» на основе данных), чем построение всё более сложных алгоритмов или моделей предсказания
    3. Приемлемое решение можно получить простыми способами, однако, повышение точности предсказания требует непропорциональных усилий и использования нетривиальных подходов.
    DCA (Data-Centric Alliance)
    82.97
    Company
    Share post

    Comments 48

      +4
      Что это было, простите? Реклама вашей учебной программы?
      • UFO just landed and posted this here
      • UFO just landed and posted this here
          –1
          Не знаю насчет сбербанка, но могу сказать за Data-Centric Alliance — с курсов у нас работает 2 человека, еще 2 находятся на рассмотрении. Также знаю что один человек устроился к нашим конкурентам, один в дружественный стартап занимающийся пресональными рекомендациями, а один начал делать свой бизнес связанный с монетизацией технологий работы с данными.
          • UFO just landed and posted this here
              –1
              Артем является координатором а не преподавателем, хотя вклад который делает Артем очень велик)
              При этом не очень понятно что плохого в возрасте 25 лет. Мне например не сильно больше и кажется нигде никто не скрывает что я преподаю на этих курсах )

              По поводу отправки своих людей на бюджетные места в качестве приманки это уж совсем какая-то конспирология. Думаю при желании вы легко сможете проверить что это совсем не так.

              Людей мы берем на работу не за то что они закончили курсы, а за соответствие предъявляемым требованиям к кандидату.
              • UFO just landed and posted this here
                  –3
                  Курс помогает получить необходимые знания и навыки, которые дальше повышают вероятность трудоустройства по соответствующим позициям. Наши выпускники после прохождения курса устроились в такие компании как Glowbyte Consulting, Dream Industries, одна из DMP-систем, розничная сеть, несколько стартапов. Пара человек уехали за границу.

                  На самом деле смена работы — это далеко не единственный эффект, который возникает после обучения. Многие говорят, что смогли у нас прокачаться и запустили новый проект на текущем месте работы. стали приносить больше пользы и получили повышение в должности/зарплате, получили грант на исследование.

                  Отвечая на другой ваш комментарий. Действительно, я не являюсь преподавателем. Я занимаюсь организацией обучения. Вот небольшой список наших преподавателей: Александр Петров, Григорий Сапунов, Диляра Хакимова, Александр Крот, Владимир Лесниченко, Максим Лапань, Петр Ермаков, Антон Пилипенко, Николай Марков. Еще много людей «из бизнеса», которые проводят мастер-классы, делясь опытом и рассказывая о подводных камнях, с которыми столкнулись, применяя те или иные инструменты.

                  Вообще, это действительно оффтоп уже, поэтому приглашаю вас на наш День открытых дверей, который состоится 23 сентября, на котором сможете задать все волнующие вас вопросы, пообщаться с преподавателями и выпускниками.
                  • UFO just landed and posted this here
                      –4
                      Никто и не заявляет, что мы сделали из ничего из себя не представляющих людей хороших специалистов. Мы изначально берём к себе людей, уже много добившихся в своей области, профессионалов, людей, которые умеют и любят учиться. На нашем курсе они получают новые знания и навыки, которые дают эффект.

                      А с конспирологией, действительно, можно далеко уйти. Даже может показаться, что вы — наш подсадной человек, который помогает нам в комментах рассказать чуть больше о своём курсе)
                0
                Не буду вступать в дискуссию по поводу содержания и целей данной статьи.
                Но по поводу преподавателей Вы категорически не правы.
                Я прошел курсы и нахожу их достаточно интересными, а преподавателей компетентными. На вскидку лекторов было более 15, более 90% из которых я считаю не просто компетентными в области, про которую они вели повествование, а отличными специалистами в ней (данной области).
                Я не платил 180к, но и никак не аффилирован с DCА. От того, что я не платил этой суммы, я не могу объективно судить, стоят или нет они этой цены.
                Но я могу подтвердить слова asash — из более 50 человек (может их было даже за 60-70, я не вел статистику) не было никого из DCA, потому Ваши суждения о том, что те кто хорошо устроились — подсадные, в корне неверны.
                • UFO just landed and posted this here
                    0
                    1. Наверно я не правильно понял вопрос, но мой ответ: высшее. Если вы о пересечении курсов и моих знаний — 15-20% из всей информации прочитанной на курсе я знал (в основном разделы ML и NLP).
                    2. Я не менял работу, потому как меня моя устраивает. Но прошел 2 собеседования и получил 2 офера в совершенно посторонние фирмы (которые даже не слышали об этих курсах) на позиции связанные с Hadoop и Spark, с которыми я был совершенно поверхностно знаком (Hadoop) и не знаком (Spark) до прихода на данный курс.
                  • UFO just landed and posted this here
                      0
                      Берут за знания и умения, а не за диплом или сертификат или ещё какую-то бумажку.
              +3
              Вы забыли тэг «я пиарюсь».
              • UFO just landed and posted this here
                +7
                Не стоило ставить тэг python на пост в котором ни строчки кода.
                  –1
                  Да, спасибо! Хорошая мысль.
                  +3
                  Голый Hadoop в виде MapReduce со стримингом (который никогда не был действительно хорош) в Python???

                  Вы действительно не шутите когда в 2015 году предлагаете ручками писать map/reduce?

                  Первая часть по инструментарию легко и непринужденно решается hive/impala и обычным sql. К моменту когда первые ученики еще только будут заканчивать читать описание api, в вилабаджио будут праздновать вторая группа уже будет рисовать таблички и графики

                  По машинному обучению уж насколько я недолюбливаю spark за их маркетинг, но конкретно в данном случае он может справиться и с первым заданием и со вторым в разы быстрее.

                  Так как ваши пункты по чистке нормально укладываются в pipeline и каждый из них будет отдельный map без смешивания логики, то спарк их прогонит за один проход. В хадупе или все в один map или пачку раз перезапускаем разные скрипты с сохранением промежуточных результатов, в любом случае не очень красиво.

                  Как результат у вас или datascienist закопается в инженерных нюансах как делать map/reduce, или если рассчитано на инженеров, то они в математики потом увязнут. Так на кого курс рассчитан?
                    0
                    Абсолютно верно! Map-reduce мы даем в качестве базы, которую ну просто должен знать каждый человек, который имеет отношение к большим данным. После некоторого момента наши слушатели делают лабораторные уже на hive или impala и не пишут map-reduce ручками, а делают несколько sql-like запросов, получая тот же результат.

                    А Спарку у нас посвящен целый второй модуль. Полностью согласен, что можно решать эту задачу и при помощи этого замечательного инструмента.
                  • UFO just landed and posted this here
                      0
                      Давайте все-таки расставим все на свои места.

                      1)DCA и newprolab это разные организации. Я не являюсь сотрудником newprolab и не могу отвечать на орг. вопросы типа «почему курсы стоят столько», «почему вы не договорились со сбербанком» и тд. По сути для newprolab я лишь подрядчик.

                      2)Я не писал про «поголовно устраиваются на крутые работы», лишь перечислил несколько человек про которых мне известно чем они занимаются.

                      К вопросу «почему вас не взял сбербанк под свое крыло». Опять же не могу отвечать за организаторов, могу лишь предположить что проект изначально задумывался как коммерческий и выходящий за рамки одной конкретной организации.
                        0
                        Обучают бесплатно? Есть конторы, которые во время учебы еще и стипендию платят :)
                        • UFO just landed and posted this here
                            0
                            Существуют разные бизнес-модели. Например, есть газета «Метро» — бесплатная для читателей, есть газеты, за которые, наоборот, люди платят деньги! Есть бесплатное телевидение, есть то, за которое люди платят.

                            Существуют разные целевые аудитории. Те уважаемые образовательные проекты, которые вы указали, предлагают в большинстве своём — очные 2-3 летние программы. Это означает, что они изначально направлены на студентов и аспирантов. Там нужно сдавать сложные экзамены вступительные. По их итогам вы получаете прекрасный фундамент. Практическая и бизнес-сторона там представлена хуже.

                            У нас другая история. У нас есть человек, который имеет хороший профессиональный опыт. У него нет времени на очные программы, на подготовку к экзаменам. Он хочет освоить для себя новую профессию, прокачаться в короткий срок и быстро получить эффект в виде трудоустройства, развития нового направления в компании, повышения в должности, зарплате. Обучение практико- и бизнесориентированное. Вот и все.

                            На этом предлагаю перенести нашу увлекательную дискуссию в приватное общение. В моем профиле можно найти ссылку на мой Фейсбук. Буду рад пообщаться!
                        +2
                        Если коротко, то я до курса писал только на Delphi и T-SQL и то не очень часто, т.к. последние 7 лет работал руководителем проектов. Курс даёт только азы, всё остальное на 99% постигаешь сам через Google. В начале курса, пообещав сильную нагрузку по лабораторным, потом перестали справлятся с их подготовкой и к концу курса сократили их вдвое. Со второго курса один наш кейс по графам вообще убрали из программы. Учебный план на 2 занятия в конце сократили, на мои возмущения ответ был, что по взаимному согласию. У меня этого согласия никто не спрашивал. Обещания в рекламе программы трудоустройства в Сбербанк — тоже блеф. В начале курса нам обещали 8 лучших взять туда. Не взяли никого. Это из минусов.

                        Из плюсов. Я сейчас линуксоид и пишу на python (нас на курсе этому не учили, но без этого оказалось никак). Я сейчас не боюсь страшных слов Hadoop, Hive, Spark и т.д. и даже, при необходимости, могу самостоятельно развернуть кластер на Hadoop и написать на python mapreduce-job-у. Меня не берут никуда на работу (думаю, что по возрасту и отсутствия слов программист и аналитик за последние 8 лет в моём резюме), но в одной из компаний в меня поверили и я сейчас лапачу многогигабайтные логи на python notebook и собираемся в компании устанавливать Hadoop. Мы также с ребятами с курса в июне на хакатоне Azure ML заняли 1-е и 2-е места из 30-ти команд, На недавнем Дататоне я, решив всего одну задачу из 3-х, занял с ещё одним студентом с нашего курса 3-е почётное место, опередив по метрике нашей задачи почти в 2 раза команду, занявшую 1-е место. Буквально сегодня получил бесплатный промокод на Международную конференцию по Больши Данным от RusBase за присланное им решение по их задаче прогнозирования оттока для Сбербанка.

                        Как-то так. Моё резюме: если ты платишь из своего кармана и тем более не лишние деньги, то стоимость курса завышена, но если бы у нас был нормально работающий плноценный кластер для лабораторных и полноценное консультирование специалистов по курсу, то она бы была адекватной.

                        Бесплатников у нас на курсе было 5 человек и это были сильные ребята, видимо для того, чтобы не просел весь курс и это неплохо. А на тему трудоустройства — нас берут с неохотой, но это тоже преодолимо и часть ребят уже и правда сменили свою деятельность на работу с Большими Данными, правда без помощи поддержки с курса, но это только доказывает, что не совсем всё так плохо, как вам кажется со стороны.
                          –1
                          От себя добавлю, что многие из указанных минусов были исправлены на втором наборе.
                          • UFO just landed and posted this here
                              0
                              Мы поверхностно прошли теорию графов, но при этом мы уделили время другим вещам типа NLP и ML. Я указал недостатки курса не для того, чтобы троллить топикстартера, а для того, чтобы быть объективным ;).
                              Я доволен курсом! Нисколько не жалею о времени и деньгах.
                                0
                                Ребята работают, думаю все устаканится со временем. Подскажите мне курс (ну кроме ШАД и курсов других крупных игроков рунета, где можно не отрываясь от рабочего процесса пройти обучение, ибо BigData — это в основном математика) и давайте попробуем сделать сравнительную таблицу, чтобы не быть голословными. А иначе, прошу прощения, это — просто троллинг.
                                  0
                                  coursera.org & edx.org

                                  курсы и по BigData и по ML

                                  по крайней мере исходя из перечисленных тем обоих модулей я что-то не вижу чего-то эксклюзивного, за что можно заплатить 180к
                                  конечно если компания готова заплатить, то слушателю как-то без разницы, даже 2млн не много, тут подходят пословицы «не свои, не жалко» и «нахаляву и уксус сладкий»

                                  обычный минимальный набор базовых знаний, ключевое слово БАЗОВЫХ, по которым курсов и статей написано не просто много, а море, так как BigData & ML сейчас в тренде

                                  если же ключевым является именно «курсов других крупных игроков рунета», то хочу вас расстроить, на этих курсах образование и закончится, так как все ключевые вещи идут на английском, а если знаешь english, то к чему отсылка на русских игроков?

                                  p.s. Есть ли тут хоть кто либо, кто САМ платил, а не прошел по «бесплатной квоте» или за кого заплатили текущие работодатели?
                                    0
                                    Да, все верно, базовых. Есть еще stepic, там неплохие курсы по статистике и языку R. Но есть небольшое «но», опять же imho. Курс Andrew Ng на корсре тоже базовый, согласитесь?
                                    Напишу то, что нет в курсе на корсре:
                                    • Практическое занятие по развертыванию cloudera на серверах в Amazon
                                    • Практическое занятие по развертыванию Apache Spark
                                    • Практические занятия по scikit-learn, а именно — структуры данных, базовые алгоритмы ML и NLP
                                    • Практические лабораторные работы, результаты которых можно с изменениями применить на практике
                                    • Ответы преподавателей на вопросы в кулуарах
                                    • Обмен опытом, синергия

                                    • UFO just landed and posted this here
                                        0
                                        У Вас хорошее чувство юмора, простите за оффтоп. :)
                                      0
                                      «то хочу вас расстроить, на этих курсах образование и закончится» время покажет :)
                                        0
                                        По поводу «отсылки на русских игроков» я конечно понимаю TRUEшность обучения на английском, но ведь на русском более доступно? Конечно, большое количество ИТ-специалистов хорошо читают и пишут на английском, но все-ли могут понять с ходу суть сложной математики? Кому-то комфортно на английском, а кто-то предпочитает русский. Об адекватности или неадекватности цены никто не спорит (не нравится — не платите). Просто товарищи сводят на нет все, даже труд преподавателей, с чем позвольте не согласиться.
                                +3
                                > Дано: несколько терабайт логов посещений сайтов.

                                Простите за, возможно, тупой вопрос. А где вы их взяли?
                                  0
                                  Я написал гигабайты, хотя их и правда терабайты ) И я работаю в DSP
                                    0
                                    На курсе терабайт не было, т.к. работа с ним положило бы учебный кластер
                                    +2
                                    Не совсем понимаю целей подобных наворотов для решения задачи с логами.
                                    Чем вы лучше например решения Elastic+kibana для той же задачи?
                                      0
                                      Спасибо за вопрос по теме) А расскажите чуть подробнее, как бы вы решали эти же задачи вашим способом?
                                      0
                                      Привет, коллеги! Я прошел эти курсы во втором наборе. Вообще, у каждого есть свое чувство цена=качество. По мне, не все так плохо. Можно конечно отметить минусы, говорить что не все было гладко… но, я попытаюсь написать, что мне этот курс дал (плюсы):
                                      • Вектор движения в обучении BigData
                                      • Теорию и подход. Курс показал с какой стороны подступаться к анализу данных
                                      • Практику. Cloudera и Apache Spark (не буду рассказывать про MapReduce и Hadoop, это было в учебных целях). Как развернуть, как начать работать
                                      • Знакомство с отличными ребятами — преподавателями. Все они мастера своего дела и готовы помочь с проектом в любое время — а это, многого стоит
                                      • Знакомство со однокурсниками — коллегами. Я думаю мы с ними еще не раз «столкнемся»
                                      • По рекомендации курса я получил грант Amazon


                                      Отдельно надо отметить соревнования при решении лабораторных работ. Было интересно. Возможно я напишу небольшой рассказ на хабре про свой опыт использования библиотеки MyMediaLite.

                                      Были конечно и минусы:

                                      • в самом начале были проблемы с учебным кластером, не все могли на нем поработать
                                      • так как группа была с разным набором скилов, надо было слушать то, что уже знаешь и наоборот, отставать
                                      • во втором наборе очень поверхностно рассмотрели теорию графов и социальные сети


                                      Но все эти проблемы решались по ходу процесса. Координаторы и преподаватели учитывали наше мнение и старались курс максимально подогнать под группу.

                                      В общем, как в песне поется — решайте сами, иметь или не иметь! :)
                                      Я ничего против критики не имею, чем больше критикуешь тем ближе истина. Ничего идеального не бывает. Попытался быть объективным :)
                                      • UFO just landed and posted this here
                                          0
                                          Нет.
                                          • UFO just landed and posted this here
                                            0
                                            Смотрите, что получается: вы используете аргументы типа «подозреваю, что дело обстоит так» и «хотите я расскажу вам, как все было», после этого вас прямо опровергают преподаватели или выпускники программы (отметилось трое выпускников). Тогда в ход идет «крекс, фекс, пекс».

                                            Я бы хотел отдельно прокомментировать два вопроса, поскольку это касается конкретных людей:
                                            1) Преподаватели. Помимо Саши Петрова, преподаватели программы Григорий Сапунов (основатель eclass, CTO Pelican Soft), Уаутер де Би (Spotify), Станислав Соболевский (MIT), Андрей Пивоваров (Oracle), Андрей Зимнов (Озон), Александр Сербул (1С-Битрикс), Самсон Ху (500px), Олег Новиков (Sports.ru), Михаил Кечинов (REES46), Александр Крот (MLClass), Роман Гребинников (Sociohub), Елена Ненова (Имхонет), Константин Савинов (Bookmate). Это только второй модуль.
                                            2) Выпускники. Люди устроились в DCA, Едадил (недавно долю выкупил Яндекс), Glowbyte Consulting, Zvooq (Dream Industries), E-Contenta, кто-то перехал в Калифронию, про многих не знаю — 25-го день встречи выпускников обменяемся новостями. Те, кто работал в Сбербанке, Билайне, Яндексе, Oracle, Эльдорадо, Tutu.ru, 1С, Headhunter, BCS работу менять не собираются, зато активно применяют полученные знания и навыки в работе, многие нашли партнеров в лице преподавателей программы. Также команда NPL заняла 1-е и 2-е место в Хакатоне Azure ML, обойдя многих других за счет умения решать задачи на практике.
                                            Я уверен, что у вас еще найдется несколько опровержений и разоблачений, главное крикните погромче. Вообще-то эту информацию, как и подробную программу, можно получить просто кликнув на «Узнать больше», но это видимо не ваш метод.
                                            • UFO just landed and posted this here

                                          Only users with full accounts can post comments. Log in, please.