_Успехи в химии и химической технологии. ТОМ XXIX. 2015. № 4_
УДК 004.8
Е. С. Морунов, С. П. Дударов*
Российский химико-технологический университет им. Д.И. Менделеева, Москва, Россия 125480, Москва, ул. Героев Панфиловцев, д. 20 * e-mail: [email protected]
ГЕТЕРОАССОЦИАТИВНАЯ ИСКУССТВЕННАЯ НЕЙРОННАЯ СЕТЬ: ЗАДАЧИ, ЭЛЕМЕНТЫ, СТРУКТУРА И АЛГОРИТМ ОБУЧЕНИЯ
Аннотация
Представлены архитектура гетероассоциативной нейронной сети. Рассмотрены её структурные элементы: нейроны-конъюнкторы и нейроны-дизъюнкторы. Описан итерационный алгоритм подбора весовых коэффициентов сети. В качестве критерия оптимизации используется суммарное расстояние Хэмминга по всем обучающим примерам. Приведены результаты обучения сети ассоциации входных зашумлённых и выходных эталонных образов на двух выборках обучающих данных разных размеров.
Ключевые слова: гетероассоциативная память, ассоциация образов, нейрон-конъюнктор, нейрон-дизъюнктор.
Принципы гетероассоциативной
(двунаправленной ассоциативной) памяти стали использоваться в нейроинформатике сравнительно недавно. В 1988 году американским профессором Бартом Коско была предложена разновидность рекуррентной нейронной сети, обучавшаяся и позволявшая входным бинарным образам ставить в соответствие выходные бинарные образы. Несмотря на бинарное представление входных и выходных векторов, они, в общем случае могут иметь разный размер, а составляющие их элементы - различный физический смысл. Нейронные сети Коско могут использоваться как для решения задачи непосредственного сопоставления (ассоциации) входных и выходных образов, так и для решения задачи классификации массива бинарных входных данных [1].
В настоящей работе предлагаются структура и алгоритм обучения гетероассоциативной
искусственной нейронной сети, альтернативной архитектуре сети Коско. В частности, её структура не содержит обратных связей, а алгоритм обучения относится к группе итерационно-стохастических, подразумевающих использование случайных направлений поиска оптимальных значений весовых коэффициентов и постепенное приближение к этим значениям от эпохи к эпохе обучения. Данная сеть оперирует бинарными переменными,
принадлежащими множеству {0, 1}, с использованием логических операций конъюнкции и дизъюнкции.
Основные элементы структуры предложенной нейронной сети - это нейроны-конъюнкторы и нейроны-дизъюнкторы.
Состояния нейронов рассчитываются следующим образом:
- для конъюнкторов - как логическое произведение N входных сигналов хч, дизъюнктивно взвешенных с помощью весовых коэффициентов синаптических связей wq:
N.
q=1
Wq + Xq
- для дизъюнкторов - как логическая сумма N входных сигналов хк, конъюнктивно взвешенных с помощью весовых коэффициентов синаптических связей Ук:
N,
скр
s
Z vkxk •
k=1
В качестве активационной функции для расчёта выходного значения во всех нейронах используется прямо пропорциональная зависимость: = 5.
Структура гетероассоциативной нейронной сети прямого распространения содержит два слоя нейронов (рис. 1). Скрытый слой заполняется нейронами-конъюнкторами, выходной слой -нейронами-дизъюнкторами. В теории количество таких сочетаний слоёв может насчитывать несколько пар, однако это потребует значительного усложнения нижеприведённого алгоритма обучения или использования принципиально другого подхода.
Обучающая выборка формируется из сочетаний входных и выходных эталонных образов. Ёмкость гетероассоциативной памяти является
определяющим фактором для выбора количества слоёв и скрытых нейронов.
s
Скрытый слой Выходной слой
нейронов-конъюнкторов нейронов-дизъюнкторов
Рис. 1. Структура двухслойной гетероассоциативной нейронной сети
Алгоритм обучения двухслойной
гетероассоциативной нейронной сети включает следующие шаги:
1. Задаётся структура гетероассоциативной нейронной сети: количество бинарных признаков входного образа Nх, количество бинарных переменных выходного образа Nвых, совпадающих с числом выходных нейронов-дизъюнкторов, количество нейронов-конъюнкторов скрытого слоя N0^. Устанавливается предельно заданное число эпох обучения N3.
2. Весовые коэффициенты скрытого и выходного слоя инициализируются случайными бинарными значениями.
3. Случайным образом формируется новый порядок предъявления Nпр обучающих примеров для текущей эпохи.
4. Для идущего по полученному в п. 3 порядку примера с номером г рассчитываются выходные значения нейронов скрытого и выходного слоёв.
5. Для каждого выходного нейрона-дизъюнктора с номером у проверяются комбинации условий:
а) если одновременно выполняются следующие 2 условия:
- рассчитанный выход нейрона-дизъюнктора равен единице (у] = 1);
- соответствующий ему выход обучающего примера равен нулю (у ] = 0),
то все нейроны скрытого слоя отмечаются для последующего изменения;
б) если одновременно выполняются следующие 4 условия:
- рассчитанный выход нейрона-дизъюнктора равен нулю (ур = 0);
- соответствующий ему выход обучающего примера равен единице (уп = 1);
- все выходы нейронов скрытого слоя равны
^скр
нулю (Е у к = о);
к=1
- ни один из Nскр нейронов скрытого слоя ранее не был отмечен для изменения,
то случайным образом выбирается один нейрон скрытого слоя и отмечается для последующего изменения.
6. Для каждого скрытого нейрона-конъюнктора с номером к при условии, что он отмечен для изменения, проверяется альтернатива:
- если ук = 0, то всем весовым
коэффициентам wqk, связывающим источники нулевых входных сигналов (xq = 0) со скрытыми нейронами, присваивается значение 1;
- если ур = 1, то случайно выбранному
весовому коэффициенту wqk, связывающему источник нулевого входного сигнала X = 0) с одним из скрытых нейронов, присваивается значение 0;
7. Пересчитываются выходные значения нейронов скрытого (ук) и выходного (уу) слоёв с
учётом изменений весовых коэффициентов, сделанных в п. 6.
8. Для каждого выходного нейрона-дизъюнктора с номером у проверяются комбинации условий:
а) если одновременно выполняются следующие 2 условия:
- рассчитанный выход нейрона-дизъюнктора равен единице (уУ = 1);
- соответствующий ему выход обучающего примера равен нулю (у) = 0);
то всем весовым коэффициентам ук]-. связывающим скрытые нейроны, имеющие единичные выходы (ук = 1), с рассматриваемым у-м
выходным нейроном, присваивается значение 0;
б) если одновременно выполняются следующие 2 условия:
- рассчитанный выход нейрона-дизъюнктора равен нулю (уу = 0);
- соответствующий ему выход обучающего примера равен единице (у^ = 1);
то случайно выбранному весовому коэффициенту vki, связывающему один из скрытых нейронов, имеющих единичный выход (ук = 1), с
X
1
X
2
рассматриваемым ]-м выходным нейроном, присваивается значение 1.
9. Снова пересчитываются выходные значения нейронов скрытого (у1 ) и выходного (у )) слоёв с
учётом изменений весовых коэффициентов, сделанных в п. 8.
10. Если i < то к рассмотрению принимается следующий пример обучающей выборки и алгоритм продолжает работу с п. 4.
11. Определяется текущая ошибка обучения как сумма расстояний Хэмминга Hi между рассчитанными выходными векторами и соответствующими им выходными векторами обучающих примеров:
N
пр
E =£ i =1
12. Если E > 0, то происходит переход к следующей эпохе обучения и алгоритм продолжает работу с п. 3, иначе обучение гетероассоциативной нейронной сети успешно завершено и алгоритм переходит к п. 13.
13. Вывод результатов обучения, окончание работы.
Проведено обучение гетероассоциативной нейронной сети ассоциации 4 входных и 4 выходных эталонных образов на двух выборках данных, включающих только зашумлённые входные образы, которые были получены в результате поочерёдной замены элементов входных векторов эталонных образов на противоположные значения. В первом случае входные образы были закодированы 16, а выходные - 9 бинарными переменными, размер выборки составлял 64 примера. Во втором случае выборка содержала 25 входных и 16 выходных образов, а её размер составил 100 примеров.
Полученные результаты показали, что в обоих случаях сеть полностью запоминала образы при 4 нейронах в скрытом слое, причём в первом случае для этого требовалось в среднем около 60 итераций алгоритма, а во втором - около 180 итераций.
Дальнейшая работа над рассмотренной нейросетевой архитектурой связана с исследованием ёмкости её памяти, обусловленности ёмкости размерностью входов и выходов, а также структурой сети. Кроме того, планируется изучение возможности правильно обобщать входную информацию
Морунов Егор Сергеевич, студент 5 курса факультета Информационных технологий и управления РХТУ им. Д. И. Менделеева, Россия, Москва.
Дударов Сергей Павлович, к.т.н., доцент кафедры Информационных компьютерных технологий, декан факультета Информационных технологий и управления РХТУ им. Д. И. Менделеева, Россия, Москва.
Литература
1. Дударов С. П. Теоретические основы и практическое применение искусственных нейронных сетей: учеб.пособие/ С. П. Дударов, П. Л. Папаев. - М.: РХТУ им. Д. И. Менделеева, 2014. - 104 с.
Morunov Egor Sergeevich, Dudarov Sergey Pavlovich*
D. Mendeleev University of Chemical Technology of Russia, Moscow, Russia * e-mail: [email protected]
HETERO-ASSOCIATIVE ARTIFICIAL NEURAL NETWORK: TASKS, ELEMENTS, STRUCTURE AND TRAINING ALGORITHM
Abstract
It is presented an architecture of hetero-associative neural network. It is looked its structural elements (conjunction neurons and disjunction neurons). It is described an iteration algorithm of network's weight coefficients selection. A sum of Hamming's distance of all training examples used as an optimization criterion. It is quoted training results of association of noisy input images and reference output images by two samples of different sizes.
Key words: hetero-associative memory, images association, conjunction neuron, disjunction neuron.