В чем разница между deep learning и обычным машинным обучением?

1K прочитали

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

Глубокое обучение — это, по сути, умный ребрендинг обучения нейронной сети. Он основан на нескольких относительно недавних разработках в методах обучения нейронной сети.

Идею ребрендинга проще понять с исторической точки зрения.

1980-е

Еще в 1980-х ученые были взволнованы перспективой использования нейронных сетей со многими слоями скрытых нейронов. Добавление дополнительных слоев было естественным шагом с биологической точки зрения "человеческой нейронной сети". Также очевидно что дополнительные слои необходимы для представления сложных концепций, соединенных вместе. Например,"стул состоит из нескольких ног, сиденья и спины".

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

1990-е и 2000-е

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

Был разработан метод обучения сетей с несколькими скрытыми слоями (т. е. "глубокие сети"). Отдельные скрытые слои добавляются один за другим с использованием автоэнкодерного подхода для выполнения неконтролируемого "предварительного обучения" весов связей между последовательными скрытыми слоями. После этой инициализации выполняется обычный шаг backpropogation. Это так называемая "тонкая настройка", которая по сути является опять же просто ребрендингом сети с обратным распространением ошибки на предварительно обученной сети. Смысл шага предварительной тренировки заключается в том, что сеть с обратным распространением ошибки, как правило, сходится гораздо быстрее.

2010-е

Наконец, в 2010-х мы имеем гораздо более высокую вычислительную мощность, чем в 1980-х годах. Графические процессоры дают на порядок больше вычислительной мощности. Матричные операции на GPU очень удобны для выполнения обратных вычислений в нейронных сетях. Кроме того, были проведены эксперименты с гораздо более простыми функциями активации, такими как Rectified Linear Units (ReLU). Они безумно просты и все еще нелинейны, но только кусочно дифференцируемы. Их использование также ускоряют время вычисления и, возможно, упрощают обучение.

Теперь, когда мы можем эффективно обучать сети с более скрытыми слоями, ученые изучают различные нейронные архитектуры. Например, Recurrent Neural Nets (RNNs) существуют уже давно, но их было трудно обучить. А сейчас их обучения и эксперименты с ними реальны.

Резюме

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

Есть еще момент, связанный с распределением внимания к методам машинного обучения. Глубокое обучение является частью машинного обучения. В машинном обучении существует много различных понятий и идей. Подходы к глубокому обучению (deep learning) являются их частью. В истории развития методов машинного обучения было такое время, когда нейронные сети не преподавались во многих университетах. Теперь со всей шумихой вокруг глубокого обучения мы сталкиваемся с обратной ситуацией — забывают про все остальные методы машинного обучения. Поэтому важно, чтобы студенты продолжали изучать различные идеи и концепции, которые были разработаны за десятилетия в области машинного обучения. Это даст им широкую перспективу и откроет разум для будущих открытий.

Понравилась статья? Ставьте лайк и подписывайтесь на наш канал, чтобы не пропустить ни одной интересной публикации :)