Метод повышения чувствительности нейронной

advertisement
4К
УДК 004.032.26
В.А. Крисилов, А.В. Кондратюк, К.В. Чумичкин
Одесский национальный политехнический университет, г. Одесса, Украина
victork@405.com.ua, alkond@ukr.net
Метод повышения чувствительности
нейронной сети к исходным данным
В данной работе рассмотрена проблема сохранения информативности исходных данных на этапе их
предварительных преобразований в задачах прогнозирования временных рядов посредством нейросетевого
моделирования. Предложен метод повышения чувствительности нейронной сети, основанный на анализе
информативности исходных данных и учёте статистических характеристик исследуемой случайной
величины. Разработан алгоритм повышения чувствительности нейронной сети при работе с дискретными
случайными величинами. Показана перспектива дальнейшего развития предложенного метода.
Введение
Необходимость предварительной обработки при анализе данных возникает
независимо от того, какие технологии и алгоритмы используются. При использовании механизмов анализа, в основе которых лежат самообучающиеся алгоритмы,
такие, например, как нейронные сети (НС), высокое качество исходных данных
является ключевым требованием [1].
Таким образом, для полноценного анализа данных необходимо к «сырым» данным,
прежде всего, применить методы предобработки данных, требуемые условиями той или
иной задачи, и только после этого приступать непосредственно к анализу.
Существует немало подходов к предварительной обработке данных, таких, как:
восстановление пропущенных значений, понижение размерности входных данных,
вычитание шума, устранение незначащих факторов, сглаживание, фильтрация данных,
расчет различных показателей, сортировки, группировки и множество других операций.
Наряду с этим немаловажное место занимает возможность учета статистических
характеристик исследуемой случайной величины, поскольку позволяет проанализировать
её более глубоко и, возможно, выделить (обозначить) некоторые скрытые закономерности её поведения ещё на этапе предобработки.
Цель работы. Повышение точности прогнозирования временных рядов средствами
нейросетевых технологий за счет разработки метода, повышающего чувствительность
нейронной сети к исходным данным, с целью сохранения информативности значений
последних на этапе предобработки.
Постановка задачи. Для большинства НС характерно наличие интервала
допустимых значений входных сигналов, в пределах которого они различимы [2].
Функция активации нейронов входного слоя определяет допустимые границы значений
исходных данных. Отображение в этот диапазон в основном осуществляется с помощью
простейшего преобразования на этапе предобработки [2] – нормализации, однако при этом
также не учитываются статистические характеристики исходных данных, что уменьшает
информативность исходных данных, а это ведет к большим значениям погрешности.
В случае игнорирования статистических характеристик исходных данных допустимый
диапазон используется не эффективно [3]. В нем присутствуют как слабо заполненные
участки, так и участки скученности значений исходной величины. Слабо заполненные
участки приводят к тому, что в процессе обучения НС плохо «запоминает» эти значения.
290
«Искусственный интеллект» 4’2006
Метод повышения чувствительности нейронной сети к исходным данным
4К
А участки скученности, где на относительно небольших отрезках располагается значительное
количество значений исходной величины, оказываются слабо различимыми. Точки как бы
сливаются на этих участках, что также приводит к снижению качества обучения.
Таким образом, происходит снижение чувствительности НС к значениям исходных
данных, следовательно и их информативности, а это, в свою очередь, негативно
сказывается на точности получаемого результата.
На основании вышесказанного можно обозначить следующие пути решения данной
проблемы:
1. Повышение чувствительности НС за счет изменения параметров функции
активации (ФА) нейронов входного и выходного слоёв НС.
2. Повышение чувствительности НС за счет преобразования значений исходных
данных с целью «подгонки» их закона распределения к необходимому, определяемому
ФА нейрона.
Перечисленные пути, по своей сути, подходят к решению описанной проблемы с
противоположных сторон.
Целесообразность первого обусловливается тем, что изменение параметров
ФА нейронов является однократным вмешательством в структурный синтез НС на этапе
настройки перед этапом обучения НС.
В то время, как второй повлечет за собой необходимость вмешательства в структуру
исходных данных, что само по себе требует веских обоснований правомочности, а также
(после окончания работы НС) процедуры восстановления исходного состояния данных
(обратного преобразования), при котором не избежать ошибки дискретизации, поскольку
чаще всего имеем дело с дискретными значениями исходных данных.
Таким образом, возникла необходимость в разработке метода, учитывающего
статистические характеристики исследуемой случайной величины на этапе её предобработки. Данный метод направлен на то, чтобы «сжать» с помощью заданной
ФА нейронов входного слоя весь диапазон значений исходного временного ряда (ВР)
в заданный интервал. При этом учитывается закон распределения исходного ВР, что
позволит сохранить информативность значений исходных данных в большей степени,
чем при стандартных подходах, не учитывающих статистические характеристики.
Метод повышения чувствительности НС
В работе рассматриваются нейронные сети типа «многослойный персептрон». Как
известно, в схеме искусственного нейрона блок, обозначенный F (рис. 1), принимает
сигнал NET и выдает сигнал OUT. Если блок F сужает диапазон изменения величины
NET так, что при любых значениях NET значения OUT принадлежат некоторому конечному интервалу, то F называется «сжимающей» функцией или функцией активации [4].
x1
w1
x2
w2
xn
wn
Σ
NET
F
OUT=F(NET)
Рисунок 1 – Искусственный нейрон с функцией активации F
«Штучний інтелект» 4’2006
291
Крисилов В.А., Кондратюк А.В., Чумичкин К.В.
4К
Было замечено некоторое соответствие между ФА нейрона и функцией закона
распределения случайной величины.
К примеру, наиболее часто применяемая в задачах прогнозирования ВР
сигмоидальная ФА нейрона (рис. 2а) при определенных значениях коэффициента α
повторяет график функции нормального распределения некоторой случайной величины
c достаточно высокой точностью (рис. 2б). Однако наблюдается некоторое смещение по
координатной сетке.
Интервал допустимых значений входных сигналов должен соответствовать
интервалу зоны чувствительности функции активации нейрона, которая определяется
эмпирически как [a, b] (рис. 2а).
Отсюда можно сделать вывод о том, что сигмоидальная ФА нейрона будет
обладать максимальной чувствительностью к значениям ВР только в том случае, если
исходный ВР имеет нормальный закон распределения (рис. 2б).
x
1
f ( x) =
1 + e − αx ,
а)
Φ0(x) =
f (x)
б)
1
t2
1
e
∫ 2 dt ,
2π 0
Φ0(x)
1/2
0
x
a
0
b
x
- 1/2
1
2
Рисунок 2 – Графики сигмоидальной функции активации нейрона (а)
и функции нормального распределения случайной величины (б)
Продолжая аналогию между видом распределения значений исходного ВР и
соответствующим ему типом ФА, можно логически заключить, что линейная
ФА нейрона будет обладать максимальной чувствительностью к значениям ВР только в
том случае, если данный ВР имеет равномерный закон распределения.
На основании вышеизложенного выдвинута гипотеза о том, что в роли ФА нейронов
входного слоя НС должна выступать функция распределения значений исходного ВР,
определенным образом отмасштабированная под специфику тех или иных исходных
данных. В этом случае появляется возможность с максимальной чувствительностью НС к
исходным данным «сжать» с помощью ФА весь диапазон значений исходного ВР в
заданный интервал с учетом статистических характеристик исходного ВР.
Предлагаемый метод заключается в том, чтобы перед началом обучения НС
подстроить параметры ФА нейронов входного слоя к конкретным исходным данным,
учитывая функцию закона распределения значений исходного ВР, поскольку она
является исчерпывающей статистической характеристикой любой случайной величины.
Данное действие является однократным вмешательством в структурный синтез НС на
этапе настройки. Метод позволяет гибко подстраивать параметры ФА нейрона под
функцию распределения конкретного ВР.
Суть метода можно изложить в следующих правилах:
1. Для сокращения потерь информативности исходных данных на этапе их
предобработки необходимо учитывать их статистические характеристики.
292
«Искусственный интеллект» 4’2006
Метод повышения чувствительности нейронной сети к исходным данным
4К
2. Учёт статистических характеристик исходных данных необходимо производить
однократно на этапе настройки перед этапом обучения НС путем применения в нейронах
входного слоя специальным образом подготовленной ФА. Для каждой отдельной задачи
данная процедура выполняется индивидуально. Это позволит более точно отобразить
исходное распределение ВР в равномерное (на выходе нейронов) по сравнению с
применением унифицированной ФА для целого класса задач (например, сигмоидальной),
как это обычно делается в настоящее время в подавляющем большинстве случаев.
3. Подготовку ФА следует производить на основании анализа статистических характеристик исходных данных. Следует выявить функцию распределения исследуемой СВ
и, несколько модифицировав её, использовать в качестве ФА нейронов входного слоя НС.
4. Под модификацией следует понимать масштабирование и сдвиг полученного
после анализа графика функции распределения с целью её соответствия диапазону
значений исходных данных конкретной задачи. При этом следует руководствоваться
некоторыми ограничениями, связанными с условиями применимости данного метода и
условиями, предъявляемыми к ФА в целом.
5. В случае работы с дискретными СВ следует производить дополнительную
обработку при подготовке ФА в соответствии с разработанным ниже алгоритмом
повышения чувствительности нейронной сети.
В случае непрерывных случайных величин нет никаких препятствий в реализации
данного метода, поскольку для них можно построить и функцию, и плотность распределения.
Но когда речь идет о дискретных случайных величинах, не все так просто,
поскольку в данном случае функция распределения является разрывной (прерывистой)
ступенчатой функцией, а плотность распределения вообще отсутствует как понятие. Его
аналогом в данном случае является многоугольник распределения.
Возможный выход из сложившейся ситуации реализован в предлагаемом ниже
алгоритме. Однако он все же не избавляет от некоторой ошибки дискретизации в случае
обработки дискретных исходных величин. Несмотря на это, значения ошибки можно
регулировать, и в подавляющем большинстве случаев они вполне допустимы.
Алгоритм повышения чувствительности нейронной сети
при работе с дискретными СВ
Для функционирования данного алгоритма накладывается следующее условие:
сумма всех значений весов wi (рис. 1) на суммирующем блоке ∑ нейрона входного
слоя НС должна быть равна единице, т.е.
n
∑w
i
= 1.
1
Поскольку в противном случае суммирующий элемент, входящий в состав
нейрона, будет искажать исходное распределение ВР и данный подход потеряет смысл.
Итак, алгоритм описывает преобразования только в нейронах входного слоя
НС и представляет собой последовательность следующих этапов:
1. Нормализация значений исходного временного ряда. Под нормализацией
понимается отображение диапазона значений исходных данных в диапазон допустимых
значений входных сигналов НС [2].
2. Построение функции распределения значений исходного ВР (в случае
непрерывной СВ) или многоугольника распределения (в случае дискретной СВ).
Рассмотрим второй случай как более сложный и распространенный. Пусть имеется
некоторый произвольный ВР (рис. 3), представленный тридцатью дискретными
значениями в нормализованном промежутке (–1; 1). Точки на графике соединены
для наглядности.
«Штучний інтелект» 4’2006
293
4К
Крисилов В.А., Кондратюк А.В., Чумичкин К.В.
Рисунок 3 – График произвольного ВР
Поскольку имеем дело с дискретными величинами, строим разрывную
ступенчатую функцию распределения данного ВР (многоугольник распределения),
«скачки» которой происходят в точках, соответствующих значениям случайной
величины, и равны значениям вероятностей в этих точках. Точки на графике
соединены для наглядности (рис. 4).
3. Аппроксимация многоугольника распределения. Однако в таком виде (рис. 4)
функцию нельзя использовать в качестве образца для ФА нейрона, поскольку она не
соответствует условиям, предъявляемым к ФА, перечисленным ниже на примере
сигмоидальной ФА (рис. 2а). Диапазон (0; 1) выбран для удобства представления.
Рисунок 4 – Многоугольник распределения произвольного ВР
ФА нейрона должна удовлетворять следующим условиям:
а) f(x) → 0 при х → –∞,
f(x) → 1 при х → +∞;
б) f(x) < f(x + ∆x), при ∆x > 0,
в) для
х существует f `(x).
Предлагается аппроксимировать (рис. 5) её одним из известных математике
способов с соблюдением необходимых условий. Например, с помощью метода
сплайнов или др.
294
«Искусственный интеллект» 4’2006
Метод повышения чувствительности нейронной сети к исходным данным
4К
4. Масштабирование полученной функции под специфику тех или иных
исходных данных. Выполнив описанную выше аппроксимацию, получим функцию,
приближенную к исходной функции распределения. Степень приближения в каждом
способе аппроксимации, как правило, можно регулировать. Итак, полученную функцию
можно использовать в качестве ФА нейрона как для работы с непрерывными, так и с
дискретными величинами (рис. 6).
Рисунок 5 – Аппроксимация многоугольника распределения произвольного ВР
Однако предварительно полученную функцию необходимо отмасштабировать
и при необходимости сдвинуть таким образом, чтобы она соответствовала диапазону
значений исходных данных.
5. Выбор в качестве ФА нейрона входного слоя данной модифицированной
функции. Полученная функция используется в качестве активационной для нейронов
входного слоя НС. Она учитывает особенности закона распределения значений
исходного ВР, что позволяет более точно отобразить исходное распределение ВР в
равномерное на выходе нейронов входного слоя НС (рис. 6).
OUT=F(NET)
NET
Рисунок 6 – Использование полученной ФА в нейронах входного слоя
«Штучний інтелект» 4’2006
295
4К
Крисилов В.А., Кондратюк А.В., Чумичкин К.В.
Выводы
Предложенный в данной работе метод направлен на повышение чувствительности
НС к исходным данным путем использования в нейронах входного слоя специальным
образом подготовленной ФА на основании анализа статистических характеристик
исходных данных. Это способствует лучшему сохранению информативности исходных
данных в процессе предобработки, благодаря чему можно рассчитывать на лучшие
показатели качества работы НС, например, такие, как точность и величина ошибки
прогнозирования той или иной СВ. При этом ожидается сохранение скорости работы
НС, а при определенных условиях и некоторое ускорение.
В работе приведено описание данного метода и алгоритма по повышению
чувствительности НС при работе с дискретными случайными величинами, а также
указаны условия выполнения данного алгоритма. Алгоритм наглядно проиллюстрирован.
К перспективам развития метода следует отнести применение его в несколько
измененном виде к нейронам выходного слоя НС, что позволит комплексно, а
следовательно и более эффективно, производить предобработку исходных данных.
Литература
1. http://www.basegroup.ru/tasks/preconditioning.htm
2. Миркес Е.М. Нейроинформатика: Учеб. пособие для студентов. – Красноярск: ИПЦ КГТУ, 2002 //
http://softcraft.ru/neuro/ni/ p07.shtml
3. Крисилов В.А., Кондратюк А.В., Чумичкин К.В. Преобразование входных данных нейросети с целью
повышения информативности их значений в задачах прогнозирования временных рядов // Інтелектуальні
системи прийняття рішень та прикладні аспекти інформаційних технологій: Матеріали науковопрактичної конференції. – Том 5. – Херсон: Видавництво Херсонського морського інституту. – 2005. –
С. 46-49.
4. Уоссерман Ф. Нейрокомпьютерная техника: теория и практика. – М.: Мир, 1992 //
http://www.basegroup.ru/tasks/preconditioning.htm
В.А. Крісілов, А.В. Кондратюк, К.В. Чумічкін
Метод підвищення чутливості нейронної мережі до вихідних даних
У даній роботі розглянуто проблему збереження інформативності вихідних даних на етапі їх попередніх
перетворень у задачах прогнозування часових рядів за допомогою нейромережного моделювання.
Запропоновано метод підвищення чутливості нейронної мережі, заснований на аналізі інформативності
вихідних даних та врахуванні статистичних характеристик досліджуваної випадкової величини. Розроблено
алгоритм підвищення чутливості нейронної мережі при роботі з дискретними випадковими величинами.
Вказано перспективу подальшого розвитку запропонованого методу.
Статья поступила в редакцию 08.06.2006.
296
«Искусственный интеллект» 4’2006
Download