2.2. ОБУЧЕНИЕ НЕЙРОНА PROGRESS
Обучение сети PANN существенно проще, чем обучение любых классических сетей.
Трудности обучения классических нейронных сетей связаны с тем, что при обучении нескольким разным имиджам одни из них влияют на синаптические веса других и вносят искажения в обучение друг в друга. Поэтому приходится подбирать веса так, чтобы их набор соответствовал всем имиджам одновременно. Для этого используют метод градиентного спуска, требующий огромного количества итерационных вычислений.
Для обучения сети PANN был разработан принципиально иной подход: «Один нейрон – один имидж», при котором каждый нейрон обучается своему имиджу. При этом не возникает взаимных влияний разных нейронов, обучение становится быстрым и точным.
Обучение нейрона Progress некоторому образу сводится к тому, что дистрибьютор определяет уровень сигнала (в простейшем случае его амплитуду или величину по шкале RGB) и замыкает выключатель, соответствующий интервалу весов, в который попадает данная величина.
Рис. 4. Обученная однонейронная многоуровневая сеть PANN
Приведенная схема обучения нейрона Progress порождает ряд замечательных свойств сети PANN:
1. Обучение не требует вычислительных операций и поэтому происходит очень быстро.
2. Набор синаптических весов одного нейрона никак не зависит от других нейронов, и поэтому нейроны сети можно обучать как по отдельности, так и группами, а потом обученные нейроны или их группы объединять в сеть.
3. Сеть может доучиваться, то есть можно изменять, добавлять и убирать нужные нейроны в любое время, не влияя при этом на незатронутые данными изменениями нейроны.
4. Обученный нейрон-имидж может быть легко визуализирован с использованием простейших цветовых кодов, связывающих уровни включенных весов с яркостью или цветом пикселей.
2.3. ЗАБАВНЫЙ ПАРАДОКС PANN
На первый взгляд сеть PANN выглядит конструктивно сложнее, чем классические Искусственные Нейронные Сети. Но в действительности PANN проще.
Сеть PANN проще, потому что:
1. В нейроне Розенблатта есть фактор активации, то есть обработка полученного результата посредством нелинейной логистической (сигмовидной) функции, S-кривой и т. п. Без этого нельзя обойтись, но это усложняет нейрон Розенблатта и делает его нелинейным, что приводит к огромным проблемам при обучении. В отличие от него нейрон Progress строго линеен и никаких проблем не порождает.
2. В нейроне Progress имеется дополнительный элемент – дистрибьютор, представляющий собой несложное логическое устройство: демультиплексор. Оно переключает сигнал с одного входа на один из нескольких выходов. В нейроне Розенблатта веса – многобитовые ячейки памяти, допускающие хранение чисел в широком диапазоне, а в PANN могут использоваться простейшие ячейки (триггеры), способные хранить только числа – 1 и 0.
3. PANN, в отличие от классических сетей, не требует очень большой памяти и вычислительной мощности компьютера, поэтому можно использовать дешевые компьютеры и требуется намного меньшее количество электроэнергии.
4. PANN позволяет решать сложные задачи на однослойной сети.
5. PANN требует в десятки и даже сотни раз меньшего количества имиджей в обучающей выборке.
Таким образом открываются возможности создавать на основе PANN полноценные продукты, используя не очень дорогую и экономичную в плане потребления энергии компьютерную технику.
Рис. 5. Долгое и дорогое обучение против быстрого и дешевого
2.4. МАТЕМАТИЧЕСКАЯ ОСНОВА РАСПОЗНАВАНИЯ
НА НЕЙРОНЕ PROGRESS
Линейность нейрона Progress приводит к тому, что и сеть, построенная на этих нейронах, линейна. А это обеспечивает ее полную прозрачность, простоту описывающей ее теории и применяемой математики.
В 1965 г. Лотфи Заде ввел понятие «нечетких множеств» и идею «нечеткой логики». В какой-то степени это послужило подсказкой для нашей работы по разработке математического обоснования и логики PANN. Математические операции в PANN направлены на сравнение неточно совпадающих имиджей и оценку степени их расхождения в виде коэффициентов сходства.
2.4.1. Определения
В 2009 г. было сделано интересное открытие, названное «нейрон Мерлин Монро» или в других источниках «нейрон бабушки». Оказывается, в голове человека знания по определенным темам «разнесены» по отдельным нейронам и нейронным группам, которые связаны друг с другом ассоциативными связями, так что возбуждение может передаваться с одних нейронов на другие. Это знание вместе с принятой парадигмой «Один нейрон – один имидж» позволило построить систему распознавания PANN.
Введем понятие «нейрон-имидж» – это нейрон, обученный конкретному имиджу. В PANN каждый нейрон-имидж – это реализованная функциональная зависимость (функция) Y = f (X), где:
X – некоторый числовой массив (вектор), обладающий свойствами:
при X = A, f (A) = N
при X ? A, f (A) <N
A – некоторая заданная величина.
N – размерность вектора X, то есть число цифр в этом векторе.
Для записи числовых векторов X предложен специальный формат, запатентованный компанией Progress Inc. Этот формат, названый Binary Comparison Format (BCF), представляет собой прямоугольную бинарную цифровую матрицу, в которой:
• количество колонок равно длине N (числу цифр) массива;
• количество строк равно числу выбранных для сети уровней веса k;
• каждая значащая цифра обозначается единицей (1) в соответствующей строке, а отсутствие цифры – нулем (0);
• каждая строка соответствует некоторой значащей цифре записываемого числового массива, то есть в строке, обозначенной как «нулевая», цифра «1» соответствует цифре «0» в исходном массиве, а в строке, обозначенной как «девятая», – цифра «1» соответствует цифре 9 в массиве;
• в каждой колонке матрицы имеется одна единица, соответствующая величине данной цифры, а все остальные величины в этой колонке равны 0;
• сумма всех единиц в матрице массива равна длине N данного массива, например для массива из 20 цифр она равна 20;
• суммарное количество нулей и единиц в матрице каждого массива равно произведению длины N данного массива на величину основания используемой системы счисления.
Пример: BCF-запись массива из 20 десятичных цифр [1, 9, 3, 6, 4, 5, 4, 9, 8, 7, 7, 1, 0, 7, 8, 0, 9, 8, 0,2].
Рис. 6. BCF-имидж как разреженная бинарная матрица
Особенностью сетей PANN является то, что обучение нейронов по имиджам, типичное для нейронных сетей, может быть заменено переформатированием файлов, несущих числовые зависимости, к формату BCF, или просто загрузкой в сеть файлов в этом формате.
Массивы типа X в формате BCF обозначаются как матрицы |X|.
2.4.2. Сравнение числовых массивов
Сравнение объектов, или определение сходства и различия.
Определение сходства тех или иных объектов путем их сравнения играет огромную роль в мышлении, позволяет выявлять аналогии и отличия разных объектов – существ, предметов, процессов, идей и т. п. В разных отраслях науки, в первую очередь в Теории Подобия, используются безразмерные коэффициенты сходства или критерии подобия (Coefficient Similarity, или CoS), иногда называемые «мера сходства», «мера ассоциации», «мера подобия» и т. п.
Функции сравнения в PANN реализуются через математические операции над матрицами числовых массивов. Рассмотрим простейший алгоритм сравнения через векторное произведение матриц нейронов-имиджей.
Даны два массива для сравнения в виде матриц |X