Найти

Нейрокомпутерные системы

Ad simplicitas

Лабораторная работа

Обучение нейронной сети с учителем по готовому задачнику (простая и легко решаемая задача - сдвиг или - распознавание направления сдвига).

Для испытаний алгоритмов и программ существует набор известных и часто используемых задач. Для нейронных сетей одной из таких задач стало распознавание направления сдвига последовательности из нулей и единиц.

Представим числа от 0 до 255 в двоичном коде (восемь бит). Затем сделаем с каждым двоичным числом операции циклического сдвига влево и вправо. При сдвиге влево самая первая (левая) цифра переставляется в конец, вправо - последняя (правая) цифра переставляется в начало.
Распознавание направления сдвига
Число Двоичный код Сдвиг влево Сдвиг вправо
1000000010000001010000000
2000000100000010000000001
3000000110000011010000001
4000001000000100000000010
5000001010000101010000010
6000001100000110000000011
7000001110000111010000011
8000010000001000000000100
9000010010001001010000100
10000010100001010000000101
11и т.д.и т.д.и т.д.

Если объединить 8 цифр исходного двоичного числа и 8 цифр числа, полученного путем сдвига влево, получим последовательность из 16 цифр (нулей и единиц). То же самое проделаем с исходным числом и числом, полученным сдвигом вправо. Задача для нейросети - по последовательности из 16 цифр научиться определять, в какую сторону был сделан сдвиг - влево (1 класс) или вправо (2 класс). Если взять для обучающей выборки первые 254 целых числа, получим 504 примера (по 252 каждого класса). Числа 0 (00000000) и 255 (11111111) брать нельзя, так же, как и 170 (10101010) и 85 (01010101), поскольку при сдвиге в любую сторону для них будет получен один и тот же результат.

Как правило, нейронные сети легко и быстро обучаются решать эту задачу.

Частичное описание взято из книги Горбань А.Н., Россиев Д.А. Нейронные сети на персональном компьютере. Новосибирск: Наука, 1996.- 276 с.

Файл с данными SHIFTS.DBF создан мной, однако, может быть создан и самостоятельно. В файле 512 записей, по две записи для каждого числа - сдвиг влево и вправо. Для полноты картины и возможности проверки сложностей с числами 0, 85, 170 и 255 они также присутствуют в выборке, однако, в текущей версии файла для них отсутствует ответ. Нумерация бит последовательная и легко воспринимаемая, как и вся задача.

Рейтинг SIMPLETOP.NET
Rambler's Top100 Powered byCeleron©
Бесплатный хостинг от EOMY.NET