Учебное пособие по курсу «Нейроинформатика» | страница 31
Автокорреляторная сеть имеет вид
Сеть (11) позволяет обрабатывать различные визуальные образы, отличающиеся только положением в рамке, как один образ.
Конструирование сетей под задачу
Подводя итоги, можно сказать, что все сети ассоциативной памяти типа (2) можно получить, комбинируя следующие преобразования:
1. Произвольное преобразование. Например, переход к автокорреляторам, позволяющий объединять в один выходной образ все образы, отличающиеся только положением в рамке.
2. Тензорное преобразование, позволяющее сильно увеличить способность сети запоминать и точно воспроизводить эталоны.
3. Переход к ортогональному проектору, снимающий зависимость надежности работы сети от степени коррелированности образов.
Наиболее сложная сеть будет иметь вид:
где r>ij>-1 — элементы матрицы, обратной матрице Грама системы векторов {F(x>i)}>⊗k, F(x) — произвольное преобразование.
Возможно применение и других методов предобработки. Некоторые из них рассмотрены в работах [68, 91, 278]
Численный эксперимент
Работа ортогональных тензорных сетей при наличии помех сравнивалась с возможностями линейных кодов, исправляющих ошибки. Линейным кодом, исправляющим k ошибок, называется линейное подпространство в n-мерном пространстве над GF2, все вектора которого удалены друг от друга не менее чем на 2k+1. Линейный код называется совершенным, если для любого вектора n-мерного пространства существует кодовый вектор, удаленный от данного не более, чем на k. Тензорной сети в качестве эталонов подавались все кодовые векторы избранного для сравнения кода. Численные эксперименты с совершенными кодами показали, что тензорная сеть минимально необходимой валентности правильно декодирует все векторы. Для несовершенных кодов картина оказалась хуже — среди устойчивых образов тензорной сети появились «химеры» — векторы, не принадлежащие множеству эталонов.
Таблица 3. Результаты численного эксперимента. МР — минимальное расстояние между эталонами, ЧЭ — число эталонов
№ | Размерность | Число векторов | МР | ЧЭ | Валентность | Число химер | Число ответов | После обработки сетью расстояние до правильного ответа стало | |||
---|---|---|---|---|---|---|---|---|---|---|---|
верн. | неверн. | меньше | то же | больше | |||||||
1 | 10 | 1024 | 3 | 64 | 3,5 | 896 | 128 | 896 | 0 | 856 | 0 |
2 | 7,21 | 384 | 640 | 384 | 0 | 348 | 0 | ||||
3 | 10 | 1024 | 5 | 8 | 3 | 260 | 464 | 560 | 240 | 260 | 60 |
4 | 5,15 | 230 | 494 | 530 | 240 | 230 | 60 | ||||
5 | 17,21 | 140 | 532 | 492 | 240 | 182 | 70 | ||||
6 | 15 | 32768 | 7 | 32 | 3 | 15456 | 17312 | 15456 | 0 | 15465 | 0 |
7 | 5,21 | 14336 | 18432 | 14336 | 0 | 14336 | 0 |
В случае n=10, k=1 (см. табл. 3 и 4, строка 1) при валентностях 3 и 5 тензорная сеть работала как единичный оператор — все входные вектора передавались на выход сети без изменений. Однако уже при валентности 7 число химер резко сократилось и сеть правильно декодировала более 60% сигналов. При этом были правильно декодированы все векторы, удаленные от ближайшего эталона на расстояние 2, а часть векторов, удаленных от ближайшего эталона на расстояние 1, остались химерами. В случае