Задание 2

Выбрать задание 1 или 2. Если есть желание сделать оба, то +5 к бонусным баллам.


Задание 0. Выберите предметную область применения ассоциативной памяти:

1. Картинки геометрических фигур, например, круг, крест горизонтальный и вертикальный и др. Или фигуры на дорожных знаках.  Исходные изображения могут быть цветными.

2. Изображения арабских цифр.

3. Изображения букв латинского или русского алфавита. Их можно взять из шрифтов ОС. 

4. Стилизованные Изображения животных.

5. Изображения иероглифов, или масти карт, или др. объектов.

Замечание. +1 балл при работе с цветными изображениями.


Задание 1 (10 "чистых" баллов)
Реализовать сеть Хопфилда для задачи ассоциативной памяти. Данную задачу можно решать следующими этапами:
1. Приготовить в отдельных файлах образцы (или преобразовать из картинок), данные должны содержаться в отдельной папке. 
2. Приготовить в отдельных файлах искаженные изображения для проверки работы.
3. Организовать (в виде подпрограммы) заполнение матрицы Х, чтобы данные-образцы из файлов заполняли строки или столбцы и содержали только 1 и -1.
4. Организовать обучение.
5. Организовать итерационный цикл работы сети согласно лекциям (см. презентацию).
6. Исследовать возможности сети:

а) проверить работу на образцах, оценить емкость сети

б) проверить на зашумленных изображениях

в)*(+1 балл) исследовать влияние степени шума на восстановление - сохранить информацию в файл. Требуется написать дополнител ную функцию добавления шума в изображение или сигнал.

г)* (+1 балл) изменить способ обучения

д) определить номер класса (образца) для искаженного сигнала


Задание 2 (10 "чистых" баллов)
Реализовать сеть Хемминга для задачи ассоциативной памяти. Данную задачу можно решать следующими этапами:
1. Приготовить в отдельных файлах образцы (или преобразовать из картинок), данные должны находиться в отдельной папке
2. Приготовить в отдельных файлах искаженные изображения для проверки работы.
3. Организовать (в виде подпрограммы) заполнение матрицы Х, чтобы данные-образцы из файлов заполняли строки или столбцы и содержать только 1 и 0. Или попробуйте также как в сети Хопфильда значения 1 и -1.
4. Организовать обучение.
5. Организовать итерационный цикл работы сети согласно лекциям (см. презентацию).
6. Исследовать возможности сети.

а) проверить работу на образцах, оценить емкость сети

б) проверить на зашумленных изображениях

в)* (+1 балл) исследовать влияние степени шума на восстановление - сохранить информацию в файл 

г)* (+1 балл) изменить параметры(обнулить порог, изменить матрицу второго слоя и др.).