v
.
Обычно вычислять гессиан не рекомендуется, но можно обойтись произведениями
гессиана на вектор. Просто вычисляется
He
(
i
)
для всех
i
= 1, …,
n
, где
e
(
i
)
– унитарный
вектор, в котором
e
i
(
i
)
= 1, а все остальные элементы равны 0.
196
Глубокие сети прямого распространения
6.6. Исторические замечания
Сети прямого распространения можно рассматривать как эффективный способ ап-
проксимации функций, основанный на использовании градиентного спуска для ми-
нимизации ошибки. С этой точки зрения, современные сети прямого распростране-
ния – кульминация многовекового развития общей теории аппроксимации.
Правило дифференцирования сложной функции, лежащее в основе алгоритма об-
ратного распространения, было открыто в XVII веке (Leibniz, 1676; L’H
ô
pital, 1696).
Математический анализ и алгебра с давних пор использовались для решения задач
оптимизации в замкнутой форме, но метод градиентного спуска как способ итератив-
ной аппроксимации решения задач оптимизации появился только в XIX веке (Cau-
chy, 1847).
Начиная с 1940-х годов, методы аппроксимации функций использовались в моде-
лях машинного обучения, в частности в перцептроне. Однако ранние модели были
линейными. Критики, в т. ч. Марвин Минский, отмечали несколько изъянов в семей-
стве линейных моделей, например невозможность обучить функцию XOR, и это при-
вело к отрицанию всего подхода на основе нейронных сетей.
Для обучения нелинейных функций понадобилось разработать многослойный
перцептрон и средства вычисления градиентов. Эффективные применения правила
дифференцирования сложной функции, основанные на динамическом программи-
ровании, начали появляться в 1960–1970-е годы, в основном в задачах автоматиче-
ского управления (Kelley, 1960; Bryson and Denham, 1961; Dreyfus, 1962; Bryson and
Ho, 1969; Dreyfus, 1973), но также и в анализе чувствительности (Linnainmaa, 1976).
В работе Werbos (1981) описано, как применить эти методы к обучению искусствен-
ных нейронных сетей. В конечном итоге идея получила практическое воплощение,
после того как ее несколько раз переоткрывали в разных формах (LeCun, 1985; Parker,
1985; Rumelhart et al., 1986a). В книге «Parallel Distributed Processing» представлены
результаты первых успешных экспериментов с алгоритмом обратного распростране-
ния. Ее глава, написанная Румельхартом с соавторами (Rumelhart et al., 1986b), стала
значительным вкладом в популяризацию обратного распространения и ознаменова-
ла начало периода очень активных исследований по многослойным нейронным се-
тям. Идеи, выдвинутые авторами книги, в особенности Румельхартом и Хинтоном,
выходят далеко за рамки обратного распространения. Среди них ключевые идеи
о возможности вычислительной реализации некоторых ключевых аспектов познания
и обучения, получившие собирательное название «коннекционизм» из-за той важно-
сти, которую адепты этой школы придавали связям между нейронами как органами,
отвечающими за обучение и память. В частности, эти идеи включают понятие рас-
пределенного представления (Hinton et al., 1986).
На волне успехов алгоритма обратного распространения исследования в области
нейронных сетей обрели популярность, достигшую пика в начала 1990-х годов. Затем
им на смену пришли другие методы машинного обучения, и так продолжалось до воз-
рождения современного глубокого обучения в 2006 году.
Основные идеи, лежащие в основе сетей прямого распространения, не сильно из-
менились с 1980-х годов. По-прежнему используются все тот же алгоритм обратно-
го распространения и те же подходы к градиентному спуску. Повышением качества
работы, имевшим место в промежутке между 1986 и 2015 годом, нейронные сети
обязаны в основном двум факторам. Во-первых, благодаря более крупным наборам
Исторические замечания
197
данных статистическое обобщение перестало быть серьезным препятствием на пути
развития нейронных сетей. Во-вторых, сами нейронные сети стали гораздо больше
благодаря более мощным компьютерам и улучшению программной инфраструктуры.
Некоторые алгоритмические изменения также заметно повысили качество сетей.
Одним из таких изменений стала замена среднеквадратической ошибки семей-
ством функций потерь на основе перекрестной энтропии. Среднеквадратическая
ошибка была популярна в 1980-е и 1990-е годы, но постепенно ее вытеснили идеи
перекрестной энтропии и принцип максимального правдоподобия, распространив-
шиеся среди специалистов по статистике и машинному обучению. Использование
потерь в форме перекрестной энтропии заметно повысило качество моделей с сиг-
моидой и softmax в роли функций активации, которые раньше – когда потери из-
мерялись среднеквадратической ошибкой – страдали от насыщения и медленного
обучения.
Еще одно важное алгоритмическое изменение, резко улучшившее качество сетей
прямого распространения, – замена сигмоидных скрытых блоков кусочно-линейны-
ми, например блоками линейной ректификации. Ректификация с использованием
функции max{0,
z
} появилась еще в ранних моделях нейронных сетей и восходит,
по меньшей мере, к когнитрону и неокогнитрону (Fukushima, 1975, 1980). Но тог-
да не использовались блоки линейной ректификации, а вместо этого ректификация
применялась к нелинейным функциям. Несмотря на популярность ректификации
в ранних моделях, в 1980-е годы ее почти всюду заменили сигмоиды, поскольку они
лучше работают в очень малых нейронных сетях. В начале 2000-х блоков линейной
ректификации старательно избегали из-за какой-то суеверной боязни использовать
функции активации, недифференцируемые в некоторых точках. Положение начало
меняться в 2009 году. В работе Jarrett et al. (2009) было отмечено, что «использова-
ние ректифицирующей нелинейности – самый важный фактор улучшения качества
системы распознавания» наряду с другими аспектами проектирования архитектуры
нейронной сети.
В работе Jarrett et al. (2009) также отмечалось, что для небольших наборов данных
использование ректифицирующих нелинейностей даже важнее, чем обучение весов
скрытых слоев. Случайных весов достаточно для распространения полезной инфор-
мации по сети с линейной ректификацией, что позволяет классифицирующему вы-
ходному слою обучаться отображению различных векторов признаков на идентифи-
каторы классов.
Если доступно больше данных, то процесс обучения начинает извлекать так много
полезных знаний, что превосходит по качеству случайным образом выбранные пара-
метры. В работе Glorot et al. (2011a) показано, что обучение гораздо легче проходит
в ректифицированных линейных сетях, чем в глубоких сетях, для которых функ-
ции активации характеризуются кривизной или двусторонним насыщением. Бло-
ки линейной ректификации представляют также исторический интерес, поскольку
демонстрируют, что нейробиология по-прежнему оказывает влияние на разработку
алгоритмов глубокого обучения. В работе Glorot et al. (2011a) в обоснование блоков
линейной ректификации выдвигаются биологические соображения. Ректификация
на полупрямой была предложена для улавливания следующих свойств биологиче-
ских нейронов: 1) для некоторых входных сигналов биологические нейроны вообще
неактивны; 2) для некоторых входных сигналов выходной сигнал биологического
нейрона пропорционален входному сигналу; 3) большую часть времени биологиче-
Do'stlaringiz bilan baham: |