Читайте также:
|
|
В задачах регрессии цель состоит в прогнозировании значения непрерывной выходной переменной. Многослойный персептрон в своем исходном виде может для этого не подойти, поскольку стандартная логистическая функция активации принимает значения в интервале (0:1). а выходные значения задачи могут лежать совсем в другом диапазоне.
Масштабирование выходных значений. Программа ST Neural Networks автоматически устраняет это несоответствие путем масштабирования (шкалирования) выходных значений. По умолчанию в многослойном персептроне используется шкалирование методом Минимакс -Minimax как для входных, так и для выходных переменных. После того,как сеть обучена, программа ST Neural Networks определяет для каждой переменной коэффициенты масштаба и смещения по минимальному и максимальному значениям на обучающеммножестве и преобразует данные, умножая их на коэффициент масштаба и прибавляя смещение.
В результате нулевой уровень активации соответствует минимальному значению, встретившемуся в обучающих данных, а единичный уровень активации - максимальному значению. Тем самым сеть может интерполировать значения в диапазоне изменения обучающих данных, но не может экстраполировать вне этой области даже тогда, когда данные сами напрашиваются на это.
Придать сети способность к экстраполяции можно несколькими способами.
1. Уменьшить диапазон параметров Мин/средн - Min/Mean и Макс/ст.откл.- Max/SD для шкалирования методом Минимакс -Minimax no сравнению с областью значений активации (например, до [0,2;0,8] для стандартной логистической функции активации). Таким образом, появится небольшая возможность экстраполяции (сильная экстраполяция данных, как правило, не бывает оправдана).
2.Использовать линейную функцию активации в последнем слое сети. Это делает возможной большую степень экстраполяции, хотя, в конце концов, выходной сигнал будет все равно насыщен из-за насыщения логистических элементов в предыдущих слоях сети. Достоинством данного способа является возможность «тонкой настройки» последнего слоя с помощью итеративного обучения методом псевдообратных (Pseudo-Inverse).
Выбросы. Регрессионные сети особенно чувствительны к проблеме выбросов. При использовании среднеквадратичной функции ошибок (Sum-Squared Error function) точки, далеко отстоящие от основной массы, оказывают непропорционально большое влияние на положение гиперплоскостей регрессии. В случае, когда такие точки на самом деле являются аномалиями (например, ложные точки, порожденные сбоями в измерительной аппаратуре), они могут сильно ухудшить качество результата.
Вот один из возможных способов решения этой проблемы: обучить сеть, затем протестировать ее на обучающих наблюдениях, найти и отбросить re из них, которые дают очень большую ошибку, а затем вновь обучить сеть. На последнем этапе наблюдения с выбросами нужно пометить как неучитываемые.
Если вы считаете, что наблюдение-выброс объясняется сомнительным значением только какой-то одной переменной, то можно удалить именно это значение, в результате чего программа будет трактовать это наблюдение как имеющее пропущенное значение (см. следующий раздел).
Другой подход основан на использовании функции ошибок «городских кварталов» (Error function City-Block). Вместо того, чтобы при подсчете ошибки суммировать квадраты разностей по каждой переменной, здесь суммируются просто модули разностей. Без возведения в квадрат обучение становится гораздо менее чувствительным к выбросам.
В то время как при использовании среднеквадратичной функции ошибок «влияние», которое отдельное наблюдение оказывает на положение гиперплоскости, пропорционально расстоянию от него до гиперплоскости, в случае функции ошибок «городских кварталов» это усилие одинаково для всех точек, и только лишь его направление зависит от того, по какую сторону от гиперплоскости расположена точка. На самом деле среднеквадратичная функция ошибок стремится найти среднее значение, а функция ошибок «городских кварталов» - медиану.
Пропущенные значения. Нередко в имеющейся в нашем распоряжении выборке отсутствуют данные для отдельных наблюдений. Тем не менее, при проведении анализа этого набора данных с помощью нейронной сети (чтобы выжать все возможное из имеющейся информации) может возникнуть необходимость в использовании этих неполных наблюдений для обучения ввиду острой нехватки обучающих данных.
В пакете ST Neural Networks имеются специальные средства обработки пропущенных значений. Значение для подстановки берется из обучающего множества, и может являться, например, средним всех значений этой переменной, присутствующих в обучающем множестве. Способ подстановки пропущенных значений может быть выбран отдельно для каждой переменной в таблице редактора пре/пост-процессирования, а сами подстановочные значения вычисляются во время обучения сети.
Кроме этого, средства управления пропущенными значениями имеются в Редакторе данных - Data Set Editor. Там. где это возможно, следует отбрасывать либо переменные, у которых много пропущенных значений, либо наблюдения с пропущенными значениями. Вы можете выбрать тот или иной вариант и приказать программе ST Neural Networks автоматически выявлять и отбрасывать соответствующие переменные или наблюдения.
Дата добавления: 2015-11-30; просмотров: 71 | Нарушение авторских прав