Хайкин С. - Нейронные сети (778923), страница 59
Текст из файла (страница 59)
Если главной целью является хорошая способность к обобщению, то по виду кривой довольно сложно определить момент, когда следует остановить процесс обучения. В частности, как следует из материала, изложенного в разделе 4.!2, если вовремя не остановить сеанс обучения, то существенно повышается вероятность излишнего переобучения (очегйп1пй). Наступление стадии излишнего переобучения можно определить с помощью перекрестной проверки, в которой данные разбиты на два подмножества — оценивания и проверки.
Множество оценивания используется для обычного обучения сети с небольшой модификацией; сеанс обучения периодически останавливается (через 292 Глава 4. Миоюслойиый персептрои каждые несколько эпох), после чего сеть тестируется на проверочном подмножестве. Более точно, периодический процесс оценивания-тестирования выполняется следующим образом. ° После завершения этапа оценивания (обучения) синаптические веса и уровни порогов многослойного персептрона фиксируются, и сеть переключается в режим прямого прохода. Ошибка сети вычисляется для каждого примера из проверочного подмножества. ° После завершения тестирования наступает следующий этап процесса обучения, и все повторяется. Такая процедура называется методом обучения с ранним астаповом (еаг1у моррглй шег[тод оТ пв[шпд)10. На рис.
4.20 показана форма двух кривых обучения. Первая относится к измерениям на подмножестве для оценивания, а вторая — к измерениям на проверочном подмножестве. Обычно на проверочном подмножестве модель ведет себя не так хорошо, как на подмножестве для оценивания, на основе которого формируется архитектура сети. Функция обучения на подмножестве оценивания (езгппабоп!еаш[пй спгче) монотонно убывает с увеличением количества эпох, в то время как кривая обучения на проверочном подмножестве (ча][да[[оп [еагп[пя спгче) монотонно убывает до некоторого минимума, после чего при продолжении обучения начинает возрастать. Если учитывать только кривую, построенную на подмножестве оценивания, то возникает соблазн продолжать обучение и после прохождения точки минимума на кривой, построенной на проверочном подмножестве.
Однако на практике оказывается, что после прохождения этой точки сеть обучается только посторонним шумам, содержащимся в обучающей выборке. Поэтому можно выдвинуть эвристическое предположение о том, что точку минимума кривой тестирования можно использовать в качестве критерия останова сеанса обучения. А что если данные обучения не содержат шума? Как в этом случае определить точку раннего астапова для детерминированного сценария? Частично на этот вопрос можно ответить следующим образом. Если ошибки на подмножествах оценивания и проверки не одинаково стремятся к нулю, то емкости сети не достаточно для точного функционирования модели. Лучшее, что можно сделать в таком случае,— это постараться минимизировать интегрированную квадратичную ошибку ([пгейгагед 8Чпагег[ еггот, что (приблизительно) эквивалентно минимизации обычной глобальной среднеквадратической ошибки при равномерном распределении входного сигнала.
'а Первые упоминания о методе обучения с ранним остановом содержатся в [7541, [11211. Пожалуй, нанболее полный статнстнческнй аналнз этого метода обучения многослойного персепгрона представлен в [40]. Это исследование подтверждается результатамн компьютерного моделирования для класснфнкатора с архнтектурой 8-8-4, ! 08-ю настранваемымн параметрами прн чрезвычайно большом множестве данных (50000 примеров). 4.14. Перекрестная проверка 293 Срелиеквал- ратическаа ошибка Рис. 4.20. Процесс обучения с ранним остановом на основе перекрестной проверки Количество эпох ,/2И'-1 — 1 2(Ил — 1) При больших значениях И' эта формула сводится к следующей: 1 горе 1 ~ И >> 0 ъ~ 2И' (4.93) Например, при Ил = 100, г = О, 07. Это значит, что 93оА данных обучения составляет подмножество оценивания и только 7;4 приходится на проверочное подмножество.
Статистическая теория явления чрезмерного переобучения (оуегбп(пд) описана в 1401. В этой работе содержится предостережение против использования метода раннего останова процесса обучения. Данная теория основывается на пакетном обучении и подтверждается основательным компьютерным моделированием классификатора на основе многослойного персептроиа с одним скрытым слоем. В зависимости от размера обучающего множества выделяются два типа поведения (режима). Первый — это неассимптотический режим (попавушр1обс пюре), при котором Х < ЗОИЛ, где х"т' — размер обучающего множества; И' — количество свободных параметров сети.
В этом режиме метод раннего останова повышает эффективность обобщения по сравнению с полным обучением (при котором используется все множеспю примеров без останова сеанса). Согласно полученным результатам, переучивание может наступить при )т' < ЗОИ', и только в этом случае существует практическая польза от использования перекрестной проверки для останова сеанса обучения. Оптимальное значение параметра г, определяющее разбиение множества примеров на подмножества для оценивании и проверки, должно выбираться из соотношения 294 Глава 4. Многослойный персептрон !( ) (. ) ! ) ("'-~ Попытка т ! Попытказ [ ~ ~~::"~~~ ~ Л [ 3 пооытка4 ~' -Д 1 ] 1 .г П Рис. 4.21.
Метод многократной перекрестной провер- ки. При каждой попытке обучения заштрихованное подмножество используется для вычисления ошибки оценивания Вторым типом поведения является асимптотичесггий режим (азушргог!с люде), при котором Х > ЗОИ', В этом режиме при использовании метода раннего останова наблюдается лишь небольшое улучшение эффективности обобшения по сравнению с полным обучением.
Другими словами, полное обучение (ехЬацзт!че !еагл!пя) приводит к удовлетворительному результату, если размер множества обучения велик по сравнению с количеством параметров сети. Варианты метода перекрестной проверки Предложенный подход к реализации перекрестной проверки получил название метода удержания (!то!д оцт шебтог!). Существуют и другие варианты перекрестной проверки, которые также нашли свое применение на практике, особенно при недостатке маркированных примеров. В такой ситуации можно использовать многократную перекрестную проверку (пш11!(о14 егозя-ча!!дат!оп), разделив имеющееся в наличие множество из )т' примеров на К подмножеств (К > 1). При этом подразумевается, что Х кратно К.
Обучение модели проводится на всех подмножествах, кроме одного. На этом оставшемся подмножестве выполняется тестирование и определяется ошибка оценивания. Эта процедура повторяется К раз, при этом каждый раз для тестирования используются разные подмножества (случай для К = 4 показан на рис. 4.21). Эффективность такой модели вычисляется путем усреднения квадратичной ошибки по всем попыткам. Метод многократной перекрестной проверки имеет один недостаток: он требует очень большого объема вычислений, так как обучение должно проводится К раз (1 ( К < )тг). Если количество доступных примеров Х ограничено, можно использовать экстремальную форму многократной перекрестной проверки — метод исключения одного примера.
В этом случае для обучения модели используется )т" — 1 примеров, а тестирование выполняется на оставшемся. Эксперимент повторяется Х раз, причем каждый раз для проверки используются разные примеры. После этого квадратичная ошибка оценки усредняется по всем )тг экспериментам. 4.15. Метцды упрощения структуры сети 295 4.15. Методы упрощения структуры сети Решение реальных задач с помощью нейронных сетей обычно требует использования четко структурированных сетей довольно большого размера.
В этом контексте возникает практический вопрос минимизации размера сети без потери производительности. При уменьшении размера нейронной сети снижается вероятность обучения помехам, содержащимся в примерах, и, таким образом, повышается качество обобщения. Минимизировать размер сети можно двумя способами.
° Наращивание сети (пеПчог]с ягоьчгпя). В этом случае в качестве начальной архитектуры выбирается простой многослойный персептрон, возможностей которого явно недостаточно для решения рассматриваемой задачи, после чего в сеть добавляется новый нейрон или слой скрытых нейронов только в том случае, если ошибка в процессе обучения перестает уменьшаться". ° Упрощение структуры сети (пениог]с ргппгпя). В этом случае процесс адаптации начинается с большого многослойного персептрона, производительности которого достаточно для решения поставленной задачи. После этого сеть постепенно упрощается за счет избирательного или последовательного ослабления или отключения отдельных синаптических связей. В данном разделе мы сосредоточим внимание на втором способе — процедуре упрощения.
В частности, будут описаны два подхода, первый из которых основывается на одной из форм "регуляризации", а второй — на удалении из сети определенных синаптических связей. " Примером реализации подхода наращивания сети являемся обучение методом каскадной корреляции (смевшее-сопе1айоп 1еапппя) [288]. Процедура обучения начинащся с минимальной структуры сети, имеющей несколько вюлиых и выходных узлов, чю определяется условиями задачи, и не содержащей скрытых узлов. Для обучения сети может использоваться любой алгоритм, например 1.М8. Скрытые нейроны добавляются в сеть по одному, образуя таким образом многослойную струхтуру добавленных скрытых нейронов. После лобмщения нового нейрона его входные сннаптические связи замораживаются, а обучаются талька ею выходные синаптические связи.
После их обучения новый скрытый нейрон становится постоянным детектором признаков данной сети. Процедура добавления новых скрытых нейронов описанным выше способом продолжается до тех пор, пока не удастся достичь удовлетворительной производительности сети. Еще один подход к наращиванию сети описан в [628]. В ней к прямому (функциональному) и обратному проходу (адаптации параметров) добавлен третий проход — адаптации структурного уровня (знцсшю-1ече! абаргабоп).