• в каждой колонке матрицы имеется одна единица, соответствующая величине данной цифры, а все остальные величины в этой колонке равны 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>1| и |X>2|.
|X>1| × |X>2|>T – векторное произведение матрицы |X>1| на транспонированную матрицу |X>2|. Причем величина этого произведения пропорциональна числу совпадающих по месту в BCF-матрице единиц в |X>1| и |X>2|.
|X>1| × |X>2|>T = N, только если |X>1| = |X>2|;
|X>1| × |X>2|>T
|X>1| × |X>2|>T = 0, если ни один пиксель этих матриц не совпадает.
Рассмотрим отношение:
Здесь CoS – Коэффициент Сходства между числовыми векторами X>1 и X>2 определяет степень близости этих векторов и описываемых этими векторами имиджей.
Примеры:
Рис. 7. Перемножение матриц для сравнения числовых массивов
Рис. 8. Сравнение десятичных числовых массивов |A| и |B|
Классические нейронные сети при распознавании только определяют, на какой класс более всего похож некоторый распознаваемый объект. При этом они не могут указать, насколько он похож. Из-за этого распознавание иногда неустойчиво – существуют известные примеры, когда изменения одного пикселя в имидже оказалось достаточным, чтобы его распознавание изменилось. Это значит, что распознавание в классических сетях сильно зависит от случайных шумов.
В PANN ситуация иная – величина коэффициента сходства очень четко показывает, насколько существенна разница между имиджами. Разница сходства в одну сотую при формате 32 × 32 пикселя соответствует примерно изменению 10 пикселей. И этого уже достаточно для того, чтобы уверенно отличать имиджи друг от друга. А разница в одну десятую говорит уже о вполне серьезном различии и высокой устойчивости распознавания, малой зависимости распознавания от шумов.
В отличие от классических нейронных сетей, сети PANN позволяют резко повысить качество распознавания за счет:
• статистической обработки распознавания по классам и по имиджам;
• совмещения распознавания по классам и распознавания непосредственно по имиджам. Причем совмещенное распознавание по классам и по имиджам позволяет решить одну из самых неприятных проблем, ограничивающих применение нейронных сетей в медицине и ряде других приложений – проблему прозрачности и объяснимости результатов работы сети. Подробнее мы расскажем об этом в разделе «4.6. Распознавание сетью PANN».