Обзор лучших онлайн-курсов по машинному обучению
Предлагаем вашему вниманию подборку онлайн курсов, которые помогут вам начать свой путь в машинное обучение, конечно, если английский для вас - не проблема.
Мне нравится брать разные онлайн-курсы, так как я нахожу в них дополнение к чтению книг. Значительная часть таких курсов интересна, и занятие онлайн-курсами – хороший способ узнавать что-то новое, а также поддерживать свои навыки на хорошем уровне (это особенно хороший вариант для тех, кто не пишет код каждый день). На данный момент я уже закончил несколько онлайн-курсов по машинному обучению, и мне кажется, что я могу ответить, какие же из этих курсов стоят вашего внимания. Кстати, под словом «закончить» я имею в виду «начать курс, следовать ему, выполнить задания и сдать экзамены»... По крайней мере, для большинства. Предлагаю вам ознакомиться со своим кратким обзором онлайн-курсов по машинному обучению от лучших к худшим.
1. Machine Learning at Coursera
Это было первое, что я брал. В то время Coursera ещё не существовало и курс преподавался через Стэнфорд. Он до сих пор является моим любимым, и я хочу порекомендовать курс от Эндрю Энджи (Andrew Ng) в первую очередь.
Плюсы:
- Сложно уместить больше полезной информации во вступительный курс
- Прекрасно совмещённые теория, практика и немного углублённых знаний
Минусы:
- Практические задания в Octave? Мне кажется, было бы гораздо лучше, если бы они использовали Python.
2. Machine Learning Foundations: A Case Study Approach
Новый курс от Карлоса Гестрина и Эмили Фокс (Carlos Guestrin и Emily Fox) из Университета Вашингтона, который я закончил недавно и хочу предложить его в качестве альтернативы предыдущему.
Плюсы:
- Как и в предыдущем, хочется отметить то, что учебная программа составлена прекрасно и даёт хорошее представление о машинном обучении.
- Примеры на практике. Мне лично нравится то, что они используют Python, а именно – iPython Notebooks для упражнений. Также нужно отметить тот факт, что упражнения основаны на реальных наборах данных.
Минусы:
- Некоторым может показаться, что в курсе не хватает углублённого материала или что он слишком лёгкий. Мне лично кажется, что это нормально для курса, который является частью огромной серии. Не забывайте о том, что это лишь вступление в машинное обучение, однако факт остаётся фактом: углублённого материала здесь меньше, чем в предыдущем.
- По поводу следующего минуса преподаватели говорят открыто, но то, что сам курс в какой-то степени является рекламой платформы Graphlab и Amazon в меньшей степени, может не понравиться некоторым. Связано это с тем, что преподаватели имеют какое-то отношение и к тому, и к другому. Если честно, то меня это не сильно отвлекало, но я решил об этом всё равно рассказать.
3. Intro to Artificial Intelligence
Как понятно из названия, этот курс от Питера Норвига и Себастиана Трана (Peter Norvig и Sebastian Thrun) пусть и имеет отношение к машинному обучению, но не рассматривает его как своё главное направление. В нём есть глава, посвящённая машинному обучению, причём очень информативная. В ней представлены такие вещи, как извлечение полезной информации из текста или обработка естественного языка.
Плюсы:
- Учебная программа составлена прекрасно и хорошо преподнесена
- Используется практический подход, однако присутствует хороший баланс между теорией и практикой
- Интересные упражнения и сложные тесты
- Включает в себя такие темы, как обработка естественного языка, которые присутствуют не во всех курсах
Минусы:
- Это не совсем курс по машинному обучению
4. Intro to Statistical Learning
Я в восторге от этого курса от Тревора Хэсти и Роба Тибширани (Trevor Hastie и Rob Tibshirani), однако я не рекомендую его как общий курс по машинному обучению. От меня он собрал больше минусов чем плюсов.
Плюсы:
- Из названия понятно, что в курсе представлен более углублённый материал касательно математики и статистики
- Из вступительных курсов, этот, пожалуй, единственный, в котором вы столкнётесь с такими статистическими концептами, как интервал уверенности или p-значение
Минусы:
- В курсе фигурируют слишком много «главных тем», и порой не знаешь, на чём сфокусироваться. Нам приходится сталкиваться с такими понятиями, как линейный анализ дискриминанта наряду с логистической регрессией.
- От курса создаётся впечатление очень старой школы, которая давно не обновляла учебную программу. К примеру, большинство программистов, практикующих машинное обучение сегодня поймут акроним «LDA» как «Latent Dirichlet Allocation» (скрытое распределение Дирихле). Если вы собираетесь использовать «LDA» для «Linear Discriminant Analysis» (линейный анализ дискриминанта), имейте в виду, что некоторые могут вас не понять.
- По ходу курса некоторые советы, которые дают преподаватели, не совсем верны с практической точки зрения. Чтобы прояснить: с точки зрения теории всё верно, но в процессе написания кода эти советы могут сбить вас с толку, если вы только начинаете свой путь в машинное обучение.
- Практические задания на языке R – просто потеря времени. Очень часто сложные и затратные по времени задачи не имеют отношения к тем областям машинного обучения, которые могли бы быть интересны для изучения.
- Многие вопросы на тестах вводят в заблуждение, а некоторые – вовсе неверны.
5. Probabilistic Graphical Models
Это, пожалуй, единственный онлайн-курс, который я начал, но не закончил. И тому была причина. Курс от Дафны Коллер (Daphne Koller) был очень скучным и сложен в продвижении (не из-за сложных заданий, а из-за того, что часто было трудно найти мотивацию). Хоть и сама тема очень интересна, я бы порекомендовал этот курс только тем, кто считает вероятностные графические модели своей пассией.
Плюсы:
- Детальный разбор интересной темы из машинного обучения
- Углублённый материал
Минусы:
- Скучно и недостаток мотивации
- Мало практики.