Самые лучшие ресурсы для изучения ML и AI

«Программировать может всякий». Да, это еще то клише, так что давайте его немного изменим: «Изучить ИИ может всякий». Вероятно, для вас это даже звучит как-то страшно, особенно, если вы не имеете докторской степени и если вы не чокнутый ученый.

Но поверьте: к концу этой статьи вы будете точно знать, что вам нужно изучать и к каким учебным ресурсам обратиться, чтобы последовательно изучить ИИ. При этом не важно, программист вы или нет.

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

Но довольно болтовни: приступим к делу.

1. This is CS50 (Гарвардский университет)

Прим. ред: курс «This is CS50» на русском смотрите, например, здесь.

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

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

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

2. Python Programming Course (freeCodeCamp)

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

Курс от freeCodeCamp это видео на 4,5 часа, в котором раскрываются все самые необходимые темы: установка Python, переменные, строки, списки, кортежи, функции, концепции объектно-ориентированного программирования и многое другое. Кстати, этот курс по своей сути — практическое руководство, т. е., вы будете не просто смотреть лекции, но и самостоятельно писать код.

Если вы умеете программировать на Python, этот курс тоже можно пропустить.

3. AI For Everyone (Coursera)

Наконец мы добрались до собственно ИИ. Этот курс чисто теоретический. Читает его самый известный специалист в сфере машинного обучения и ИИ — профессор Эндрю Ын. Под «самый известный» мы понимаем, что буквально каждый, кто интересуется искусственным интеллектом, слыхал об Эндрю Ыне.

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

Пройдя этот курс, вы получите прекрасные ответы на некоторые из самых распространенных, но при этом интересных вопросов:

  • Что такое искусственный интеллект и машинное обучение?
  • Чем занимаются ИИ-компании?
  • На что способно машинное обучение?
  • Как выбрать проект в сфере машинного обучения и искусственного интеллекта?
  • Как строится работа над таким проектом?
  • Предубеждения против ИИ.
  • Работа в сфере ИИ.

Один из самых важных вопросов, который непременно приходит в голову при изучении машинного обучения и ИИ, звучит так:

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

Например: должен ли я реализовывать нейронную сеть (один из популярных алгоритмов глубокого обучения) с нуля или могу воспользоваться какой-нибудь из имеющихся платформ, скажем, Tensorflow или Pytorch?

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

4. Machine Learning от Стенфордского университета (Coursera)

Это один из самых популярных курсов по машинному обучению, ведет его профессор Эндрю Ын. На момент написания статьи число записавшихся на этот курс перевалило за 3 миллиона человек.

Также это определенно один из самых глубоких курсов по ML, в нем излагается внутренняя работа алгоритмов и стоящие за всем этим математические расчеты.

При написании алгоритмов в этом курсе используются Octave/Matlab, но мы советуем вам писать алгоритмы на Python, поскольку это стандарт индустрии.

5. Machine Learning Tutorial (codebasics)

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

Этот курс — один из лучших и при этом недооцененных курсов на YouTube. Его отличает простота пояснений. В ходе курса для реализации и визуализации различных алгоритмов машинного обучения используются такие библиотеки как numpy, pandas, matplotlib и sklearn. Благодаря этим внешним библиотекам вы сможете с легкостью реализовать все нужные алгоритмы, написав всего несколько строк кода.

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

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

Алгоритмы глубокого обучения лежат в основе систем рекомендаций и персонализации Netflix, Amazon, YouTube и многих других крупных корпораций и стартапов.

6. Deep Learning Specialization (Coursera)

Это комплексный курс по отдельной специализации, а именно — глубокому обучению. Читает его тот же Эндрю Ын. Специализация состоит из пяти отдельных курсов:

  • Neural Network and Deep Learning (Нейронная сеть и глубокое обучение).
  • Improving Deep Neural Networks: Hyper-parameter tuning, Regularization, and Optimization (Улучшение глубоких нейронных сетей).
  • Structuring Machine Learning Projects (Структурирование проектов машинного обучения).
  • Convolutional Neural Network (Сверточная нейронная сеть).
  • Sequence Models (Модели последовательностей).

Материал в этих курсах разбирается глубоко, причем внимание уделяется как технической, так и математической стороне алгоритмов и подходов. Для кодинга здесь используется Python.

Tensorflow и Pytorch — это фреймворки глубокого обучения с открытым кодом. Они доминируют в сфере ИИ. За Tensorflow стоит Google, а за Pytorch — Facebook.

По части популярности и количества загрузок Tensorflow лидирует, но сообщество, занимающееся исследованиями в области ИИ, крепко держится за Pytorch. В общем, выбор фреймворка зависит от вас и от платформы, которую вы используете. Мы советуем попробовать оба и уж затем решить, что вам лучше подойдет.

7. Tensorflow in Practice Specialization (Coursera)

Как и другие комплексные курсы на Coursera, этот курс состоит из разных частей, в данном случае — четырех.

  • Introduction to TensorFlow for Artificial Intelligence, Machine Learning, and Deep Learning (Введение в TensorFlow для ИИ, машинного обучения и глубокого обучения).
  • Convolutional Neural Networks in TensorFlow (Сверточные нейронные сети в TensorFlow).
  • Natural Language Processing in TensorFlow (Обработа естественного языка при помощи TensorFlow).
  • Sequences, Time Series and Prediction (Последовательности, временные серии и предсказания).

Эти курсы легко усваиваются, к тому же они по сути своей практические. Ведет их инструктор Лоренс Морони — ИИ-адвокат в Google.

В рамках этих курсов вы будете при помощи Tensorflow создавать реальные приложения.

8. Pytorch Tutorial (официальный сайт Pytorch)

Если вы хотите освоить фреймворк Pytorch, лучше всего обратиться к его официальному сайту. Руководства на этом сайте разделены на небольшие кусочки, в целом покрывающие большую часть основ Pytorch. Также здесь вы найдете туториалы по реализации различных модулей глубокого обучения при помощи этого фреймворка.

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

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

machine learning logo

Английский для программистов

Наш телеграм канал с тестами по английскому языку для программистов. Английский это часть карьеры программиста. Поэтому полезно заняться им уже сейчас

×