вторник, 7 августа 2018 г.

Глубокое обучение (deep learning)

Глубокое обучение (deep learning) это современное воплощение нейронных сетей. Эта технология стоит за недавно пришедшими самоуправляемыми машинами, машинным переводом, распознаванием речи и другими. Широкий интерес к глубокому обучению пришел в 2012 году, оно стало неотъемлемой частью бесчисленного количества отраслей.

Не будет сюрпризом то, что исследователи работали с нейронными сетями десятилетиями. Уоррен МакКалох (Warren McCulloch) и Уолтер Питтс (Walter Pitts) предложили предшественников сегодняшних искусственных нейронов еще в 1943. Каждый нейрон связан с другими нейронами по краям, аналогично синапсам, которые соединяют настоящие нейроны. И связан с каждым краем вес, который показывает тип соединения (усиливающее или ослабляющее) и силу соединения.

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

Все что нам нужно это алгоритм, который говорит нам как выполнить поиск. А начиная с Девида Румельхарта (David Rumelhart) и коллег, которые ввели алгоритм обучения с обратным распространением для тренировки нейронных сетей, почти все главные идеи заняли свое место. Однако многие года нейронные сети уступали классическим статистическим методам, таким как логистическая регрессия и машина опорных векторов (support vector machine (SVM)).

Два крупнейших фактора, управляющих инновациями в глубоком обучении, являются данные и вычисления. С распределенными облачными вычислениями и параллельностью благодаря GPU ядрам мы можем модели в миллионы раз быстрее, чем исследователи могли в 1980х. Доступность больших, высококачественных наборов данных - еще один фактор ведущий прогресс в области вперед. В 1990х лучшие наборы данных для компьютерного зрения имели тысячи изображений низкого разрешения и присвоение истинности к небольшому числу классов. Сегодня, исследователи используют ImageNet, массивный набор данных, содержащий миллионы изображений высокого разрешения из тысяч различных классов. Снижение цены хранения данных и высокоскоростная широкополосная сеть сделали доступным работу с большими данными (big data).

В этом новом мире, с крупными наборами данных и быстрыми вычислениями, нейронные сети доминируют в большинстве задач распознавания паттернов. Только за последние 5 лет нейронные сети стали преобладать к решении почти каждой задачи в компьютерном зрении, заместив классические модели и рукописные разработки. Схожим образом почти каждая система распознавания речи сейчас основана на нейронных сетях, заменив скрытые модели Маркова, которые ранее имели здесь влияние.