Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Комплект Информатика / Лабораторный практикум.doc
Скачиваний:
178
Добавлен:
22.05.2015
Размер:
6.45 Mб
Скачать

Задание

Разработать искусственную нейронную сеть, которая сможет определить, какая из следующих двух фигур находится в поле зрения. Вариант задания брать соответствующий вашему номеру в журнале.

Номер варианта

Исходные данные

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

Порядок выполнения работы

Рассмотримраспознавание символов на примере заглавных букв С и Т, показанных на рисунке9. Задача заключается в идентификации букв, помещенных в поле зрения, независимо от их ориентации. Все шаблоны на рисунке10а должны быть распознаны как буква С, а все шаблоны в части б представляют букву Т.

Рисунок 9 – Заглавная С и заглавная Т

Начнем с предположения что поле зрения состоит из квадратных пикселов, каждый из которых равен квадратным элементам, из которых составлены буквы. Каждый пиксел присоединен к датчику, который выдает 1, если пиксел закрыт просматриваемой буквой, и 0 — в противном случае. Выходы этих датчиков мы используем как входы нашей искусственной нейронной сети.

Сеть (рисунок11) состоит из блоков обработки данных двух уровней. Первый уровень составляет множество блоков — по одному для каждой области размером 3x3 пиксела в поле зрения. Для каждого из этих блоков существует девять входов, с которыми связаны датчики областей 3x3. (Обратите внимание, что области, связанные с обрабатывающими блоками первого уровня, перекрывают друг друга, поэтому каждый датчик является входом для девяти блоков обработки данных первого уровня.)

Рисунок 10 – Различные расположения букв С и Т

Рисунок 11 – Структура системы распознавания символов

Второй уровень нашей сети состоит из одного обрабатывающего модуля с отдельным входом для каждого блока первого уровня. Для модуля обработки данных второго уровня установлено пороговое значение 0,5, а каждому входу дан вес, равный 1. Поэтому этот блок выдает единицу тогда и только тогда, когда минимум один его вход равен 1.

Для каждого модуля обработки данных на первом уровне также установлено пороговое значение 0,5. Для каждого из входов вес задан равным 1 кроме входа связанного с центральным пикселом области 3x3 этого модуля для которого вес равен 2. Таким образом, каждый из этих модулей может выдать единицу, только если получит единицу от датчика, связанного с пикселом в центре области 3x3.

Теперь, если буква С расположена в поле зрения (рисунок 12), все обрабатывающие модули первого уровня выдадут значение 0. Это происходит потому, что в областях 3x3 всех блоков, центральный пиксел которых закрыт буквой, есть, по крайней мере, еще два других пиксела, также закрытых буквой, и сигналы, полученные от их датчиков, уменьшают значение сигнала центрального пиксела. Следовательно, если в поле зрения находится буква С, все входы обрабатывающего блока второго уровня равны 0, и выход всей сети также равен нулю.

Рисунок 12 – Буква С в поле зрения

Рассмотрим ситуацию с буквой Т в поле зрения. Представим себе область 3x3, центр которой — квадрат, закрытый нижней частью ножки буквы Т(рисунок13). Обрабатывающий блок, связанный с этим квадратом, получит эффективный вход, равный 1 (2 от центрального пиксела и 1 от остальных пикселов, закрытых ножкой). Это превышает пороговое значение блока, поэтому он отправит единицу

Рисунок 13 – Буква Т в поле зрения

блоку высшего уровня. Таким образом, блок высшего уровня также выдаст значение 1.

Следовательно, мы получили искусственную нейронную сеть, которая умеет различать буквы С и Т независимо от их ориентации в поле зрения. Если в поле находится букваС, сеть выдает значение 0; для буквы Т сеть выдает единицу.