назад Оглавление вперед


[Старт] [1] [2] [3] [4] [5] [ 6 ] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42]


6

Последовательный спуск, или использование ч подтверждающего множества

Другой способ избавиться от переобучения заключается в том, чтобы измерить ошибку сети на некотором множестве примеров из базы данных, не включенных в обучающее множество, - подтверждающем множестве. Ухудшение характеристик сети при работе с этим множеством указывает на возможное переобучение. Наоборот, если характеристики улучшаются, это значит, что обучение продолжается. Таким образом, переобучение можно обнаружить, наблюдая за тем, насколько последовательно уменьшается ошибка во время обучения сети. В любом реальном (не смоделированном на компьютере) приложении нужно использовать подтверждающее множество, так как уровень шума заранее не известен.

Недостатком этого приема является уменьшение числа примеров, которые можно было бы взять в качестве обучающего множества. Малость базы данных - это серьезная проблема. Более того, оценка качества работы сети зависит от выбора образцов, составляющих подтверждающее множество. Даже при случайной выборке разные разбиения базы данных на обучающее и подтверждающее множества дают разные оценки. При исследовании этой проблемы Де Гроот [84] использовал для отбора примеров и построения обучающего и подтверждающего множеств алгоритмы кластеризации.

Перекрестное подтверждение

Для того чтобы устранить произвол в разбиении базы данных, могут быть применены методы повторных проб (см. [262]). Рассмотрим один из таких методов, который называется перекрестным подтверждением. Его идея состоит в том, чтобы случайным образом разбить базу данных на q попарно не пересекающихся подмножеств. Затем производится q обучений на (q -1) множестве, а ошибка вычисляется по оставшемуся множеству. Если q достаточно велико, например, равно 10, каждое обучение задействует большую часть исходных данных. Если процедура обучения надежна, то результаты по q различным моделям должны быть очень близки друг к другу. После этого итоговая характеристика определяется как феднее всех по-

лученных значений ошибки. К сожалению, при применении этого метода объем вычислений часто оказывается очень большим, так как требуется проделать q обучений, и в реальном приложении с большой размерностью это может быть невыполнимо. В предельном случае, когда q = P, ще Р- общее число примеров, метод называется перекрестным подтверждением с одним в остатке. Такой метод оценки имеет смещение, и разработан метод «складного ножа», уменьшающий этот недостаток ценой еще большего объема вычислений., .

Регуляризация< ь..мн

Еще один способ избежать переобучения состоит в том, чтобы ограничить совокупность функций отображения, реализуемых сетью. Методы такого типа называются регуляризацией. Например, в функцию стоимости может быть добавлено штрафное слагаемое, подавляющее резкие скачки отображающей функции (на математическом языке - большие значения ее второй производной). Алгоритм обучения изменяется таким образом, чтобы учитывался этот штраф (см. [126]). ,

Оптимизация архитектуры

Разработаны различные методы изменения архитектуры сети с целью повысить способность сети к обобщению. Здесь есть два основных подхода:

•деструктивный подход: берется сеть заведомо большего размера, чем нужно, и в процессе обучения из нее удаляются связи и даже сами нейроны;

•конструктивный подход: первоначально берется маленькая сеть, и к ней, в соответствии со структурой и сложностью задачи, добавляются новые элементы.

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

с Г) < 1. Заметьте, что множитель т можно считать отношением среднего квадратичного остатков к среднему квадратичному весов. Добавленный член вызовет такое изменение весов:

установил, что на сети с прямой связью, построенной из линейных пороговых функциональных элементов, можно получить правильные обобгцения, если объем обучаюгцего множества в несколько раз больше объема сети. Для многослойных сетей общего вида, построенных из сигмоидальных элементов, аналогичное утверждение не имеет места (см. [31])., .



(18)

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

к=1 ij i

(19)

В результате малые коэффициенты убывают быстрее, чем большие. Кроме того, уменьшение весов помотает уходить с плоских участков поверхности на ранних стадиях обучения. Были предложены и другие виды выражений для штрафа, в результате чего удаляются не только соединения, но и нейроны (см. [132], [64]). Еще один метод уменьшения числа связей- «минимизация вреда для мозга» (см. [174]). Цель его состояла в том, чтобы находить в сети те веса, которые можно удалить, не меняя существенно среднеквадратичную ошибку (MSE) на обучающем множестве. Вводится показатель s-(так называемая «выпуклость» веса) по формуле:

,,Л£!М£„,.(ад

2 dWf

Удаление весов с малыми выпуклостями и повторное обучение урезанной сети улучшают ее общие характеристики. При итеративном применении этого метода к многослойному персептрону в задаче распознавания рукописного текста из сети было удалено более 50 процентов связей, и это привело к существенному уменьшению доли неправильно опознанных объектов (см. [174]).

В некоторых конструктивных методах наращивание сети происходит одновременно с обучением, см., например, [17], STEPNET [164], «черепичный» алгоритм [194], «всплеск» [116], нейронные деревья [244], каскадная корреляция [106].

/1/

Динамические, самоорганизующиеся сети и сети со встречным распространением

Нейронные сети с прямой связью и обучением методом обратного распространения ошибки рассматриваются в литературе чаще других. Кроме них, существует много других сетевых моделей, некоторые из которых имеют вычурные названия: «конкурентное обучение» (или «адаптивная теория резонанса»), сети Хопфилда, машины Больцмана, самоорганизующиеся карты признаков Кохонена.

y{t)

Нейронная сеть с прямой связью

------4..

x{t)

x{t)

x(t-l)

x{t-k)

Разветвленная линия задержт

Рис. 1.6. Нейронная сеть с временной задержкой

Архитектура такой нейронной сети с временной задержкой позволяет моделировать любую конечную временную зависимость вида

y{t) = F[x{t),xit-l),...,xit-k)].(21)

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

Динамические сети

Следующий класс нейронных сетей, который мы рассмотрим, - динамические, или рекуррентные, сети. Они построены из динамических нейронов, чье поведение описывается дифференциальными или разностными уравнениями, как правило,- первого порядка. Сеть организована так, что каждый нейрон получает входную информацию от других нейронов (возможно, и от себя самого) и из окружающей среды. Этот тип сетей имеет важное значение, так как с их помощью можно моделировать нелинейные динамические системы. Это - весьма общая модель, которую потенциально можно использовать в самых разных приложениях, например: ассоциативная память, нелинейная обработка сигналов, моделирование конечных автоматов, идентификация систем, задачи управления.

Нейронные сети с временной задержкой

Перед тем, как описать собственно динамические сети, рассмотрим, как сеть с прямой связью используется для обработки временных рядов. Метод состоит в том, чтобы разбить временной ряд на несколько отрезков и получить таким образом статический образец для подачи на вход многослойной сети с прямой связью. Это осуществляется с помощью так называемой разветвленной линии задержки, см. рис. 1.6.



Входы

Рис. 1.7. Сеть Хопфилда

Самоорганизующиеся сети

Введенную Кохопепом [167] «самоорганизую1цуюся карту признаков» можно рассматривать как вариант нейронной сети. Сеть такого типа рассчитана на самостоятельное обучение, во время обучения сообщать ей правильные отпеты необязательно. В процессе обучения на вход сети подаются различные образцы. Сети улаплинает особенности их структуры и разделяет образцы иа кластеры, а рке обученная сеть относит каждый вновь поступающий при.мер к одному из кластеров, руководствуясь пекоторы.м критерием «близости».

•• щ <

•* * J

•<

9 шшт

к" t • • •

1 • •

Топологическая карта (многомерная сетка)

Входной слой

Рис. 1.8. (Самоорганизующаяся сеть Кохонена. Изображены только связи, идущие в i-ii узел. Окрестность узла показана пунктиром

Очеви/П1о, для правильного поми.мапия сетью входного распределения нужно, чтобы кажлый эле.мепт сети становился победителем одинаковое число раз - весовые векторы должны бьггь равновероятными. Как установил Де Сиено [88], для этого необходи.мо нрису!-ствие некоторого механизма «справедливости». Один из воз.можных

Сети Хопфилда

С помощью рекуррентных сетей Хопфилда можно обрабатывать неупорядоченные (рукописные буквы), упорядоченные во времени (временные ряды) или пространстве (графики, граммагики) образцы. Рекуррентная нейронная сеть простейшего вида была введена Хопфилдом; она построена из Nпeйpoпol!, сняза1пи,1х каждый с каждым, причем все нейроны являются выходными.

Сети такой конструкции используются, главны.м образом, в качестве ассоциативной памяти, а также в задачах нелинейной фильтрации данных и грагиматического вывода. Кроме .этого, недавно они были применены для предсказания (см. [921, [741) и для распознавания закономерностей в поведении цен акций (см. [154]).

Выходные элементы АА«ь

Сеть состоит из одпо10 входио1о и одного выходного слоя. Количество элементов с выходно.м слое непосредственно определяет, сколько различных кластеров сеть сможет распознать. Каждый из выходных элементов получает па вход весь входной вектор. Как и по псякой нейронной сети, каждой связи приписан некоторый синап-тический вес. В большинстве случаев каждый выходной элемент соединен также со свои.ми соседя.ми. Эти виутрислойпые связи играют важную роль и процессе обучения, так как корректировка весов происходит только в окрестности того элемента, который наилучшим образом откликается па очередной вход.

Выходные элеменгы соревнуются .между собой за право вступить в действие и «получить урок». Выигрывает тот из них, чей вектор весов окажется ближе всех к входному вектору в смысле расстояния, определяемого, например, евклидовой метрикой. У элемента-победителя это расстояние будет .меньше, чем у всех остальных. На теку-цем шаге обучения менять веса разрешается только элементу-победителю (и, может быть, его непосредственным соседям); песа остальных элементов при это.м как бы заморожены. Выигравший элемент изменепяет свой весовой вектор, немного пере.мещая eio в сторону входного вектора. После обучения на достаточном количестве примеров совокупность весовых векторов с большой точностью приходит в соответствие со структурой входн1,1х примеров - векторы весов в буквалыю.м смысле моделируют распределение входных образцов.

[Старт] [1] [2] [3] [4] [5] [ 6 ] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42]