Боровиков В.П. - Нейронные сети (778916), страница 23
Текст из файла (страница 23)
109 Неаронные сета БТАТ18Т!СА йонга! Неаеоже Для начала применим алгоритм масштабирования, чтобы выход сети имел «приемлемый» диапазон. Простейшей из масштабирующих функций пакета ЯТ Меига! Фегн~огхя является минимаксная функция: она находит минимальное и максимальное значение переменной по обучающему множеству и выполняет линейное преобразование (с применением коэффициента масштаба и смешения) так, чтобы значения лежали в нужном диапазоне (как правило, на отрезке (О; 1)).
Если эти действия применяются к числовой (непрерывной) выходной переменной, то есть гарантия, что все обучающие значения после преобразования попадут в область возможных выходных значений сети и, следовательно, сеть может быть обучена. Кроме того, мы знаем, что выходы сети должны находиться в определенных границах. Это обстоятельство можно считать достоинством илн недостатком — здесь мы приходим к вопросам экстраполяции. Посмотрим на рис.
4.7. Мы стремимся оценить значение У по значению Х. Необходимо аппроксимировать кривую, проходящую через заданные точки. Вероятно, вполне подходящей для этого покажется кривая, изображенная на графике — она имеет приблизительно нужную форму и позволяет оценить значение У в случае, если входное значение лежит в интервале, среднее значение который охватывается сплошной ча- ю стью кривой — в этой области возможна интерполяция. Но что делать, если входное значе- Змстрапвляция ние расположено существенно правее имеющихся точск? В таких случаях возможны два подхода к оценке значения У. Первый вариант — экстраполяция: мы Ряс, 4.7 продолжаем подогнанную кривую вправо. Во втором варианте мы говорим, по у нас нет достаточной информации для осмысленной оценки этого значения и потому в качестве оценки принимаем срсднсе значение всех выходов (в отсутствие какой-либо информации это может оказаться лучшим выходом из положения).
Предположим, например, что мы используем многослойный персептрон (МЛП). Применение минимакса по описанной выше схеме имеет ряд ограничений. Во-первых, кривая нс будет экстраполироваться, как бы близко мы ни находились к обучающим данным (в действительности же, если слегка выйти за область обучающих данных, экстраполяция вполне оправдана). Во-вторых, оценка по среднему также не будет выполняться: вместо этого будет браться минимум или максимум, в зависимости оттого, росла или убывала в этом месте оцениваемая кривая.
Чтобы избежать этих недостатков в МЛП используется ряд приемов. 110 Гневе 4. Общоб обзор небронных оео>еб Во-первых, логистическую функцию активации в выходном слое можно заменить на линейную, которая не меняет уровня активации (обратите внимание, что при этом функции меняются только в выходном слое, а в промежуточных слоях по-прежнему остаются логистические и гиперболические функции активации). Линейная функция активации не насыщается и поэтому способна экстраполировать (при этом логистическис функции предыдущих слоев все-таки предполагают насыщение на более высоких уровнях).
Линейныс функции активации в МЛП могут вызвать определснныс вычислительныс трудности в алгоритме обратного распространения, поэтому при его использовании следует брать малые (менее 0,1) скорости обучения. Описанный подход пригоден для целей экстраполяции. Во-вторых, можно изменить целевой диапазон минимаксной масштабирующей функции (например, сделать его 10,25; 0,75)).
В результате обучающие наблюдения будут отображаться в уровни, соответствующие средней части диапазона выходных значений. Интересно заметить, что если этот диапазон выбран маленьким, и обе его границы находятся вблизи значения 0,5, то он будет соответствовать срсднему участку сигмоидной кривой, на котором она «почти линейна». Тогда мы будем иметь практически ту же схему, что и в случае линейного выходного слоя. Такая сеть сможет выполнять экстраполяцию в определенных пределах, а затем будет насьпцаться.
Все это можно хорошо себе представить так: экстраполяция допустима в определенных границах, а вне этих границ она будет пресекаться. Если применяется первый подход и в выходной слой помещены линейные элементы, то может получиться так, что вообще нет необходимости использовать алгоритм масштабирования, поскольку элементы и без гиасштабирования могут выдавать любой уровень выходных сигналов.
В пакете БТ №иги! №гнх»як имеется возможность для большей эффективности вообще отключить все масштабирования. Однако на практике полный отказ от масштабирования приводит к трудностям в алгоритмах обучсния. Действительно, в этом случае разные веса сети работают в сильно различающихся масштабах, и это усложняет начальную инициализацию весов и (частично) обучение. Поэтому мы нс рекомендуем отключать масштабирование, за исключснисм тех случаев, когда диапазон выходных значений очень мал и расположен вблизи нуля. Это жс соображение говорит в пользу масштабирования и при прспроцессировании в МЛП-сетях (при котором, в принципе, веса первого промежуточного слоя можно легко корректировать, добиваясь этим любого нужного масштабирования), До сих пор в нашем обсуждении мы уделяли основное внимание тому, как в задачах регрессии применяются сети МЛП, и в особенности тому, как сети такого типа ведут себя в смысле экстраполяции.
Сети, в которых используют- 111 Неаронные сеген ЗТА ПЗТГСА ггеога! МеГагогха ся радиальные элементы (РБФ и ОМАХ), работают совершенно иначе и о них слсдуст поговорить отдельно. Радиальные сети по самой своей природе нсспособны к экстраполяции. Чем дальше входной пример расположен от точек, соответствующих радиальным элементам, тем меньше становятся уровни активации радиальных элементов и, в конце концов, тем меньше будет выходной сигнал сети. Входной пример, расположенный далеко от центров радиальных элементов, даст пулевой выходной сигнал. Стремление сети нс экстраполировать данные можно считать достоинством (это зависит от предметной области), однако убывание выходного сигнала, на первый взгляд, достоинством не является. Если мы стремимся избегать экстраполяции, то для входных точек, отличающихся большой степенью новизны, в качестве выхода мы, как правило, хотим иметь усредненное значснис.
Для радиальных сетей в задачах регрессии этого можно достичь с помощью масштабирующсй функции среднее/стандартное отклонение. Обучающие данные масштабируются таким образом, чтобы среднее выходное значение равнялось 0,0, а все другие значения были бы промасштабированы на стандартное отклонение выходных си~палов. При обработке входных точек, лежащих внс областей действия радиальных элементов, выходной сигнал сети будет приблизительно равен среднему значению. Качество работы сети в задаче регрессии можно проверить несколькими способами.
Во-первых, сети можно сообщить выходное значение, соответствующее любому наблюдению (или какому-то новому наблюдению, которое мы хотели бы проверить). Если это наблюдение содержалось в исходных данных, выдается значснис нсвязки. Во-вторых, могут быть получены итоговые статистики. К ним относятся среднее значение и стандартное отклонение, вычисленные для обучающих данных и для огпибки прогноза. В общем случае срсднес значение ошибки прогноза будет очень близко к нулю (в конце концов, нулевое среднее для ошибки прогноза можно получить, попросту оценив среднее значение обучающих данных и нс обращаясь к значениям входных переменных).
Наиболее важным показателем является стандартное отклонение ошибки прогноза. Если оно нс окажется существенно мсцьшс стандартного отклонения обучающих данных, это будет означать, что сеть работает не лучше, чем простая оценка по среднему. Далее, в пакете БТ Неиги! ФегвоМх пользователю выдастся отношение стандартного отклонения ошибки прогноза к стандартному отклонению обучающих данных. Если оно сущсствепно мсцьшс единицы (например, ниже 0,1), то это говорит о хорошем качестве регрессионной модели. Это регрессионное отношение (точнее, величину единица минус это отношение) иногда называют долей объясненной дисперсии модели.
112 Грана 4 Общий обзор набранных сетвб В-третьих, можно вывести изображение поверхности отклика. На самом деле, разумеется, эта поверхность представляет собой (%+1)-мерный объект, где л! — число входных элемснтов, а оставшееся измерение соответствует высоте точки на поверхности.
Понятно, что непосредственно визуально представить такую поверхность при М > 2 невозможно (а реально %всегда больше двух). Тем нс менее, в пакете БТ Мсиги! Д!егн огкв можно выводить срезы поверхности отклика по любым двум входным переменным. При этом значения всех остальных входных переменных фиксируются, и меняются только два выбранных. Всем остальным псременным можно придать любое значение по своему усмотрению (по умолчанию программа БТ Феиги! Фегногхв возьмет для них срсдние значения).















