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

Что такое глубокое обучение?

Но сначала давайте получим правильную общую картину. Существует много путаницы в том, что представляет собой глубокое обучение, машинное обучение и ИИ. Как правило, термин ИИ используется, когда мы говорим о компьютерных программах, решающих проблемы, для решения которых они явно не запрограммированы. Отличным примером того, что является ИИ, а не машинным обучением, является Deep Blue, компьютер, победивший чемпиона по шахматам Каспарова, который выполнял поиск в глубину, чтобы найти приблизительно оптимальное решение. В машинном обучении для поиска таких приближенных решений используются вероятностные модели, а особой областью машинного обучения является глубокое обучение, где в качестве статистической модели для обучения используются глубокие нейронные сети. Глубокие нейронные сети эффективны, потому что они могут аппроксимировать любую функцию, по сравнению с простейшей формой линейной регрессии, которая может объяснить только линейные отношения.

Зачем мне использовать глубокое обучение?

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

Итак, теперь, когда вы убедились, давайте начнем!

Предварительная математика

Иметь минимальные знания в области линейной алгебры и вероятности, безусловно, полезно, но сначала пройти эти курсы — это самый простой способ потерять мотивацию к обучению. Советую смотреть видео из курса Линейная алгебра Гилберта Стрэнга в качестве дополнения к курсу или проекту по машинному обучению (см. ниже) каждый день. Вероятностная составляющая машинного обучения появится намного позже, и я бы порекомендовал обратиться к Книге по распознаванию образов Бишопа, которая также затрагивает темы машинного обучения. Многие советуют иметь предварительные знания в оптимизации, но, честно говоря, в этом нет смысла, потому что возвращаются те же два понятия (градиентный спуск и лагранжева оптимизация), которые уже хорошо объяснил.

Курсы

От теории к практике,

  1. Курс Хинтона по искусственному интеллекту. Принимает теоретическую перспективу и нуждается во всех предпосылках.
  2. Курс Эндрю Нг по машинному обучению. Очень легкий по математике, но охватывает только основы и немного устарел.
  3. Специализация Эндрю Нг в области глубокого обучения. Все еще легкий на математике, но всесторонний.
  4. Как выиграть конкурс Data Science. Если вам нужен легкий курс, который очень практичен, но все же дает вам хорошую интуицию, это путь. О своем опыте расскажут специалисты, которые уже побеждали в конкурсах. Из этого курса вы также познакомитесь с алгоритмами на основе дерева решений, которые менее выражены в курсах по искусственному интеллекту выше.

Необходимые проекты

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

Если у вас есть библиотека глубокого обучения на вашем компьютере, начните делать проект. Загрузите существующий пример кода нейронной сети с Github и попробуйте изменить его так, чтобы он делал то, что вам нравится. Не можете придумать никаких приложений? Попробуйте заново реализовать уже существующие документы с нуля или ознакомьтесь с некоторыми поисковыми идеями на GitHub.

Дополнительная литература

  1. В репозиториях GitHub есть очень хорошая коллекция документов, в которых указаны наиболее важные документы в данной области машинного обучения. Попробуйте прочитать более старую, обратитесь к своим книгам, если вы что-то не понимаете, и попробуйте еще раз, пока не поймете. Обычно они помечены словом круто, как этот.
  2. Бишоп охватывает большинство вещей до 2010 года в машинном обучении и с хорошим математическим уровнем.
  3. Иногда читайте более легкое машинное обучение, чтобы поддерживать мотивацию. KDNuggets и Machine Learning reddit предлагают большинство из этих вещей. HackerNews не имеет строгого отношения к машинному обучению, но иногда вы можете найти там соответствующие легкие чтения.
  4. Если вам нужно что-то более подробное, вам придется прочитать настоящую публикацию. У Саттона есть хорошая книга Обучение с подкреплением, но я бы избегал книги Глубокое обучение Гудфеллоу.

Что еще?

Если вы застряли, ПОПРОСИТЕ ЗА ПОМОЩЬ, но (1) сначала очень постарайтесь решить вашу проблему, (2) затем не забудьте изучить рекомендации этих форумов вопросов и ответов. Вы можете перейти в разделы MachineLearningLearn subreddit, Statistics StackOverflow (в основном для R) и Data Science StackOverflow.

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

Удачи на вашем пути!