21 мая 2019

Блог

Как выучить машинное обучение: книги, курсы, подходы

Если вы решили заняться машинным обучением, то первым же шагом зарегистрируйтесь в сообществе Open Data Science. Там можно бесплатно получить ответ практически на любой вопрос, спросить совет, выговориться и найти наставника. Аналогов в IT просто не существует. Почти все обсуждения идут на русском языке, но регистрируются и иностранцы. Некоторые из них даже пытаются изучать русский (только за то, что им разговаривают на ods). Такое вот «секретное оружие» российских data scientist’ов.

Второй шаг — практика. Машинное обучение, как и вообще IT, в этом плане весьма хорошая сфера. Чтобы безнаказанно оперировать людей, надо закончить институт. Чтобы перевозить пассажиров в самолёте, и они не разбежались, надо закончить училище. Чтобы анализировать данные, надо установить Python, Jupyter Notebook, PyCharm Community, git.

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

Другой источник практики – ваша текущая работа. Если есть хоть какие-нибудь данные, то их можно анализировать. В простейшем случае сделайте «тот же самый отчёт», но на Python библиотеками pandas и matplotlib – уже сможете добавить строчку в резюме. Попробуйте что-нибудь спрогнозировать, возможно, ваши начинания найдут поддержку со стороны начальства.

Параллельно с практикой (но никак не вместо неё) можно подтягивать теорию. Если вы не гений математики, а ВУЗ закончили давно, то не стоит нырять в статистику, линейную алгебру и разбор классических ML алгоритмов. Это также как «входить в IT» с ассемблера, дискретной математики, теории типов, книг Кнута. Круто, полезно, интересно, но только если у вас в запасе есть несколько лет по 8 часов в день.

Есть много разных курсов, лекций и статей. Для начала можно посмотреть на Youtube лекции «Stanford University CS231n». На русском языке есть курс «Deeplearning на пальцах». Лекции также выложены на Youtube, есть семинары и домашние задания.

Третий шаг — устройство на работу. Многие энтузиасты ML почему-то забывают или откладывают этот шаг. Они проходят курс за курсом (иногда несколько одновременно), участвуют в соревнованиях на kaggle, посещают хакатоны, пишут пэт-проекты, но почему-то не рассылают резюме и не устраиваются на работу. Некоторые «звёздочки» умудряются на этих активностях зарабатывать приличные деньги. Но таких очень немного.

Единственный совет по устройству на работу — готовьтесь. Многие думают, что ответы на «задачки про гномиков» не важны, а можно просто показать «что ты хороший мотивированный человек и во всё разберёшься». Не сработает — дефицита хороших мотивированных и способных людей в этой сфере нет. Есть дефицит сильных опытных специалистов и начинающих «звёздочек» с топовым образованием. Остальным надо конкурировать. Поэтом вычитывайте резюме (на ODS с этим помогут), готовьтесь к собеседованиям, решайте задачи, разбирайте и учите правильные ответы. Не затягивайте с этим шагом.

Оригинал статьи опубликован на сайте tproger