РЕШАЮЩИЙ АЛГОРИТМ КОНКУРЕНЦИИ
В. С. Антюфеев
Институт вычислительной математики и математической геофизики СО РАН,
630090, Новосибирск, Россия
УДК 519.6
Предложен алгоритм решения задач, которые обычно решаются с помощью искусственных нейронных сетей (ИНС). Принципы работы нового алгоритма существенно отличаются от принципов работы ИНС (не используются понятия искусственного нейрона, нейронной сети). Обучающие сигналы реализуются методом Монте-Карло. Работа алгоритма может быть исследована математическими методами. Рассмотрен численный пример использования нового алгоритма.
Ключевые слова: искусственная нейронная сеть, нечеткий алгоритм, метод Монте-Карло.
The paper describes a fuzzy decizion algorithm designed for solving problems that are usually solved with a help of artificial neural networks (ANN). But it uses quite different principles of its operating. It does not use concepts of artificial neuron, network. The learning signal are brought about by the Monte Carlo method. Mathematical methods can be applied to its investigation.
A numerucal example of its application is considered.
Key words: artificial neural network, fuzzy algorithm, Monte Carlo method.
Введение. Теория распознавания образов — раздел кибернетики, развивающий теорию и методы классификации и идентификации предметов, процессов, сигналов, которые характеризуются конечным набором числовых параметров (свойств, признаков). По этим параметрам определяется (распознается) класс, к которому относится объект. Иными словами, распознавание образов — это решение задачи соотнесения объекта с заданными характеристиками с определенным классом объектов.
Необходимость в таком распознавании возникает в различных областях начиная с военной промышленности и систем безопасности и кончая оцифровкой всевозможных аналоговых сигналов [1-3].
Задачи распознавания решаются с помощью искусственных нейронных сетей (ИНС), представляющих собой сложный логический алгоритм, который соотносится (возможно, необоснованно) с работой мозга [2, 3].
Основной элемент ИНС — искусственный нейрон. Для наглядности алгоритм изображается на специальной диаграмме (блок-схеме), напоминающей сеть. Поэтому алгоритм называется искусственной нейронной сетью. Основным свойством ИНС является способность к адаптации или обучению. Действия ИНС основаны на параллельных вычислениях [4].
ИНС имеют различные возможности: существует сеть, превращающая текст в фонетическое представление, которое затем с помощью уже иных методов превращается в речь [5]; создана сеть, способная распознавать рукописные буквы [6]; сконструирована система сжатия изображений, основанная на нейронной сети [7].
ИНС созданы в 50-60-х гг. XX в. и активно используются для решения разнообразных задач, например для предсказания погоды, анализа электрокардиограмм. Действительно, сравнительно простые задачи могут быть решены с помощью простейших однослойных сетей — персептронов [2]. Сформулирована и доказана теорема об обучении персептронов, т. е.
о способности таких сетей решать задачи определенного вида [8].
Однако вскоре было обнаружено, что “сети не могли решать задачи, внешне весьма сходные с теми, которые они успешно решали” [2]. Исследования, проведенные в работе [9], показали, что используемые в то время персептроны неспособны решить многие простые задачи. Это обусловило снижение интереса к исследованиям ИНС.
Исследования ИНС возобновились после того, как были разработаны так называемые многослойные ИНС [2] и методы их обучения, которые позволили решать задачи, не разрешимые для персептронов. В настоящее время все ИНС для решения практических задач являются многослойными.
Следует отметить, что несмотря на огромное количество исследований в данной области, до сих пор имеются нерешенные теоретические и практические вопросы, связанные с ИНС. Например, не гарантировано обучение сети за конечное время. В то же время внутреннее представление информации, полученной в результате обучения, зачастую невозможно проанализировать, чтобы исправить ошибку обучения. Необходима мощная теорема сходимости (теорема обучения) для многослойных машин [2].
В настоящей работе предложен новый решающий алгоритм — алгоритм конкуренции. Эвристическая основа данного алгоритма не имеет отношения к предполагаемым свойствам биологических нейронов. Этот алгоритм основан на соображениях конкурентной борьбы между обучающими сигналами за влияние на остальные точки пространства сигналов, что отражено в названии алгоритма.
Предлагаемый алгоритм позволяет решать задачи, близкие к задачам, решаемым с помощью ИНС. Однако обучение и работа этого алгоритма основаны на других принципах, позволивших существенно упростить алгоритм, сделать его работу понятной. В частности, оказалось возможным применить при исследовании нового решающего алгоритма методы математического анализа, теории вероятностей и доказать соответствующую теорему обучения (ее доказательство не вошло в настоящую работу), которую не удалось доказать для многослойных ИНС.
1. Краткое описание алгоритма работы ИНС. Подробное описание ИНС приведено в различных учебниках. Ниже кратко перечислены принципы работы ИНС.
1. Сначала ИНС функционирует в режиме обучения, перевычисляя (настраивая)
веса (параметры сети). Начальные значения весов заданы заранее.
На вход ИНС подается последовательность обучающих сигналов — числовые кортежи г =
... ,гп), координаты которых описывают свойства исследуемого объекта (например, результаты обследования пациента — давление крови, температура тела и другие параметры). Для каждого обучающего сигнала заранее известен правильный ответ на поставленный вопрос, который будем называть основным вопросом. Верный ответ ИНС получает от “учителя”. Можно считать, что “учителем”, дающим правильные ответы, является специальный алгоритм.
2. Когда обучение закончено, ИНС продолжает функционировать в рабочем режиме. На вход поступают рабочие сигналы с неизвестными ответами, для которых ИНС должна получить ответы на основании совокупной информации, полученной от “учителя” в режиме обучения и сохраняемой весами сети.
3. Используя данную информацию, т. е. веса, ИНС обрабатывает сигналы г = (х\,... , гп). Все слои сети [2] начиная с первого последовательно выполняют пару преобразований над вектором г:
1) г =^ т ■ г (ш — матрица весов);
2) ги =^ F(ги), где Г : Я ^ Я — так называемая активационная функция [2]; и получают выходной сигнал.
4. ИНС относит выходной кортеж к определенной группе по определенному правилу. На основании этого обследуемый пациент может быть отнесен к группе больных или, наоборот, к группе здоровых. Последний вывод и является целью работы ИНС с входным сигналом г.
На выходе сети получается одно окончательное число. Если это число не превышает 1/2, то считается, что ИНС выдала 0, и исследуемый объект относится к одной группе, в противном случае — ко второй.
Данная схема работы ИНС является упрощенной, но в ней отмечены все принципиальные моменты. Сложная логика ИНС не позволяет понять до конца ее работу. Возможно, представление об ИНС как о логическом алгоритме, копирующем работу головного мозга, препятствует получению доказательства теоремы обучаемости.
Рассмотрим математическую интерпретацию работы ИНС, объясняющую смысл ее обучения и работы и позволяющую построить новый решающий алгоритм, основанный на другом принципе.
2. Геометрическое описание ИНС. Ниже изложена математическая интерпретация работы ИНС, позволившая создать новый решающий алгоритм.
Пусть ИНС прошла обучение с помощью к обучающих сигналов, и на вход ИНС поступил сигнал г = (х\,... , гп). Используя веса , ИНС дает на выходе ответ 0 или 1. Рассмотрим процедуру получения ответа с геометрической точки зрения.
Согласно определению ИНС проверяет, удовлетворяют ли компоненты х следующей системе неравенств:
{неравенство 1} & {неравенство 2} & {неравенство 3} V {неравенство 4} .... (1)
Эта система составлена из элементарных линейных неравенств вида
< 1
3
или
1
3
разделенных логическими знаками “и” и “или”. Порядок чередования логических знаков “&”, “ V” в системе (1) определяет сложная топология графа нейронной сети.
На геометрическом языке каждое из приведенных элементарных неравенств задает полупространство в Кп, ограниченное соответствующей гиперплоскостью, а система неравенств (1) определяет некоторое множество Би (напомним, что к — число обучающих сигналов). Очевидно, Б и — многогранник или объединение нескольких разрозненных многогранников, возможно, невыпуклых. Отметим, что однослойная нейронная сеть позволяет образовывать лишь пересечения полупространств и как следствие лишь выпуклые односвязные множества. Поэтому однослойные сети не позволяли решать многие задачи. Лишь многослойные сети позволили конструировать сложные множества для решения сложных задач.
Рис. 1. Приближение искомого множества X многогранником Б и
Очевидно, сигнал х удовлетворяет системе неравенств (1) тогда и только тогда, когда точка х попадает в множество Би. Таким образом, геометрическое событие {точка х принадлежит Б и} эквивалентно логическому событию {числа г = 1,...,п удовлетворяют системе неравенств (1)}.
Обозначим через X множество тех точек-сигналов, которым соответствует положительный ответ (т. е. 1) на основной вопрос. Если множество X известно, то задачу для ИНС можно считать решенной. Поэтому множество X С Кп будем называть решающим множеством.
Заметим, что ИНС может допускать ошибки после к-го шага обучения, т. е. для некоторых сигналов ответ ИНС может быть неверным. Причиной ошибочных ответов является то, что множество Б и, заданное с помощью весов , не совпадает с решающим множеством X (рис. 1). Соответственно множество Б и можно назвать приближенным решающим множеством.
Теперь функционирование ИНС в обучающем режиме можно описать геометрически. На каждом шаге ИНС пересчитывает набор весов и находит соответствующее этому набору приближенное решающее множество Б и (к — номер шага обучения). Таким образом, в процессе обучения ИНС формирует последовательность Б1}Б2,... приближенных решающих множеств.
На языке теории множеств обучаемость алгоритма ИНС означает, что последовательность Б1}Б2,... в определенном смысле сходится к идеальному решающему множеству X (смысл этой сходимости уточняется ниже).
Итак, с геометрической точки зрения процесс обучения ИНС сводится к приближению идеального решающего множества X многогранниками Б и, каждый из которых является композицией (объединениями, пересечениями и дополнениями) полупространств.
Если множество X не является многогранником или объединением многогранников, то никакое приближенное решающее множество Б и, ограниченное гиперплоскостями, заведомо не может быть идеальным. Это значит, что конечное число обучающих шагов не позволяет получить точное решение задачи, т. е. до конца обучить систему.
Простейшие ИНС (персептроны) умеют формировать лишь связные выпуклые множества. Многослойные сети были разработаны именно для того, чтобы алгоритм ИНС мог формировать невыпуклые, несвязные множества. Однако это привело к существенному усложнению алгоритма ИНС.
Заметим, что невыпуклость и несвязность идеального решающего множества не влияют на качество работы нового решающего алгоритма, не являются препятствием для решения задач.
3. Описание ИНС в терминах теории функций. Опишем работу ИНС на языке теории функций.
После обработки каждой точки-сигнала алгоритм ИНС ставит ей в соответствие 0 или 1. Поэтому искусственную нейронную сеть в рабочем режиме можно отождествить с функцией ИНС : Кп ^ {0; 1}. Эту функцию задают логический алгоритм вычислений и набор
параметров т — веса сети. Поэтому ИНС(х) = ИНС^(х). Геометрический смысл параметров т определен в п. 2: веса т задают направления нормалей граничных гиперплоскостей.
Аналогично можно определить нечеткую нейронную сеть [10, 11]. В этом случае областью значений функции f является весь промежуток [0, 1], а не два числа 0 и 1:
ИНС : Еп ^ [0, 1].
Каждому множеству Б С Кп взаимнооднозначно соответствует его характеристическая функция хя (х), х € Еп:
/ ч Г 1, х € Б, хя(х) = \ о, Х € Б.
При описании геометрической интерпретации ИНС определены решающие множества X, Б и — идеальное и приближенные. Теперь определим (идеальную) решающую функцию f (х) = Хх (х) и приближенные решающие функции fk (х) = хяк (х). Очевидно, верный ответ на сигнал х в терминах 0-1 равен Хх (х). С точки зрения теории функций процесс обу-
чения ИНС представляет собой процесс приближения идеальной решающей функции f (х) приближенными решающими функциями fk (х).
В конце п. 2 речь шла о сходимости последовательности множеств Б1} Б2,... к идеальному решающему множеству X:
Иш Би = X. (2)
Дадим строгое определение этой сходимости. Выполнение предельного соотношения (2) означает, что почти всюду (за исключением границы множества X) имеет место поточечный предел последовательности характеристических функций соответствующих множеств:
,Иш Хяк = Хх. (3)
В процессе работы нейронная сеть формирует множества Би, которые постепенно приближаются (в указанном выше смысле) к идеальному множеству X. Поэтому принцип работы стандартной нейронной сети можно рассматривать и с точки зрения теории функций: сначала ИНС формирует приближенные решающие множества в виде композиции полупространств, а затем в соответствии с этими множествами образует решающие функции в виде характеристических функций соответствующих решающих множеств.
4. Решающий алгоритм конкуренции. Определим новый решающий алгоритм.
Алгоритм ИНС разработан на основе представлений о функции биологического нейрона. В определении нового алгоритма не используется понятие нейронной сети, его работа основана на других естественных представлениях, описанных в данном пункте. Следствием этих представлений является новое понятие — функция влияния. Из этой функции нетрудно получить аналитическое представление для приближенных решающих функций нового
алгоритма, которые существенно отличаются от приближенных решающих функций для ИНС.
В новом алгоритме обучающие точки-сигналы являются случайными. Будем считать, что эти точки распределены равномерно на некотором ограниченном измеримом множестве Z : X С Z С Кп. Как и выше, X — искомое множество, характеристическая функция Хх(х) которого является идеальной решающей функцией алгоритма.
Моделируя случайные сигналы, получим случайные решающие функции fk(х) (к — количество обучающих сигналов). Найдем также формулы для приближенных решающих функций fk (х) нового алгоритма.
Приближенные решающие функции должны удовлетворять некоторым естественным требованиям. Перечислим эти требования, а затем сконструируем функции, удовлетворяющие им.
4.1. Условия для приближенных решающих функций. Рассмотрим естественные требования к приближенным решающим функциям. Соответствующие условия на решающие функции, следующие из этих требований, перечислим в конце подп. 4.1.
1. Предлагаемый алгоритм является нечетким, его действие в рабочем режиме можно отождествить с отображением f : Кп ^ [0; 1]. Отметим, что область значений этой
функции — отрезок [0; 1], а не пара чисел {0; 1}. Соответственно ответ алгоритма для
произвольного сигнала х, т. е. число f (х), — это эмпирическая вероятность события х € X после всего курса обучения алгоритма. Аналогично для каждой приближенной решающей функции fk число fk (х) — эмпирическая вероятность события х € X после к-го шага обучения, т. е. число из промежутка [0; 1]. Следовательно, областью значений функции fk
является промежуток [0; 1].
2. Пусть предлагаемый алгоритм находится в режиме обучения и х1 = (х{,...хп) — первый обучающий сигнал, поступивший на вход алгоритма. Пусть также точка х1 попадает в искомое множество X. Тогда решающая функция f1 должна принять в точке х1 значение 1: ^(х1) = 1. Если теперь некоторый сигнал х попадает в малую окрестность точки х1, то вероятность события х € X также должна быть близка к 1. Аналогичные правила с соответствующими исправлениями должны выполняться и в случае х1 € X .В результате получаем требование непрерывности fk.
3. Каждая функция fk должна быть построена с учетом всех предыдущих обучающих
10 и и
сигналов х 1 ,х2 ,... ,хи, а не только последнего сигнала хи, поэтому при поступлении последующих обучающих сигналов ее значения в точках х1 ,х2 ,... ,хи должны оставаться равными 1 или 0.
4. Одни и те же обучающие сигналы х1,х2,. .. ,хм могут поступить на вход в различном порядке. Очевидно, результат этого обучения — функция — не должен зависеть от порядка поступления сигналов.
Кратко сформулируем требования 1-4 в виде условий на функции fk:
1) 0 < fk (х) < 1;
2) функции fk должны быть непрерывными;
3) Л(х0 = { о Х^^. 1 = 1,...,к;
4) функция л и не зависит от порядка поступления обучающих сигналов.
Построение функций простого вида, удовлетворяющих перечисленным условиям, является основной целью настоящей работы. Такие функции не удалось сконструировать непосредственно, без промежуточных шагов, понятий.
С эвристической точки зрения выполнение перечисленных условий обеспечивает для функций Ли выполнение предельного соотношения, аналогичного (3). Однако строгое доказательство соответствующей теоремы требует проведения дополнительного исследования.
При решении данной задачи было введено новое понятие — функция влияния (см. подп. 4.2). Это позволило найти сравнительно простой способ построения приближенных решающих функций, не усложняя алгоритм.
Заметим также, что построение решающих функций для нейронных сетей — очень сложная и громоздкая процедура, которую выполняет логический алгоритм ИНС.
4.2. Функция влияния. В предлагаемом алгоритме обучающие точки-сигналы являются случайными и распределены равномерно на некотором ограниченном множестве Z : X С Z С Кп. Множество Z — это пространство, в котором лежат все возможные сигналы. Разобьем множество Z на положительное подмножество X и отрицательное подмножество У:
X и У = Z, X П У = 0.
Пусть х 1 = (х^ ,... , х1п) — первый обучающий сигнал, поступивший на вход алгоритма. Как подсказал “учитель”, точка х1 попала в множество X.
Очевидно, что х1 € X, т. е. можно считать, что это утверждение имеет “бесконечное значение”. Если точка х лежит в малой окрестности х1 , то она, по-видимому, также попадает в множество X. Наша уверенность в этом велика, хотя и не бесконечна. По мере удаления точки х от х 1 эта уверенность монотонно убывает до нуля, так как в удаленных точках система “забывает” то, что случилось в точке х1.
Аналогично, если точка х1 попадает в отрицательное множество У, мы присваиваем нашей уверенности значение —то. В малой окрестности х1 уверенность вновь имеет отрицательный знак, велика по абсолютной величине и стремится к нулю по мере удаления точки Х от х1.
Можно считать, что каждый обучающий сигнал создает вокруг себя положительное или отрицательное скалярное поле влияния. Представляет интерес суперпозиция этих элементарных полей.
Зададим аналитическое выражение для интенсивности скалярного поля влияния сигнала. Сначала определим вспомогательную функцию е(х) — индикатор или знак сигнала х:
/ \ _ / +1, х € X,
£(Х) = \ —1,x/X.
Интенсивность поля влияния определим с помощью функции Н(х):
и/ \ I 1—I—, Х = 0,
Н(х ) = < \х—
у +то, х = 0.
Здесь т > п — произвольное число; п — размерность пространства сигналов.
Пусть на вход алгоритма поступает очередной обучающий сигнал хи (к — номер шага обучения). Число
р( хи)
фи Жх — хи ) = ^и—, Х = х и (4)
можно назвать эвристическим значением уверенности в том, что знак точки х совпадает со знаком обучающего сигнала хи (напомним, что знак сигнала хи сообщил “учитель”). Действительно, в малой окрестности хи значения функции (4) велики, что соответствует большой
уверенности в знаке сигналов х из этой окрестности. При удалении точки х от хи значения функции (4) убывают по абсолютной величине до нуля, что соответствует убыванию уверенности в знаке сигнала х.
Выражение (4) подобно формуле закона Кулона для случая взаимодействия точечных зарядов. Отличие состоит в том, что в (4) поле влияния — скалярное, а электрическое поле — векторное. Кроме того, показатель степени т в знаменателе формулы может превышать (и обычно превышает) 2.
В предлагаемом решающем алгоритме, как в электростатике, каждый обучающий сигнал создает вокруг себя поле влияния на окружающие “пробные точки”. Назовем функцию е(хи)Н(х — хи) с аргументом х и параметром хи элементарной функцией влияния сигнала хи. Эта функция определяет поле влияния отдельного сигнала хи, учитывая знак сигнала и точку его расположения. Далее для краткости будем использовать обозначение
Ни (х) = фи )Н(х — хи).
Итак, каждый обучающий сигнал создает вокруг себя скалярное поле положительного или отрицательного влияния на все остальные точки. Элементарная функция влияния определяет величину интенсивности этого поля.
Совокупность {х1,х2,... , хм} нескольких обучающих сигналов также “индуцирует” поле влияния. Это поле является суперпозицией элементарных полей отдельных сигналов хи, к = 1, 2,...,М. Будет естественным определить величину интенсивности этого поля в точке х суммой Н1(х) + ... + (х) значений элементарных функций влияния обучающих
сигналов хи, к = 1, 2,...,М. Иными словами, суперпозицию полей влияния, как и суперпозицию физических полей, будем вычислять обычным сложением.
Итак, определено простое правило пересчета поля влияния на каждом шаге обучения. Напомним, что отыскание простого правила композиции решающих функций с выполнением перечисленных в подп. 4.1 требований оказалось трудной задачей.
Все обучающие сигналы — конечное множество точек — своими полями оказывают влияние на знаки остальных точек-сигналов. При этом в борьбе за влияние на произвольный сигнал х = х1 ,х2,... конкурируют две группы обучающих сигналов — положительные и отрицательные, которые пытаются присвоить ему положительный или отрицательный знак. Поэтому описываемый решающий алгоритм можно назвать алгоритмом конкуренции. В основе этого алгоритма лежит идея конкуренции решений, так же как в основе алгоритма ИНС лежит идея искусственного нейрона. Что касается обучающих точек х1 , х2 ,... , то для них ответы на основной вопрос, принадлежит ли рассматриваемая точка множеству X, заведомо известны. Поэтому обучающие точки не подвержены влиянию и не изменяют свой цвет.
На рис. 2 приведена диаграмма для четырех отрицательных и трех положительных обучающих сигналов, иллюстрирующая эффект влияния обучающих сигналов на остальные точки. Четко видны зоны влияния каждого сигнала. По мере того как цвет точек пространства непрерывно изменяется от черного к белому, значения функции влияния возрастают от —то до +то. Удаленным от обучающих сигналов точкам, в которых значения функций влияния близки к 0, соответствует нейтральный серый цвет.
Процесс обучения можно описать следующим образом. До начала обучения всем точкам пространства соответствует нейтральный серый цвет. Это значит, что сначала какая-либо информация отсутствует и с вероятностью 1/2 каждую точку можно отнести в искомое множество X или в его дополнение. Когда начинается обучение, каждый обучающий сигнал
Рис. 2. Диаграмма функции влияния: черный цвет — отрицательные обучающие сигналы; белый — положительные обучающие сигналы
окрашивает окружающее его пространство в черный или белый цвет, причем интенсивность окраски окружающих точек зависит от расстояний между ними и обучающими сигналами.
Формулу (4) для функции влияния — зависимости интенсивности окраски от расстояния до обучающего сигнала — можно задавать различными способами.
В конце достаточно длительного процесса обучения почти вся искомая область X будет окрашена белым цветом, а почти вся область У (дополнение к X) — черным цветом. Лишь точки, находящиеся вблизи границы Г^) искомой области, будут закрашены неопределенным цветом.
Следует отметить, что граница Г^) имеет меру 0, и соответственно область неопределенности имеет пренебрежимо малую меру, если искомая область не устроена экзотически, как, например, ковер Серпинского.
Итак, определена функция влияния, выяснен ее смысл. Осталось найти выражения для приближенных решающих функций, удовлетворяющие условиям, приведенным в подп. 4.1. Теперь решение этой задачи вызывает незначительные технические трудности.
4.3. Построение приближенных решающих функций. Введем несколько вспомогательных функций, затем рассмотрим определение решающих функций Ли, которое соответствует описанной функции влияния и удовлетворяет перечисленным выше требованиям.
1. Е(£) : (—то, +то) ^ (0, 1) — функция одной переменной с характерным ^-образным графиком (рис. 3), которую можно задать, например, формулой
Очевидно, что
Иш Е(£) = 0, Иш Е(£) = 1.
Г
X
Рис. 4. График решающей функции (п = 1)
С помощью этой функции функцию Я1 -— Я1 с неограниченной областью значений можно преобразовать в функцию с требуемой областью значений [0, 1].
2. Функция влияния множества {г1, г2,..., гм} имеет вид
N
Нм (г) = ^2 Ни (г). к=1
3. Определим решающие функции /к. Пусть /о(г) = 1/2, а при N > 0
/м (г) = Г (Нм (г)), г = гк,
/м(гк) = Иш Г(Нм(г))
1, гк Е X, 0, гк / X.
Функция Нм не определена в точках г = гк, к = 1,...^, поэтому была доопределена функция /м в этих точках.
На рис. 4, 5 приведены графики решающих функций при п = 1 и п =2. По оси г отложены значения решающей функции, на горизонтальных осях — параметры, характеризующие исследуемый объект.
Осталось доказать, что для построенных решающих функций имеют место свойства, указанные в подп. 4.1.
Утверждение. Решающие функции /к удовлетворяют условиям 1-4 (п. 4).
Доказательство. Перечислим данные условия.
1. 0 < /к (г) < 1. Согласно определению
/м(г)
Г (Нм (г)), г = гк
0 или 1 ,
г = гк
Следовательно, значения функции /м(г) лежат в области (0,1) значений функции Г либо равны 0 или 1.
2. Приближенные решающие функции Д непрерывны. Очевидно, функция Нм(г) непрерывна в своей области определения г = г 1,г2,... ,гм. Поэтому (г) непрерывна при г =
г1 гм как суперпозиция непрерывных (в области определения) функций ^ и Н. Со-
гласно определению в особых точках гк
Пп1 Дм (г) = Ип1 ^ (Нм (г)) = Дм (гк).
3ли = {0, ^\хх, * = !,■■■.*■
Значения функции Д в особых точках г = гг, г = 1,..., к определены отдельно, и это определение совпадает с условием з.
4. Функция Дк не зависит от порядка поступления обучающих сигналов. Значения функ-
к
ции Нк(г) = ^2 Ы(г) не зависят от порядка слагаемых, а следовательно, и от порядка поступ-
г=1
ления обучающих сигналов хг, но полностью определяют значения Д(г) (см. определение функции Дк).
Итак, построенные приближенные решающие функции удовлетворяют условиям, перечисленным в подп. 4.1. В подп. 4.4 представлен алгоритм конкуренции, основанный на использовании этих функций.
Сделаем замечание относительно термина “решающая функция”. В математической статистике [12] решающую функцию выбирает исследователь (статистик). Аргументами этой функции являются выборочные точки некоторого пространства, а ее значением (т. е. результатом решения задачи) — вектор, близкий к искомому вектору-параметру. В рассматриваемой задаче также моделируются случайные точки-сигналы (т. е. выполняется N шагов обучения решающего алгоритма), в результате чего получается функция Дм. Таким образом, в данном случае решающий алгоритм выполняет такую же роль, как и решающая функция в
математической статистике. Аргументы алгоритма — выборочные точки-сигналы г1,гм, но результатом является не вектор-параметр, а функция Дм, близкая к искомой характеристической функции хх.
4.4. Функционирование алгоритма конкуренции. Напомним формальную постановку задачи: имеется неизвестное множество X С К™, требуется найти его характеристическую функцию.
Запишем последовательность действий при решении задачи, т. е. решающий алгоритм конкуренции.
1. Задаем функцию влияния Н0(г) = 0, г Е Z.
2. Равномерно в Z (X С Z С К™) моделируем последовательность обучающих сигналов
г1, г2,... .
3. При поступлении очередного сигнала гк изменяем функцию влияния: Нк-1 (г) ^ Нк(г) = Нк-1(г) + Нк(г). До появления сигнала гк точка г уже имела некоторый знак, совпадающий со знаком числа Нк-1(г) и полученный под влиянием сигналов г1, г2, гк-1. Появление сигнала гк может изменить знак точки г, сделать его таким же, как знак сигнала гк. В этом заключается свойство конкуренции обучающих сигналов. Каждый из них “стремится” изменить знаки окружающих точек (см. также замечание в подп. 4.2).
4. Строим решающую функцию Дк.
5. Выбираем номер N шага, на котором заканчиваем обучение. Информацию, полученную при обучении, сохраняют координаты обучающих сигналов.
6. Система переходит в рабочий режим. В рабочем режиме для каждой точки г Е Z вычисляем значение Дм(г).
Напомним, что значение Дм (г) в каждой точке г Е Z представляет собой эвристическую вероятность события {г Е X}. Если Дм (г) < 1/2, то можно считать, что событие не произошло (точка г не попала в X); в противном случае считаем, что событие произошло (точка г попала в X).
5. Численный эксперимент. В данном пункте рассматривается тестовый пример для проверки эффективности работы предложенного алгоритма.
Пусть А — квадратная числовая матрица с известными коэффициентами, det(А) —ее неизвестный определитель. Основным вопросом является следующий: верно ли, что det(А) > 0? Иными словами, требуется отделить матрицы А: det(А) < 0 от матриц А: det(А) > 0.
Далее для определенности будем рассматривать матрицы размером 3x3. Пусть А — некоторый обучающий сигнал. Используя решающий алгоритм, получаем информацию о матрицах в ограниченной окрестности матрицы А.
Однако множество всех матриц данного размера является неограниченным в естественной метрике. Поэтому, используя конечное число обучающих сигналов, невозможно получить существенную информацию обо всех матрицах.
Запишем матрицу А в виде набора вектор-столбцов А = (а.1} а.2, а.3):
а. к
а1к
а2к
а3к
Если умножить любой столбец на число, определитель также будет умножен на это число. Обозначим через а.к нормированный вектор-столбец, а через А — матрицу, составленную из таких столбцов:
а.к = . а.к, А = (а.1,а.2,а.з).
V7 а21к + а2,к + а\к
Тогда согласно приведенному выше замечанию знак det(A) совпадает со знаком det(A). Поэтому, решая задачу, можно рассматривать не множество всех матриц {А}, а лишь подмножество |А}, которое в отличие от {А} является ограниченным: норма каждого столбца каждой матрицы А равна 1, поэтому матрицы А равномерно ограничены в естественной метрике. Осталось записать точное выражение для какой-либо естественной метрики и получить соответствующее выражение для решающей функции /(А).
Пусть А, В — матрицы с нормированными столбцами. Определим расстояние р(А,В), полагая
Р(А,В)
\
^а!2(а .к, Ь.к) , (5)
к=1
где б,(а.к,Ь.к) — некоторое расстояние между к-ми столбцами матриц А, В. Этим столбцам соответствуют точки а,Ь на единичной сфере Б = {х : |х| = 1}. Введем естественное расстояние между этими точками — длину большой дуги на единичной сфере с концами в точках а,Ь:
— а • Ь —
й(а, Ь) = С агссов ——— = С агссов(а • Ь).
1а1 1Ь1
Итак, определено расстояние между нормированными вектор-столбцами. По формуле (5) определим расстояние между матрицами с нормированными столбцами.
Как отмечено выше, в процедуре обучения достаточно рассматривать матрицы, состоящие из трех нормированных вектор-столбцов. Числа в этом столбце являются координатами точки на двумерной сфере Б2. Значит, вся нормированная числовая матрица является элементом 6-мерного пространства К6. В свою очередь К6 можно представить в виде произведения К6 = Б2 х Б2 х Б2.
Для успешного обучения необходимо подать на вход большое количество обучающих матриц, чтобы обучающие сигналы плотно заполнили множество Z возможных сигналов.
Моделирование равномерно распределенных точек в многомерных областях удобно выполнять, используя формулы метода Монте-Карло. Чтобы смоделировать очередную нормированную матрицу, смоделируем три независимые точки, равномерно распределенные на единичной сфере Б2. Моделирующие формулы для координат х1 ,х2,х3 такой точки имеют следующий вид [13]:
х1 = 1 — 2ш,
х2 = \А — (2ш — 1)2 сов(2пш), хз = ^/1 — (2ш — 1)2 8ш(2пш).
Здесь а1,а2 — независимые случайные числа, равномерно распределенные на отрезке [0,1]. При моделировании случайных чисел а1,а2 использовался датчик псевдослучайных чисел, равномерно распределенных на [0,1].
Алгоритм является нечетким, поэтому для каждого сигнала А он выдает не одно из пары чисел 0 и 1, а число из промежутка [0,1]. Если это число /(А) > 1/2, ответ на основной вопрос считаем положительным, в противном случае — отрицательным.
Как отмечено выше, обычное функционирование решающего алгоритма (ИНС, алгоритма конкуренции) включает два этапа — обучающий и рабочий. Однако целью тестового расчета является не только проверка функционирования алгоритма конкуренции, но и изучение динамики эффективности его работы. Поэтому тестовый расчет построен таким образом, чтобы совместить эти этапы, и включает одновременно и процесс обучения, и проверку работы обученной системы.
Перечислим последовательные шаги расчета. Итак, пусть в процессе обучения на вход уже были поданы к — 1 обучающих сигналов, т. е. матрицы А1,..., Ак-1.
1. Подаем сигнал Ак.
2. К моменту к решающая функция /к-1 уже обучена сигналами А1,... , Ак-1. Вычисляем значение /к-1(Ак). Используя это значение, находим ответ на основной вопрос для матрицы Ак.
3. Находим истинный ответ на основной вопрос, т. е. находим знак определителя det(Ak).
4. Если истинный ответ и ответ из п. 3 совпадают, увеличиваем количество правильных ответов т на единицу:
т ^ т +1.
5. Считаем, что Ак — обучающий сигнал, и с помощью этого сигнала с известным правильным ответом изменяем обучающую функцию:
/к-1 ^ /к.
6. Изменяем значение счетчика:
к ^ к + 1
и переходим к п. 1.
Итак, вычислив эффективность (т. е. долю верных ответов), с помощью очередной группы рабочих сигналов используем эти сигналы для последующего обучения. Используемый алгоритм расчета позволяет сделать это (см. п. 5).
Таким образом, расчет позволяет выяснить, каким образом частота появления верных ответов зависит от количества обучающих примеров. Расчет частоты проводим следующим образом. Последовательность матриц А1,... ,Ак-1 разбиваем на группы по 100 матриц:
О1 = {А1,... , G2 = {Аюъ ... , А200}....
Для каждой группы Ок подсчитываем число Пк верных ответов и вычисляем долю верных ответов в этой группе (в процентах):
Р(к) = 100 • 100 %.
На рис. 6 показана зависимость частоты правильных ответов на основной вопрос от количества обучающих сигналов. Обучающие точки-сигналы являются случайными, следовательно, весь процесс обучения является случайным (см. замечания во введении к п. 4 ив конце подп. 4.3). Поэтому с ростом числа обучающих сигналов доля р правильных ответов изменяется немонотонно, претерпевая случайные скачки.
Из рис. 6 следует, что в начале обучения величина р = 1/2 (это соответствует отсутствию информации о решении) и по мере поступления обучающих сигналов быстро растет.
100
90
80
70
60
50
р, %
/Ам А/ Мм А/ НЛа1 / /\ЛдЛА/
h г -л 1 V Vp у У 1гу V и v ч *
Ш
1
k HQ-
10
12
14
16
18
20
Рис. 6. Зависимость p(k)
Затем скорость роста резко уменьшается. Однако тенденция роста сохраняется, несмотря на случайные скачки. В конце процедуры обучения-расчета, когда число обучающих сигналов превышает 18 000, величина p близка к единице. Следовательно, для рассмотренного примера удалось обучить алгоритм и получить удовлетворительное решение поставленной задачи.
Вопросы, связанные с увеличением скорости сходимости предложенного алгоритма, требуют специального исследования.
Список литературы
1. Барский А. Б. Нейронные сети: распознавание, управление, принятие решений. М.: Финансы и статистика, 2004.
2. УОССЕРМЕН Ф. Нейрокомпьютерная техника: Теория и практика. М.: Мир, 1992.
3. Parker D. B. Learning logic: Invent. Report / Stanford Univ. N S81-64. Stanford, 1982.
4. Rumelhart D.E., Hinton G.E., Williams R. J. Learning internal representations by error propagation // Parallel distributed processing. Cambridge: MIT Press, 1986. V. 1. P. 318-362.
5. Sejnowski T. J., Rosenberg C. R. Parallel networks that learn to pronounce english text. Complex Systems 3:145-168. 1987.
6. Burr D. J. Experiments with a connectionist text reader // Proc. of the 1st Intern. conf. on neural networks / Ed. by M. Caudill, C. Butler. San Diego: SOS Printing, 1987. V. 4. P. 717-724.
7. Cottrell G.W., Munro P., Zipser D. Learning internal representations from gray-scale images: An example of extensional programming: Proc. of the 9th Annual cognitive sci. soc. conf., Seattle (USA), July. 16-18, 1987. Norwood: Ablex, 1987. P. 461-473.
8. РОЗЕНВЛАТТ Ф. Принципы нейродинамики. М.: Мир, 1965.
9. Минский М. Л. Персептроны / М. Л. Минский, С. Пейперт. М.: Мир, 1971.
10. КОФМАН А. Введение в теорию нечетких множеств. М.: Радио и связь, 1982.
11. Орловский С. А. Проблемы принятия решений при нечеткой исходной информации. М.: Наука, 1981.
12. Боровков А. А. Математическая статистика. Новосибирск: Наука. Сиб. издат. фирма, 1997.
13. Ермаков С. М. Курс статистического моделирования / С. М. Ермаков, Г. А. Михайлов. М.: Наука, 1976.
Антюфеев Виктор Степанович — д-р физ.-мат. наук, проф.
Института вычислительной математики и математической геофизики СО РАН;
тел.: (383) 330-77-21; e-mail: [email protected]
Дата поступления — 14.11.11 г.