История глубинного машинного обучения

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

21:13 22.10.2016   |  Леонид Черняк |

|   26120 прочтений



Еще не так давно машинное обучение было сугубо академической провинцией, «население» которой едва ли насчитывало несколько сотен ученых, разбросанных по избранным университетам и лабораториям. Но к 2012 году в силу ряда причин, о которых мы поговорим, не углубляясь в математику, машинное обучение вышло на передний план. Удивительно и показательно — машинному обучению была отдана первая полоса The New Times, ему были посвящены статьи в Forbes и The New Yorker. К сожалению, в России трудно себе представить что-то подобное. А спустя всего три года машинное обучение доходит до компьютерных и околокомпьютерых масс и становится актуальной для предпринимательства темой в Кремниевой долине. Как и почему смогла произойти эта стремительная метаморфоза?

Машинное обучение (Machine Learning, ML) — это направление в науке, а с недавних пор и в технологиях, которое решает задачу обучения компьютеров. Под этим понимают передачу аппаратно-программным комплексам какого-то сугубо ограниченного набора знаний с возможностью их последующего накопления. В данном контексте не предполагается полноценное обучение, сравнимое с человеческим. Это совсем не то, что по-английски называют by heart («с глубоким пониманием»), а, скорее, в результате компьютер приобретает машинное ролевое знание, что ближе к by role. Если это обстоятельство заранее не оговорить, то ничего не стоит докатиться до «педагогики роботов», этот термин уже встречается. Машинное знание не позволяет принимать по-настоящему интеллектуальные решения, сравнимые с возможностями человека.

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

ML реализуется на вычислительных и статистических принципах, объединяя самые разные подходы, включая теорию вероятностей, статистику, логику, вычислительную оптимизацию, поисковые методы, обучение с подкреплением, теорию управления и, возможно, что-то иное. Область применения ML на данный момент распространяется на широкий круг приложений, cреди которых обработка всех возможных видов данных (текст, видео, аудио), прогнозирование, распознавание образов, добыча данных (data mining), экспертные системы, робототехника и даже игры.

История ML, как и многое другое в искусственном интеллекте, началась с казалось бы многообещающих работ в 1950-х — 1960-х годах, а затем последовал длительный период накопления знаний, известный как «зима искусственного интеллекта». В самые последние годы наблюдается взрывной интерес главным образом к одному из направлений — глубинному, или глубокому обучению (deep leаrning).

Первопроходцами ML были Артур Сэмюэль, Джозеф Вейцбаум и Фрэнк Розенблатт. Первый получил широкую известность созданием в 1952 году самообучающейся программы Checkers-playing, умевшей, как следует из названия, играть в шашки. Возможно, более значимым для потомков оказалось его участие вместе с Дональдом Кнутом в проекте TeX, результатом которого стала система компьютерной верстки, вот уже почти 40 лет не имеющая себе равных для подготовки математических текстов. Второй в 1966 году написал виртуального собеседника ELIZA, способного имитировать (а скорее, пародировать) диалог с психотерапевтом; очевидно, что своим названием программа обязана героине из пьесы Бернарда Шоу. А дальше всех пошел Розенблатт, он в конце 50-х в Корнелльском университете построил систему Mark I Perceptron, которую можно признать первым нейрокомпьютером.

Mark I предназначался для классификации визуальных образов (символов алфавита) и представлял собой электронно-механическую систему, центром которой были 400 управляемых фото-сенсоров, они-то и служили моделью сетчатки. Управлялись они с помощью манипуляторов на шаговых моторах. На распространенной в Сети фотографии рядом с Розенблаттом видна небольшая коробка, которую обычно и называют Mark I, хотя это лишь один из узлов, в полном же комплекте система занимала шесть солидных стоек, она сохранилась в Смитсоновском музее в Вашингтоне. В дополнение к ней для распознавания речи была предпринята попытка создания еще более громоздкой системы Tobermory Perceptron. Обе системы были практическими реализациями пусть простых, но все же нейронных сетей. Сложно сказать, как бы продолжилось это направление развития, не будь оно прервано двумя обстоятельствами — смертью Розенблатта, он погиб на яхте, и ожесточенной критикой со стороны Марвина Минского и Сеймура Паперта, доказывавших, что перцептрон неспособен к обучению.

За последующие 30-40 лет усилиями академически ориентированных ученых машинное обучение было превращено в самостоятельную математическую дисциплину. (Те, кто интересуется теоретическими основами ML, могут зайти на сайт www.machinelearning.ru, на котором есть буквально все.)

Начало первого десятилетия XXI века оказалось поворотной точкой в истории ML, и объясняется это тремя синхронными тенденциями, давшими в совокупности заметный синергетический эффект. Первая — Большие Данные. Данных стало так много, что новые подходы были вызваны к жизни не любознательностью ученых, а практической необходимостью. Вторая — снижение стоимости параллельных вычислений и памяти. Эта тенденция обнаружилась в 2004 году, когда компания Google раскрыла свою технологию MapReduce, за которой последовал ее открытый аналог Hadoop (2006), и совместно они дали возможность распределить обработку огромных объемов данных между простыми процессорами. Тогда же Nvidia совершила прорыв на рынке GPU: если раньше в игровом сегменте ей могла составить конкуренцию AMD/ATI, то в сегменте графических процессоров, которые можно использовать для целей машинного обучения, она оказалась монополистом. И в то же время заметно уменьшилась стоимость оперативной памяти, что открыло возможность для работы с большими объемами данных в памяти и, как следствие, появились многочисленные новые типы баз данных, в том числе NoSQL. И, наконец, в 2014 году появился программный каркас Apache Spark для распределенной обработки неструктурированных и слабоструктурированных данных, он оказался удобен для реализации алгоритмов машинного обучения.

Третья — новые алгоритмы глубинного машинного обучения, наследующие и развивающие идею перцептрона в сочетании с удачной научной PR-кампанией. Своей критикой Марвин Минский и Сеймур Паперт сыграли положительную роль, они вскрыли слабости перцептрона в том виде, как его придумал Розенблатт, и одновременно стимулировали дальнейшие работы по нейронным сетям, до 2006 года остававшиеся теоретическими. Вероятно, первым, кто решил «развинтить» (углубить) перцепрон, был советский математик А.Г. Ивахненко, опубликовавший начиная с 1965 года ряд статей и книг, в которых, в частности, описана моделирующая система «Альфа» . В 1980 году Кунихика Фукусима предложил иерархическую многослойную сверточную нейронную сеть, известную как неокогнитрон.

Последующие годы отмечены интенсивной работой многих ученых в области глубинных нейронных сетей (Deep Neural Network, DNN), однако детальный и желательно объективный анализ событий этого периода еще ждет своего исследователя. Считается, что собственно термин deep learning был предложен в 1986 году Риной Дехтер, хотя история его появления, видимо, сложнее . Различные точки зрения на составляющие глубинного обучения можно найти, например, на сайте Quora .

К середине прошлого десятилетия была накоплена критическая масса знаний в области DNN, и, как всегда в таких случаях, кто-то отрывается от пелотона и получает майку лидера, так было и, видимо, будет в науке всегда. В данном случае в роли лидера оказался Джефри Хинтон, британский ученый, продолживший свою карьеру в Канаде. C 2006 года он сам и вместе с коллегами начал публиковать многочисленные статьи, посвященные DNN, в том числе и в научно-популярном журнале Nature, чем заслужил себе прижизненную славу классика. Вокруг него образовалось сильное и сплоченное сообщество, которое несколько лет работало, как теперь горят, «в невидимом режиме. Его члены сами называют себя «заговорщиками глубинного обучения» (Deep Learning Conspiracy) или даже «канадской мафией» (Canadian maffia). Образовалось ведущее трио: Ян Лекун, Иешуа Бенджо и Джефри Хинтон, их еще называют LBH (LeCun & Bengio & Hinton). Выход LBH из подполья был хорошо подготовлен и поддержан компании Google, Facebook и Microsoft. С LBH активно сотрудничал Эндрю Ын, работавший в МТИ и Беркли, а теперь возглавляющий исследования в области искусственного интеллекта в лаборатории Baidu. Он связал глубинное обучение с графическими процессорами.

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


Теги: Авторские колонки