УДК 004.8:519.688
В. П. Фокин, С. П. Дударов*
Российский химико-технологический университет им. Д.И. Менделеева, Москва, Россия 125480, Москва, ул. Героев Панфиловцев, д. 20 * e-mail: [email protected]
СТРУКТУРА, ГЕНЕТИЧЕСКИЙ АЛГОРИТМ ОБУЧЕНИЯ И ИЗУЧЕНИЕ ВЫЧИСЛИТЕЛЬНОЙ СПОСОБНОСТИ НЕЙРОНОПОДОБНОГО КМ-ЭЛЕМЕНТА
Аннотация
Приведена структура нейроноподобного КМ-элемента. Описан принцип его работы. Предложен генетический алгоритм обучения данного элемента, включающий операторы кроссовера и многопозиционной мутации. Рассмотрены примеры и результаты обучения КМ-элементов с различной разрядностью пары входных переменных и различным размером обучающей выборки. Приведены средние оценки скорости обучения для каждого случая.
Ключевые слова: КМ-элемент, нейрон, кроссовер, мутация, генетический алгоритм, обучение нейронной сети.
Стремительное развитие нейроинформатики сопровождается появлением новых архитектур искусственных нейронных сетей, алгоритмов их обучения и расширением круга решаемых задач. Данная работа посвящена изучению составляющего элемента некоторых из таких архитектур -нейроноподобного КМ-элемента.
КМ-нейрон имеет строго два входных бинарных вектора одинакового размера (рис. 1). Допустимые значения элементов вектора: 0 - «Ложь» или 1 -«Истина». Результатом его работы является единственный выходной вектор того же размера, что
Аббревиатура, положенная в основу названия данного элемента, образована первыми буквами терминов, заимствованных из теории генетических алгоритмов: К - кроссовер, М - мутация. Для преобразования входных векторов в выходной вектор используются аналоги синаптических
коэффициентов нейронных сетей, представленные в виде бинарных векторов К- и М-весов. Эти вектора
имеют такие же размеры, как входные и выходные вектора в структуре КМ-нейрона.
Первоначально к входным переменным применяется аналог генетического оператора многопозиционного кроссовера [1] с использованием значений элементов вектора К-весов. В результате формируется промежуточное значение вектора в виде последовательности соответствующих элементов первого или второго входного векторов. Каких именно входных векторов, определяется значением элемента в соответствующей позиции К-вектора: 0 -берётся соответствующий элемент из первого входного вектора, 1 - из второго.
Далее к отдельным элементам промежуточного вектора применяется аналог генетического оператора многопозиционной мутации [1]. В позициях, где М-вес равен 1, происходит замена элементов на противоположные значения.
На рисунке 2 представлен пример получения выходного вектора нейроноподобного КМ-элемента из двух входных векторов с использованием значений элементов К- и М-векторов.
Задача обучения одного КМ-элемента сводится к такому подбору К- и М-весов, при котором все выходные вектора рассчитываются безошибочно для соответствующих им входных векторов обучающих примеров.
Пусть N - количество обучающих примеров (иначе называется объёмом обучающей выборки), п -размер, разрядность (количество бинарных элементов) входных и выходных векторов КМ-элемента.
Мутация по М-вектору:
•1 1 0 1 1 Кроссовер по К-вектору:
1 0 0 0 0 0 1 0
•*2 0 1 1 0 Промежу точный вектор: Выходной вектор:
Входные вектора 0 0 1 1 0 0 0 1
Рис. 2. Пример преобразования входных векторов к выходному вектору
Оценка правильности обучения КМ-элемента выполняется на основе двух критериев. Первый - Ен - сумма по всем примерам расстояний Хэмминга (Н) между выходными векторами, рассчитанными с помощью КМ-элемента, и выходными векторами обучающих примеров при одних и тех же входных векторах:
N
Е
н
I н
I=1
N п
IX
I=1 ]=1
Уу У,
у
(1)
различных особей. Для рассчитываются значения
соотношению (1), которое считается приспособленностью особи. Если для какой-либо особи популяции Ен = 0, то она признаётся лучшей и алгоритм переходит к выполнению п. 8.
3. Из всех особей текущей популяции выбираются две родительские, над которыми выполняется генетический оператор простого кроссовера [1]. Из двух получившихся дочерних особей выбирается одна, с лучшей приспособленностью как результат применения оператора кроссовера.
4. С заданной вероятностью Рм к получившейся в п. 3 дочерней особи применяется один из вариантов оператора мутации (одно-, двух- или трёхпозиционной), выбираемый с учётом вероятностей Р1, Р2, Рз.
5. Получившийся в п. 4 потомок сравнивается с остальными особями популяции, чтобы исключить возможность дублирования. Если дубликат обнаружен, потомок заменяется на полностью случайно сгенерированную особь, которая далее будет включена в популяцию.
6. Из текущей популяции исключается одна случайно выбранная особь из тех, которые имеют наихудшую приспособленность. Её место занимает потомок или новая особь, полученная в п. 4 или п. 5. Для новой особи рассчитывается значение приспособленности. Определяется приспособленность лучшей особи популяции.
7. Если приспособленность лучшей особи положительна и лимит эпох обучения не исчерпан, алгоритм переходит к новой эпохе с п. 3.
8. Вывод весовых векторов и значений ошибок Ен, Ер лучшей особи популяции.
Рассмотрим примеры обучения нейроноподобных КМ-элементов, использующих разрядности переменных в 5, 6 или 7 битов. С этой целью для каждого случая получим обучающие выборки данных, насчитывающие соответственно 1024, 4096 и 16384 примера, автоматически сгенерированных для некоторого КМ-элемента с известными весовыми коэффициентами. Это означает, что для каждой из выборок гарантированно существует такой КМ-элемент, который для всех их входных векторов вычисляет верный выход и, следовательно, минимальная ошибка обучения в этих случаях упадёт до нуля.
На рисунке 3 приведён пример изменения приспособленности лучшей особи (целевой функции) в процессе обучения КМ-элемента с разрядностью входных переменных 7 битов. В среднем за 10 попыток обучение сети с такой разрядностью переменных происходило за 221 эпоху. Для сравнения, сеть с 6-битовой разрядностью переменных обучалась в среднем за 135 эпох, а сеть в 5-битовой разрядностью переменных - за 116 эпох.
Второй критерий - Ер - ошибка распознавания -количество обучающих примеров, для которых выходные вектора самого примера и рассчитанный КМ-элементом различаются хотя бы одним битом, то есть Н > 0.
Непосредственно при обучении изменение весовых коэффициентов следует осуществлять, ориентируясь на первый критерий. Второй служит для итоговой оценки качества обученного КМ-элемента на основе обучающей или тестовой выборок.
Для КМ-элементов с размером векторов п оптимизируются 2п бинарных элементов К- и М-весов. Тогда общее количество возможных решений составляет 22п Таким образом, при использовании векторов небольшого размера целесообразно просто перебрать все возможные варианты решения и найти среди них оптимальный (с минимальным значением ошибки). При достаточно больших размерах векторов нужно использовать специальные алгоритмы оптимизации. Поскольку все переменные и параметры в КМ-элементах представлены бинарными векторами, наилучшим образом для решения данной задачи подойдут бинарные генетические алгоритмы [1].
Воспользуемся для обучения КМ-элемента одной из разновидностей такого алгоритма со следующими характерными особенностями:
- без использования кодирования Грея;
- с использованием операторов многопозиционной мутации и кроссовера;
- размер популяции - 20 особей;
- с использованием смешанной стратегии элитизма и разнообразия популяции.
1. Задаются разрядность векторов переменных и весов п, предельно заданное количество эпох обучения N3, количество особей популяции N0, вероятность применения мутации Рм, вероятности одно- Р1, двух-Р2 и трёхпозиционной Р3 мутаций, удовлетворяющие условию: Р1 + Р2 + Р3 =1.
2. Инициализируется популяция решений из N0
каждой ошибки
из
Ен
них по
16000 14000 12000 10000 8000 6000 4000 2000 0
15872
15360 14336
< 12288 Ь
8192 у
50
100 150
Эпоха обучения
200
250
Рис. 3. Пример изменения приспособленности лучшей особи популяции по эпохам обучения
В дальнейшем планируется продолжить работу по исследованию возможностей КМ-элементов и нейронных сетей, построенных на их основе, для воспроизведения различных функциональных зависимостей, решения задач классификации данных, распознавания образов и других.
Таким образом, на практике была подтверждена возможность обучения отдельно взятого нейроноподобного КМ-элемента правильному воспроизведению полной выборки данных и высокая эффективность использования для цели обучения бинарного генетического алгоритма.
Фокин Василий Павлович, студент 3 курса факультета Информационных технологий и управления РХТУ им. Д. И. Менделеева, Россия, Москва.
Дударов Сергей Павлович, к.т.н., доцент кафедры Информационных компьютерных технологий, декан факультета Информационных технологий и управления РХТУ им. Д. И. Менделеева, Россия, Москва.
Литература
1. Дударов С. П. Математические основы генетических алгоритмов: учеб.пособие/ С. П. Дударов. - М.: РХТУ им. Д. И. Менделеева, 2012. - 56 с.
Fokin Vasiliy Pavlovich, Dudarov Sergey Pavlovich*
D. Mendeleev University of Chemical Technology of Russia, Moscow, Russia * e-mail: [email protected]
STRUCTURE, GENRTIC ALGORITHM OF TRAINING AND STUDY OF CALCULATION ABILITY OF A NEURON-LIKE CM-ELEMENT
Abstract
It is quoted a structure of neuron-like CM-element. It is described its concept of work. It is suggested a genetic algorithm of training this element including crossover and multiposition mutation operators. It is shown examples and results of training CM-elements with different digit capacity of input variables pair and different size of training sample. It is quoted mean evaluations of training speed for each case.
Key words: CM-element, neuron, crossover, mutation, genetic algorithm, neural network training.
0