"Any sufficiently advanced technology is indistinguishable from magic" - Arthur C.Clarke

Все технологии начинались как исследовательские успехи, рождавшиеся в лабораториях учреждений, занимающихся исследованиями. Примером для неспециалиста может служить Интернет, каким мы его знаем сегодня, и миллиарды размещенных в нем веб-страниц. Первая глобальная сеть (WAN) была создана в 1960-х годах американской армией в качестве исследовательского предприятия и получила название ARPANET (предшественник Интернета). Тим Бернерс-Ли, физик из лаборатории CERN, предложил гипертекстовую систему (текст, содержащий ссылки на другой текст, к которому можно быстро получить доступ), которая привела к изобретению HTML, языка, который до сих пор используется для разработки веб-страниц. Но только с появлением веб-браузеров (таких как Mosiac, первый веб-браузер, разработанный в 1993 году) люди начали понимать, как можно коммерциализировать эту технологию. Потому что люди поняли, что интернет — это не какое-то тайное знание, которое находится за пределами их понимания. Скорее, это было так же просто, как щелкнуть текстовую ссылку и получить доступ к изображениям и тексту, которые хранятся на устройствах в какой-то другой части мира. Существующие и вновь созданные технологические компании увлеклись растущим интересом к веб-разработке, цифровой коммерции и социальным сетям. Это привело к печально известному пузырю доткомов, который лопнул в 2001 году.

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

"A theory must be tempered with reality" - Jawaharlal Nehru

Зачем нужна классификация ОД по разным школам?

В настоящее время мы находимся на переломном этапе в технологической отрасли. Десятилетия исследований в области машинного обучения такими, как Джеффри Хинтон, Янн ЛеКун, Илья Суцкевер, Эндрю Нг быстро распространяются в технологическом сообществе, которое использует его для разработки реальных приложений в областях. распознавание речи и изображений, а также классификация и прогнозирование данных. Точно так же, как Интернет можно легко интерпретировать, а новый контент создавать и загружать в него с помощью языков кодирования, таких как HTML, CSS и PHP, машинное обучение теперь можно легко понять, а приложения можно реализовать с помощью библиотек с открытым исходным кодом, таких как PyTorch, Tensorflow и многие другие проприетарные версии, которые внедряют технологические компании.

Для технологического сообщества машинное обучение (или любая другая технология, если на то пошло) направлено на создание рыночных продуктов и получение результатов, которые могут принести им прибыль и превзойти конкурентов. Для исследовательского сообщества машинное обучение означает создание или улучшение алгоритма, который в некоторых аспектах и ​​ситуациях может работать лучше, чем существующие алгоритмы.

Существует явное расхождение в том, как техническое сообщество (если хотите, специалисты по данным) и исследователи относятся к машинному обучению. Для ясности понимания давайте поместим их в следующие школы мысли и разграничим их различия в следующем разделе.

1. Data Science               -> As viewed by Industries
2. Classical Machine Learning -> As viewed by Researchers

Понимание различий между двумя школами

Во второй половине этого десятилетия (2010–2019 гг.) две школы достаточно разошлись, чтобы иметь совершенно разные потребности в наборе навыков.

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

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

В области исследований вас могут вдохновить такие великие люди, как Джеффри Хинтон (которого многие называют «крестным отцом глубокого обучения»), Янн ЛеКун и Йошуа Бенжио (лауреаты премии Тьюринга вместе с Джеффри Хинтоном и Яном ЛеКуном). В то время как в области науки о данных, ориентированной на промышленность, вы попытаетесь учиться у таких гигантов, как Абхишек Тхакур (первый тройной гроссмейстер Kaggle), Дин Эбботт и Эндрю Н.Г. (основатель Coursera и deeplearning.ai).

Кому важна эта разница?

Вот сценарий, который может быть связан со многими из вас. Как технический энтузиаст, вы естественным образом проявили интерес к машинному обучению. И чтобы демистифицировать это для себя и, возможно, даже применить в своей работе, вы прошли курс. За 2 месяца курс научил вас азам теории вероятности и исчисления, о которых вы давно забыли после окончания школы. В ходе курса были изучены тонкости алгоритмов, которые определяют машинное обучение, таких как алгоритм обратного распространения, KNN, PCA, линейная регрессия, классификация SVM, а также способы оптимизации этих алгоритмов для обеспечения максимальной точности при прогнозировании. После нескольких месяцев изучения основ этих алгоритмов вы понимаете, что на вашей работе одна строка кода (например, «model.fit» в библиотеке tensorflow на python) заботится об алгоритмах и их оптимизации.

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

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

Как начать работу в каждой школе мысли?

Большинство людей, которых я знаю, начали изучать машинное обучение с курса «Машинное обучение» на Coursera, который вел Эндрю Н.Г. Это стало почти клише. Но этот курс был одним из первых всесторонних вводных материалов по машинному обучению и достоин того внимания, которое он получил. Курс посвящен созданию алгоритмов машинного обучения с нуля и учит использовать исчисление, матричные операции и вероятность для закрепления основ машинного обучения. Если вы заинтересованы в том, чтобы пойти по исследовательскому пути к машинному обучению, этот курс станет идеальным краеугольным камнем. Вы можете дополнить его «Нейронные сети для машинного обучения», который преподает Джеффри Хинтон на Coursera, если хотите глубже погрузиться в глубокое обучение.

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

Вывод

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

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