Искусственная нейронная сеть
Техническое решение относится к средствам технической кибернетики и параллельной вычислительной техники и может быть использовано при построении систем распознавания образов на множестве прецедентов. Задачей предложенного технического решения является повышение производительности и достоверности распознавания многопризнаковых образов. Искусственная нейронная сеть состоит из блоков распределительных элементов (синапсов), связанных с блоками нелинейных преобразователей взвешенной суммы нейронов первого и второго слоя, нелинейные преобразователи состоят из умножителя, проходящего через синапс сигнала на взвешенную сумму (вес) этого синапса, сумматора и нелинейного преобразователя согласно своей функции активации, дополнительно введены блок формирования невязки между входным значением нейронной сети и ее целевым значением, блок разбиения обучающего примера на входные и выходные векторы, блок управления нижней границей интервала обобщения, причем нелинейные преобразователи взвешенной суммы первого слоя соединены с нелинейными преобразователями второго слоя, выходы которых соединены с входами блоков формирования невязки между выходным значением нейронной сети и ее целевым значением, а первые выходы блока разбиения обучающего примера на входные и выходные векторы соединены с входами блоков распределительных элементов, вторые его выходы связаны с входами блока управления нижней границы интервала обобщения, а третьи выходы связаны с блоками формирования невязки между выходным значением нейронной сети и ее целевым значением. 1 н.п.ф. 1 илл.
Техническое решение относится к средствам технической кибернетики и параллельной вычислительной техники и может быть использовано при построении систем распознавания образов на множестве прецедентов, не входящих в обучающую выборку.
Известна модель многослойной нейронной сети (НС) RU 115098, опубл. 20.04.2012, где сеть, включающая первый скрытый слой нейронов с логистическими функциями активации, содержащий 11 или 12 нейронов, второй скрытый слой с логистическими функциями активации или гиперболическим тангенсом, содержащий 9 или 10 нейронов, один нейрон выходного слоя с линейной функцией активации, отличающаяся тем, что выходы первого слоя нейронов соединены только с входами второго слоя нейронов, выходы второго слоя нейронов соединены только с входами третьего слоя нейронов, а выход третьего слоя нейронов не имеет соединения с входами нейронов первого и второго слоев нейронов.
Недостатком известного решения является то, что она имеет не только ограничения по обобщающей способности, ввиду классической архитектуры, но и ограничения относительно представления нелинейного класса функций на обучающей выборке, т.к. содержит один нейрон выходного слоя с линейной функцией активации.
Известна искусственная нейронная сеть (ИНС), содержащая входной сумматор, последовательно связанный с нелинейным преобразователем сигналов и точкой ветвления для рассылки одного сигнала по нескольким адресам, а также линейную связь - синапс, для умножения входного сигнала на вес синапса [А.Н. Горбань. Обобщенная аппроксимационная теорема и вычислительные возможности нейронных сетей. - Сибирский журнал вычислительной математики, 1998. Т. 1, 1. с. 12-24.; В.П. Коротков. Б.А. Тайц. Основы метрологии и теории точности измерительных устройств. - М: Издательство стандартов, 1978. - 352 с].
Наиболее близким по технической сущности и достигаемому результату является ИНС (патент РФ 62609, МПК8 C30B 15/00, C30B 15/00, опубл. 27.04.2007), содержащая входной сумматор, последовательно связанный с нелинейным преобразователем сигналов и точкой ветвления для рассылки одного сигнала по нескольким адресам, а также линейную связь -синапс, для умножения входного сигнала на вес синапса, отличающийся тем, что в качестве входного сумматора используют изомерные ядра со временем жизни в возбужденном состоянии несколько лет, в качестве нелинейного преобразователя используют квантовые точки, в качестве точки ветвления используют узел, выполненный из углеродных нанотрубок, а в качестве синапса - отдельно взятый переход одного изомерного ядра с низших на один из высших энергетических уровней под действием фотона большой энергии.
Недостатком наиболее близкого решения является низкая производительность при обучении и достоверность распознавания.
Задачей предложенного технического решения является повышение производительности и достоверности распознавания многопризнаковых образов на основе реализации обобщающей способности архитектуры многослойной НС, обучающейся в соответствии с алгоритмом обратного распространения ошибки.
Поставленная задача достигается за счет того, что ИНС содержит блоки распределительных элементов - входной слой нейронов (синапсы), которые связаны с блоками нелинейных преобразователей взвешенной суммы нейронов первого и второго слоя, выполняющих функции умножения проходящего через синапс сигнала на взвешенную сумму (вес) этого синапса, суммирования и нелинейного преобразования согласно своей функции активации, дополнительно введены блок формирования невязки между входным значением нейронной сети и ее целевым значением, блок разбиения обучающего примера на входные и выходные векторы, блок управления нижней границей интервала обобщения, причем нелинейные преобразователи первого слоя соединены с нелинейными преобразователями второго слоя, выходы которых соединены с входами блоков формирования невязки между выходным значением нейронной сети и ее целевым значением, а первые выходы блока разбиения обучающего примера на входные и выходные векторы соединены с входами блоков распределительных элементов, вторые его выходы связаны с входами блока управления нижней границы интервала обобщения, а третьи выходы связаны с блоками формирования невязки между выходным значением нейронной сети и ее целевым значением.
На Фиг. изображена структурная схема ИНС и представлены следующие обозначения: x 1, , xN2 - компоненты входного вектора, u1 , , uq - компоненты выходного вектора, и w - взвешенные коэффициенты соответственно 1-го и 2-го настраиваемых слоев НС, и - пороговые величины соответственно скрытого и выходного слоев, N2 - число нелинейных преобразователей (нейронов) входного слоя, p - число элементов скрытого слоя, q - число элементов выходного слоя, a1, , aN2 - компоненты входного распределительного вектора, b1, , bp - компоненты вектора элементов скрытого слоя, d1, , dq - компоненты целевого вектора.
Искусственная нейронная сеть содержит блоки распределительных элементов 1, состоящие из входных нейронов (синапсов), выходы которых соединены с входами блоков нелинейных преобразователей, взвешенной суммы выходов нейронов первого слоя 2, выходы которых соединены с входами блоков нелинейных преобразователей взвешенной суммы нейронов второго слоя 3, выходы которых соединены с входами блоков формирования невязки 4 между выходным значением нейронной сети: u1, , uq и ее целевым значением d1, , dq, а первые выходы блока разбиения 5 обучающего примера на входные и выходные векторы соединены с входами блоков распределительных элементов 1, вторые его выходы связаны с входами блока управления 6 нижней границы интервала обобщения, а третьи выходы связаны с блоками формирования невязки 4 между выходным значением нейронной сети и ее целевым значением.
Работает НС следующим образом. В режиме распознавания образов на вход НС последовательно поступают сигналы неизвестных классов, параметры которых измеряют и передают в векторном виде. Результаты распознавания неизвестного сигнала формируют на выходе НС в виде номера класса. По окончании идентификации первого сигнала производят классификацию следующего и так далее.
Но для решения задачи классификации образов НС должна быть обучена. Обучение предполагает наличие обучающих пар и образов, называемых обучающей последовательностью. При этом для каждого входного образа ai вычисляют реакцию сети ui и сравнивают с соответствующим целевым образом di, их разница представляет собой невязку (ошибку рассогласования), которую сравнивают с заданной точностью, если невязка превышает ее, то корректируют весовые коэффициенты модели, если невязка находится в допустимых пределах, то обучение останавливают.
Алгоритм обучения классической модели ИНС на N1 примерах выборки по методу обратного распространения ошибки состоит из восьми шагов:
1. Начальная инициализация всех весовых коэффициентов и пороговых величин случайными числами r, например, в диапазоне [w0-0.05, w0+0.05], где w0 - середина диапазона какой-либо сжимающей нелинейной функции, например, сигмоидной:
2. Для каждого из N1 - примеров обучающей выборки выполняется следующая последовательность действий. Поочередная активация входного слоя одним из N1 векторов:
.
3. Вычисление сигналов на выходе элементов скрытого слоя для каждого примера согласно выражению:
где: f(x) - логистическая сжимающая функция активации в диапазоне [0, 1].
4. Вычисление сигналов на выходе элементов выходного слоя для каждого примера согласно выражению:
5. Для каждого i-го входного вектора определение ошибок между вычисленными выходными величинами , нелинейных преобразователей и компонентами желаемого выходного образа обучающей выборки ,:
6. Для каждого входного вектора пересчет величин ошибок для всех элементов , скрытого слоя:
7. Корректировка весовых коэффициентов осуществляется после показа сети всех обучающих ситуаций протокола наблюдений (т.е. шаги 2-6 вычисляются для всех N1 примеров) согласно соотношениям:
где параметр - определяет скорость обучения.
8. Сравнение полученных выходных ошибок с требуемыми параметрами точности обучения, в случае если ошибка не в допуске повторение шагов 2-8. Условие прекращения обучения формулируется как:
либо: ,
где - абсолютная погрешность выходного значения нейрона в выходном слое; - предельное значение локальной целевой функции.
В результате реализации алгоритма обучения нейронная сеть готова правильно классифицировать входные вектора и обеспечивать отнесение распознаваемого вектора к тому или иному классу.
При конечном числе обучающих примеров всегда возможно синтезировать НС с нулевой ошибкой обучения, т.е. ошибкой, определенной на множестве обучающих примеров, для чего необходимо использовать число блоков взвешивания входного сигнала большим, чем число примеров N1. В итоге выбранная случайным образом функция дает плохие предсказания на новых примерах, отсутствовавших в обучающей выборке, хотя последнюю НС аппроксимирует без ошибок. Вместо того чтобы обобщить известные примеры, сеть запомнила их.
1. Восьмой шаг алгоритма настройки многослойной НС записан как:
8. Сравнение полученных выходных ошибок с требуемыми интервалами точности обучения, в случае если ошибка не в границах интервала повторение шагов 2-8. Условие прекращения обучения формулируется как:
где: 1 - минимально допустимая абсолютная погрешность выходного значения нейрона в выходном слое; 2 - максимально допустимая абсолютная погрешность выходного значения нейрона в выходном слое; - нижнее предельное значение локальной целевой функции; - верхнее предельное значение локальной целевой функции.
Интервал [1, 2] назовем интервалом О обобщения многослойной НС.
Фактически, введение блока управления нижней границей интервала обобщения, т.е. нижнего порога выходной невязки эквивалентно управляемому загрублению точности аппроксимации примеров обучающей выборки, что косвенно влечет оптимальность показателя достоверности распознавания примеров тестовой выборки.
Регулируемым является нижний порог 81 - минимально допустимая абсолютная погрешность выходного значения нейрона в выходном слое НС. Именно значение 1 формируют в блоке управления нижней границей интервала обобщения для каждого выходного нейрона или для всех выходных нейронов, в зависимости от вида минимизируемого функционала обучения. Общая форма правила коррекции 1 при подаче на вход блоков формирования интервальной невязки между выходным значением НС и ее целевым значением имеет вид
где l(i) - случайная корректирующая добавка, определяющая направление изменения вектора 1 на каждом i-м обучающем примере.
Применяют предложенное техническое решение по целевому назначению при подаче на вход массива обучающих примеров, из которых в блоке - 5 разбивают обучающий пример на входные и выходные компоненты. Компоненты входных векторов подают на вход блоки распределительных элементов - 1, далее посредством нелинейного преобразования в блоках - 2, повторного нелинейного преобразования в блоках второго слоя НС - 3, с выхода снимают значения компонент выходного вектора - суть результата решения задачи распознавания.
Искусственная нейронная сеть, состоящая из блоков распределительных элементов (синапсов), связанных с блоками нелинейных преобразователей взвешенной суммы нейронов первого и второго слоев, отличающаяся тем, что нелинейные преобразователи выполнены из умножителя, проходящего через синапс сигнала на взвешенную сумму (вес) этого синапса, сумматора и нелинейного преобразователя согласно своей функции активации, дополнительно введены блок формирования невязки между входным значением нейронной сети и ее целевым значением, блок разбиения обучающего примера на входные и выходные векторы, блок управления нижней границей интервала обобщения, причем нелинейные преобразователи взвешенной суммы первого слоя соединены с нелинейными преобразователями второго слоя, выходы которых соединены с входами блоков формирования невязки между выходным значением нейронной сети и ее целевым значением, а первые выходы блока разбиения обучающего примера на входные и выходные векторы соединены с входами блоков распределительных элементов, вторые его выходы связаны с входами блока управления нижней границы интервала обобщения, а третьи выходы связаны с блоками формирования невязки между выходным значением нейронной сети и ее целевым значением.