Нейробум: поэзия и проза нейронных сетей
Вид материала | Документы |
СодержаниеСети для инвариантной обработки изображений Конструирование сетей под задачу Численный эксперимент |
- Ю. Н. Шунин Лекции по теории и приложениям искусственных нейронных сетей,Рига,2007, 190.96kb.
- Я. А. Трофимов международный университет природы, общества и человека «Дубна», Дубна, 71.95kb.
- Курсовая работа по дисциплине " Основы систем искусственного интеллекта" Тема: Опыт, 903.59kb.
- Нейрокомпьютерная техника: Теория и практика, 2147.23kb.
- Заочный Государственный Университет Внастоящее время все большее применение в разработке, 64.47kb.
- Особенности применения нейронных сетей в курсе «Интеллектуальные информационные системы», 82.99kb.
- Применение аппарата нейронных сетей системы matlab для аппроксимации степенных математических, 50.69kb.
- Автоматизированная система рубрикации лекционного материала с использованием нейронных, 114.4kb.
- Ульяновский Государственный Технический Университет Кафедра вычислительной техники, 216.41kb.
- Isbn 5-7262-0634 нейроинформатика 2006, 96.9kb.
Сети для инвариантной обработки изображений
Для того, чтобы при обработке переводить визуальные образов, отличающиеся только положением в рамке изображения, в один эталон, применяется следующий прием [91]. Преобразуем исходное изображение в некоторый вектор величин, не изменяющихся при сдвиге (вектор инвариантов). Простейший набор инвариантов дают автокорреляторы – скалярные произведения образа на сдвинутый образ, рассматриваемые как функции вектора сдвига.
В качестве примера рассмотрим вычисление сдвигового автокоррелятора для черно-белых изображений. Пусть дан двумерный образ S размером










Автокорреляторная сеть имеет вид
![]() | (11) |
Сеть (11) позволяет обрабатывать различные визуальные образы, отличающиеся только положением в рамке, как один образ.
^
Конструирование сетей под задачу
Подводя итоги, можно сказать, что все сети ассоциативной памяти типа (2) можно получить, комбинируя следующие преобразования:
- Произвольное преобразование. Например, переход к автокорреляторам, позволяющий объединять в один выходной образ все образы, отличающиеся только положением в рамке.
- Тензорное преобразование, позволяющее сильно увеличить способность сети запоминать и точно воспроизводить эталоны.
- Переход к ортогональному проектору, снимающий зависимость надежности работы сети от степени коррелированности образов.
Наиболее сложная сеть будет иметь вид:
![]() | (12) |
где



Возможно применение и других методов предобработки. Некоторые из них рассмотрены в работах [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, остались химерами. В случае n=10, k=2 (см. табл. 3 и 4, строки 3, 4, 5) наблюдалось уменьшение числа химер с ростом валентности, однако часть химер, удаленных от ближайшего эталона на расстояние 2 сохранялась. Сеть правильно декодировала более 50% сигналов. Таким образом при малых размерностях и кодах, далеких от совершенных, тензорная сеть работает довольно плохо. Однако, уже при n=15, k=3 и валентности, большей 3 (см. табл. 3 и 4, строки 6, 7), сеть правильно декодировала все сигналы с тремя ошибками. В большинстве экспериментов число эталонов было больше числа нейронов.
Таблица 4.
Результаты численного эксперимента
№ | Число химер, удаленных от ближайшего эталона на: | Число неверно распознанных векторов, удаленных от ближайшего эталона на: | ||||||||
| 1 | 2 | 3 | 4 | 5 | 1 | 2 | 3 | 4 | 5 |
1 | 640 | 256 | 0 | 0 | 0 | 896 | 0 | 0 | 0 | 0 |
2 | 384 | 0 | 0 | 0 | 0 | 384 | 0 | 0 | 0 | 0 |
3 | 0 | 210 | 50 | 0 | 0 | 0 | 210 | 290 | 60 | 0 |
4 | 0 | 180 | 50 | 0 | 0 | 0 | 180 | 290 | 60 | 0 |
5 | 0 | 88 | 50 | 2 | 0 | 0 | 156 | 290 | 60 | 0 |
6 | 0 | 0 | 1120 | 13440 | 896 | 0 | 0 | 1120 | 13440 | 896 |
7 | 0 | 0 | 0 | 13440 | 896 | 0 | 0 | 0 | 13440 | 896 |
Подводя итог можно сказать, что качество работы сети возрастает с ростом размерности пространства и валентности и по эффективности устранения ошибок сеть приближается к коду, гарантированно исправляющему ошибки.