Борис Злотин – PANN: Новая Технология Искусственного Интеллекта. Учебное пособие (страница 2)
Сеть PANN проще, потому что:
1. В нейроне Розенблатта есть фактор активации, то есть обработка полученного результата посредством нелинейной логистической (сигмовидной) функции, S-кривой и т. п. Без этого нельзя обойтись, но это усложняет нейрон Розенблатта и делает его нелинейным, что приводит к огромным проблемам при обучении. В отличие от него нейрон Progress строго линеен и никаких проблем не порождает.
2. В нейроне Progress имеется дополнительный элемент – дистрибьютор, представляющий собой несложное логическое устройство: демультиплексор. Оно переключает сигнал с одного входа на один из нескольких выходов. В нейроне Розенблатта веса – многобитовые ячейки памяти, допускающие хранение чисел в широком диапазоне, а в PANN могут использоваться простейшие ячейки (триггеры), способные хранить только числа – 1 и 0.
3. PANN, в отличие от классических сетей, не требует очень большой памяти и вычислительной мощности компьютера, поэтому можно использовать дешевые компьютеры и требуется намного меньшее количество электроэнергии.
4. PANN позволяет решать сложные задачи на однослойной сети.
5. PANN требует в десятки и даже сотни раз меньшего количества имиджей в обучающей выборке.
Таким образом открываются возможности создавать на основе PANN полноценные продукты, используя не очень дорогую и экономичную в плане потребления энергии компьютерную технику.
Рис. 5. Долгое и дорогое обучение против быстрого и дешевого
2.4. МАТЕМАТИЧЕСКАЯ ОСНОВА РАСПОЗНАВАНИЯ
НА НЕЙРОНЕ PROGRESS
В 1965 г. Лотфи Заде ввел понятие «нечетких множеств» и идею «нечеткой логики». В какой-то степени это послужило подсказкой для нашей работы по разработке математического обоснования и логики PANN. Математические операции в PANN направлены на сравнение неточно совпадающих имиджей и оценку степени их расхождения в виде коэффициентов сходства.
В 2009 г. было сделано интересное открытие, названное «нейрон Мерлин Монро» или в других источниках «нейрон бабушки». Оказывается, в голове человека знания по определенным темам «разнесены» по отдельным нейронам и нейронным группам, которые связаны друг с другом ассоциативными связями, так что возбуждение может передаваться с одних нейронов на другие. Это знание вместе с принятой парадигмой
Введем понятие
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|.
Определение сходства тех или иных объектов путем их сравнения играет огромную роль в мышлении, позволяет выявлять аналогии и отличия разных объектов – существ, предметов, процессов, идей и т. п. В разных отраслях науки, в первую очередь в Теории Подобия, используются безразмерные коэффициенты сходства или критерии подобия (Coefficient Similarity, или CoS), иногда называемые «мера сходства», «мера ассоциации», «мера подобия» и т. п.
Функции сравнения в PANN реализуются через математические операции над матрицами числовых массивов. Рассмотрим простейший алгоритм сравнения через векторное произведение числовых массивов нейронов-имиджей.
Даны два массива для сравнения в виде матриц |X1| и |X2|.
|X1| × |X2|T – произведение матрицы |X1| на транспонированную матрицу |X2|. Причем величина этого произведения пропорциональна числу совпадающих по месту в BCF-матрице единиц в |X1| и |X2|.
|X1| × |X2|T = N, только если |X1| = |X2|;
|X1| × |X2|T <N, если |X1| ≠ |X2|;
|X1| × |X2|T = 0, если ни один пиксель этих матриц не совпадает.
Рассмотрим отношение:
Здесь CoS – Коэффициент Сходства между числовыми векторами X1 и X2 определяет степень близости этих векторов и описываемых этими векторами имиджей.
Примеры:
Рис. 7. Перемножение матриц для сравнения числовых массивов
Рис. 8. Сравнение десятичных числовых массивов |A| и |B|
Классические нейронные сети при распознавании только определяют, на какой класс более всего похож некоторый распознаваемый объект. При этом они не могут указать, насколько он похож. Из-за этого распознавание иногда неустойчиво – существуют известные примеры, когда изменения одного пикселя в имидже оказалось достаточным, чтобы его распознавание изменилось. Это значит, что распознавание в классических сетях сильно зависит от случайных шумов.
В PANN ситуация иная – величина коэффициента сходства очень четко показывает, насколько существенна разница между имиджами. Разница сходства в одну сотую при формате 32 × 32 пикселя соответствует примерно изменению 10 пикселей. И этого уже достаточно для того, чтобы уверенно отличать имиджи друг от друга. А разница в одну десятую говорит уже о вполне серьезном различии и высокой устойчивости распознавания, малой зависимости распознавания от шумов.
В отличие от классических нейронных сетей, сети PANN позволяют резко повысить качество распознавания за счет:
• статистической обработки распознавания по классам и по имиджам;
• совмещения распознавания по классам и распознавания непосредственно по имиджам. Причем совмещенное распознавание по классам и по имиджам позволяет решить одну из самых неприятных проблем, ограничивающих применение нейронных сетей в медицине и ряде других приложений – проблему прозрачности и объяснимости результатов работы сети. Подробнее мы расскажем об этом в разделе «4.6. Распознавание сетью PANN».
Точность и надежность распознавания классической нейронной сети определяется путем тестирование нескольких десятков, сотен или тысяч имиджей и подсчета числа правильных и неправильных распознаваний. Это очень спорный тест. Из-за непрозрачности работы классических сетей распознавание сильно зависит от случайных особенностей обучения:
• иногда результаты обучения плохо воспроизводятся, одна и та же сеть, обученная на одних и тех же имиджах, в одних случаях будет распознавать лучше, в других хуже;
• нет способов адекватной оценки точности и надежности распознавания по каждому из имиджей;
• влияние отбора тестовых имиджей. Иногда их подбирают специально для обеспечения нужного результата.
Распознавание сетью PANN оценивается по числовому коэффициенту сходства рассматриваемого имиджа:
1. С любым набором загруженных в сеть отдельных имиджей.
2. Со всеми классами, которым обучена данная сеть.
При этом и классы, и отдельные имиджи ранжируются по степени сходства, что позволяет точно оценить величину различий между всеми сравниваемыми классами и тем самым оценить точность и надежность распознавания.
Безусловно, возможно формально (с точки зрения машины) правильное, но не устраивающее нас распознавание. Даже люди нередко распознают других людей не по главным, а по второстепенным признакам. Например, оценивая сходство не по чертам лица, а по одежде. Бывает, что при распознавании человеческих лиц особенности освещения оказываются более весомыми, чем черты лица.
Но проблемы такого рода вполне решаемы в PANN несколькими путями, в частности: