Содержание статьи
Проблемы нейронных сетей
Изменение модели
В данной конструкции вывод нейрона подается как следующему нейрону, так и нейрону на расстоянии 2-3 слоев впереди, который суммирует его с выходом предшествующего нейрона, а функция активации в нем — ReLU (см. рисунок 3). Такая связка называется shortcut. Это позволяет при обратном распространении ошибки значениям градиента в слоях быть более чувствительным к градиенту в слоях, с которыми связаны с помощью shortcut, то есть расположенными несколько дальше следующего слоя.
Существует аналогичная обратная проблема, когда в процессе обучения при обратном распространении ошибки через слои нейронной сети градиент становится все меньше. Это приводит к тому, что веса при обновлении изменяются на слишком малые значения, и обучение проходит неэффективно или останавливается, то есть алгоритм обучения не сходится. Это явление называется затухающим градиентом (англ. vanishing gradient).
Исследование в области нейронных сетей началось более полувека назад, однако прорыв произошел только недавно. В последние годы ИНС эксплуатируются в различных областях, например для диагностирования заболеваний с помощью определения классов медицинских снимков, целевого маркетинга, исследования поведенческих данных, прогноза электрической нагрузки, проверки качества, определения химических соединений и т.д.
Функция проста для вычисления и имеет производную, равную либо $1$, либо Откуда видно, что оценка элементов градиента растет экспоненциально при рассмотрении частных производных по весам слоев в направлении входа в нейронную сеть (уменьшения номера слоя). Это в свою очередь может приводить либо к экспоненциальному росту градиента от слоя к слою, когда входные значения нейронов — числа, по модулю большие $1$, либо к затуханию, когда эти значения — числа, по модулю меньшие $1$.$. Также есть мнение, что именно эта функция используется в биологических нейронных сетях. При этом функция не насыщается на любых положительных значениях, что делает градиент более чувствительным к отдаленным слоям.
В процессе обратного распространения ошибки при прохождении через слои нейронной сети в элементах градиента могут накапливаться большие значения, что будет приводить к сильным изменениям весов. Это в свою очередь может сделать нестабильным алгоритм обучения нейронной сети. В таком случае элементы градиента могут переполнить тип данных, в котором они хранятся. Такое явление называется взрывающимся градиентом (англ. exploding gradient).
Таким образом, увеличение числа слоев нейронной сети с одной стороны увеличивает ее способности к обучению и расширяет ее возможности, но с другой стороны может порождать данную проблему. Поэтому для решения сложных задач с помощью нейронных сетей необходимо уметь определять и устранять ее.
Пусть сеть состоит из подряд идущих нейронов с функцией активации $\sigma(x)$; функция потерть (англ. loss function) $L(y) = MSE(y, \hat) = (y — \hat)^2$ (англ. MSE — Mean Square Error); $u_d$ — значение, поступающее на вход нейрону на слое $d$; $w_d$ — вес нейрона на слое $d$; $y$ — выход из последнего слоя. Оценим частные производные по весам такой нейронной сети на каждом слое. Оценка для производной сигмоиды видна из рисунка 1.
Нейросети позволяют создавать значения из большого количества неточных или сложных значений, а также аппроксимировать, классифицировать и распознавать более точно и быстро в сравнении с классическими алгоритмами. Хотя во многих задачах человеческий мозг превосходит возможности существующих на сегодня ИНС, их преимущества нельзя игнорировать, поэтому они имеют широкое применение. Их достоинства:
Tanh
Однако, входные значения скрытых слоев есть выходные значения функций активаций предшествующих им слоев. В частности, сигмоида насыщается (англ. saturates) при стремлении аргумента к Хотя работа искусственных нейронных сетей имеет довольно много преимуществ, но имеются и некоторые недостатки. Например, проблема насыщения сети: чем больше значения сигналов, тем ближе к нулю градиенты активационной функции, что мешает подбору наилучших коэффициентов. Кроме того, большинство вариантов проектирования искусственных нейронных сетей – эвристические, а значит, не дают единственно верных решений. Также требуется много времени и усилий для многоцикловой настройки элементов модели и их связей и последующего построения непосредственно модели.\infty$ или $-\infty$, то есть имеет там конечный предел. Это приводит к тому, что более отдаленные слои обучаются медленнее, так как увеличение или уменьшение аргумента насыщенной функции вносит малые изменения, и градиент становится все меньше. Это и есть проблема затухающего градиента.
Напомним, что градиентом в нейронных сетях называется вектор частных производных функции потерь по весам нейронной сети. Таким образом, он указывает на направление наибольшего роста этой функции для всех весов по совокупности. Градиент считается в процессе тренировки нейронной сети и используется в оптимизаторе весов для улучшения качества модели.
Ещё одним недостатком нейросети является то, что она – аппроксиматор, при настройке которого не вычисляется целевая функция, а осуществляется подбор функций, складывающихся и за счет этого дающих результат в виде набора значений, похожего на исходный. Вследствие этого, выходные данные ИНС, фактически, всегда будут с ошибкой, значение которой заранее не известно, но есть возможность её уменьшить до рационального уровня во время обучения.
Эта функция часто используется, поскольку множество ее возможных значений — отрезок $[0, 1]$ — совпадает с возможными значениями вероятностной меры, что делает более удобным ее предсказание. Также график сигмоиды соответствует многим естественным процессам, показывающим рост с малых значений, который ускоряется с течением времени, и достигающим своего предела [2] (например, рост популяции).
Нейронная сеть не имеет способности запомнить опыт, полученный при обучении на нескольких задачах, что называется «катастрофической забывчивостью». Однако, на сегодняшний день ведутся исследования по решению этой проблемы и достигаются значительные успехи.
Но, несмотря на рассмотренные выше проблемы и недостатки, разработка ИНС все еще остается перспективным направлением для развития. Нейронные сети остаются мощным инструментом для решения задач, требующих нетривиального подхода, и при этом продолжают получать усовершенствования. На сегодняшний день продолжается разработка методов для решения недостатков и проблем ИНС.