Специализация по машинному обучению на Coursera от Физтеха и Яндекса

В начале года на Coursera открылся курс по машинному обучению от Яндекса и Вышки, о котором мы уже рассказывали. К моменту старта на него записались 14000 человек. Через час после открытия пользователи создали канал в Slack, где стали обсуждать программу. Сейчас слушателей уже 21000.

646f8f375e71400ab535734dc6ce9f4e.jpg

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

Специализация «Машинное обучение и анализ данных» состоит из пяти курсов и работой над собственным проектом. Обучение будет длиться несколько месяцев. Записаться на него можно до 19 февраля. Если вы не успеете это сделать, с 14 марта можно будет записаться на второй поток.

Авторы курса — сотрудники Яндекса, специалисты Yandex Data Factory, которые преподают в Физтехе. Константин Воронцов тоже среди них. Мы попросили некоторых из коллег рассказать, кому может быть полезна специализация и для чего она нужна. Также под катом — программа всех курсов.
461be9b9f40341748573d275f51281d8.jpgВиктор Кантор — старший преподаватель кафедры «Алгоритмы и технологии программирования» ФИВТ МФТИ, руководитель группы анализа пользовательских данных в Yandex Data Factory. Ведет лекции и семинары в МФТИ на кафедрах «Алгоритмы и технологии программирования», «Анализ данных», «Банковские информационные технологии», также преподавал на кафедрах «Компьютерная лингвистика» и «Распознавание изображений и обработка текстов».

В нашей специализации решены проблемы, которые мы наиболее часто наблюдаем в подготовке специалистов в области анализа данных.

  1. Она сразу дает необходимые знания о Python и библиотеках анализа данных, чтобы в дальнейшем теория не отрывалась от практики.
  2. Мы сразу напоминаем вам необходимую в дальнейшем математику, чтобы не устраивать профанаций вроде: «Ой, это матрицы. Ну, неважно, что вы не помните, что с ними можно делать — все равно будете умножать их на компьютере». Мы хотим, чтобы вы понимали рассказанные нами методы.
  3. Мы рассказываем вам о тех из них, которые часто используются на практике, а не те, которые нам просто больше захотелось рассказать.
  4. Мы научим вас правильно делать выводы из данных с помощью статистики и не допускать распространенные ошибки.
  5. Мы разберем очень много прикладных задач, на примере которых вы узнаете, как же применить все то, что вы выучили.

f6242203fc854bfaac7c43d5c34c1331.jpgЕвгений Соколов — руководитель группы анализа неструктурированных данных в Yandex Data Factory. В 2013 году окончил ВМиК МГУ, где сейчас пишет диссертацию о матричных разложениях. Ведет на факультете практические занятия по машинному обучению и читает лекции на ФКН ВШЭ. Преподаватель Школы анализа данных Яндекса.

Когда запустился курс по машинному обучению от Вышки, нам стало понятно, что многим людям нужно плавное погружение в тему. Курс оказался для многих непростым, потому что такой формат сделал его очень концентрированным. Есть те, кто жаловался на слишком большое количество сложной математики или необходимость хорошо знать Python. Специализации состоят из нескольких курсов и позволяют сделать обучение плавным. Первый курс помогает людям втянуться, обучает Python и необходимой математике (чтобы никто не пугался слов «производная» и «вектор»). Часть, где мы рассказываем о базовом машинном обучении, состоит из двух курсов. Кроме того, формат специализации позволил нам охватить другие полезные области анализа данных, которые нужны на практике. Также здесь есть один большой проект и дополнительные курсы.

2f5d7788fa254f92a73015bf1ea912a7.jpgЭмели Драль — преподаватель ШАД и ведущий аналитик Yandex Data Factory. Окончила факультет физико-математических и естественных наук РУДН, кафедра «Информационные технологии». Разрабатывала учебные материалы и вела такие курсы, как «Технологии разработки программных систем», «Объектно-ориентированный подход к разработке программных систем», «Методы интеллектуального поиска». В МФТИ ведет семинары курса «Машинное обучение» на ФИВТ, кафедра «Алгоритмы и технологии программирования».

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

Специализация даёт нам возможность перед переходом к сложным вопросам рассмотреть ещё и простые, которые помогут тем, у кого нет теоретических знаний и практического опыта, и тем, кто что-то забыл. Мы напомним об интересных фактах из линейной алгебры, математического анализа и статистики и, например, расскажем о проверке гипотез. Многие могут эти вещи забыть, потому что изучали их довольно давно, а в жизни никогда с этим не работали. У нас более низкий темп, но при этом и порог вхождения — ниже.

Кроме того, изложение в специализации тоже построено немного иначе. Мы стараемся сделать так, чтобы все вещи, которые мы используем, были интуитивными.

Курс 1. Математика и Python для анализа данных


В этом курсе вы познакомитесь с фундаментальными математическими понятиями, необходимыми для анализа данных, и получите начальный навык программирования на Python. Курс состоит из двух больших частей. Первая часть курса — практическая, она посвящена языку программирования Python. Вы познакомитесь с синтаксисом и идеологией языка, научитесь писать простые программы. Также вы узнаете о библиотеках, которые часто применяются на практике для анализе данных, например, NumPy, SciPy, Matplotlib и Pandas. Вторая часть курса посвящена таким разделам математики как линейная алгебра, математический анализ, методы оптимизации и теория вероятностей. При этом, упор делается на разъяснение математических понятий и их применение на практике, а не на вывод сложных формул и доказательство теорем.

Курс 2. Обучение на размеченных данных


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

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

Курс 3. Поиск структуры в данных


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

Курс 4. Построение выводов по данным


Влияет ли знание методов анализа данных на уровень заработной платы? Работает ли система оценки кредитоспособности клиентов банка? Действительно ли новый баннер лучше старого? Чтобы ответить на такие вопросы, нужно собрать данные. Данные почти всегда содержат шум, поэтому утверждения, которые можно сделать на их основе, верны не всегда, а только с определённой вероятностью. Строить наиболее корректные выводы и численно оценивать степень уверенности в них помогают методы статистики.

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

Курс 5. Прикладные задачи анализа данных


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

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

Анализ данных: финальный проект


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

Идеальная цель нашей специализации — сделать так, чтобы слушатель смог пройти собеседование на позицию Data Scientist уровня, который соответствует его профессиональному опыту. Вы освоите науку о данных и научитесь решать с помощью ее методов аналитические задачи — от сбора данных до построения оптимальной модели и оценки ее качества.

© Habrahabr.ru