Скачиваний:
34
Добавлен:
01.05.2014
Размер:
247.81 Кб
Скачать

НИЖЕГОРОДСКИЙ ГОСУДАРСТВЕННЫЙ

ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА

к курсовой работе

___________ Каримов Евгений Викторович _____________________

(фамилия, имя, отчество)

Факультет ____________Информационных систем и технологий_______________

Кафедра Компьютерные технологии в проектировании и производстве_____

Группа ________________________ 02-КТ-1_______________________________

Дата защиты «10»___января _____2005 г.

________________________

Индекс 001025

МИНИСТЕРСТВО ОБЩЕГО И ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

РОССИЙСКОЙ ФЕДЕРАЦИИ

Нижегородский государственный технический

университет

Кафедра Компьютерные технологии в проектировании и производстве___

Заведующий кафедрой

_____________ Моругин С.Л.

( подпись ) ( фамилия, и.о. )

__________________

( дата )

_______ __Классификация букв алфавита на основе НС_ ________

( наименование темы проекта или работы )

_________________________________________________________________

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА

______ КР-НГТУ-071900-(02-КТ-1)-15-04_______

(вид документа - проект дипломный, курсовой, исследовательская работа)

КОНСУЛЬТАНТЫ: РУКОВОДИТЕЛЬ

По___________________ ____________ Волков М.Б.

__________ ___________ (подпись) (фамилия, и.о.)

(подпись) (фамилия, и.о.) __________________(дата)

______________(дата)

  1. По ____________________ СТУДЕНТ

__________ ___________ ____________ Каримов Е.В.

(подпись) (фамилия, и.о.) (подпись) (фамилия, и.о.)

______________(дата) _________(дата) ____02-КТ-1_____

  1. По_____________________ (группа или шифр)

___________ ___________

(подпись) (фамилия ,и.о.) Проект защищен___________(дата)

_______________(дата)

РЕЦЕНЗЕНТ Протокол №____________________

______________ _____________

(подпись) (фамилия, и.о.) С оценкой ______________________

_______________(дата) _______________________________

2005 г.

НИЖЕГОРОДСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

Кафедра

Компьютерные технологии в проектировании и производстве

УТВЕРЖДАЮ

Зав. Кафедрой С.Л.Моругин

ЗА Д А Н И Е

на курсовое проектирование

Студент

Каримов Евгений Викторович

Тема курсового проекта

Классификация букв алфавита на основе нейронных сетей

Исходные данные к проекту

  1. NeuroShell2 русское издание

  2. NeuroOffice’99_rus

  3. NeuroPro

Содержание пояснительной записки

  1. Назначение проекта

  2. Требования

  3. Выбор нейронной сети и нейропакета

  4. Обучение

  5. Блок-схема алгоритма

  6. Тестовый пример

Рекомендуемая литература

  1. Стандарт предприятия СТП 1–У–НГТУ–98

  2. Круглов В.В., Борисов В.В. Искусственные нейронные сети. Теория и практика. – М.: Горячая линия – Телеком, 2001. – 382 с.:ил.

  3. Уоссермен Ф. Нейрокомпьютерная техника – М.: Мир 1992

  4. Электронный учебник по NeuroShell 2

  5. Терехов В.А. Управление на основе нейронных сетей. – М.: Высшая школа,2002. – 153 с.: ил.

Руководитель Волков М.Б.

Консультант__________________

« 10 » ___января__2005 года ______________

(подпись)

Содержание

  1. Анализ исходных данных и разработка ТЗ…………………………………5

    1. Основание и назначение разработки…………………………………....5

    2. Классификация решаемой задачи………………………...……………..5

    3. Предварительный выбор класса нейронной сети……………….…..….6

    4. Предварительный выбор структуры нейронной сети...………………..9

    5. Выбор пакета нейронной сети…..……………………………………….9

    6. Минимальные требования к информационной и программной совместимости………………….………………………………………..11

    7. Минимальные требования к составу и параметрам технических средств…………………………………………………………………...11

  2. Обучение нейронной сети………………………………………………......12

    1. Окончательный выбор модели нейронной сети………………….…...12

    2. Окончательный выбор структуры нейронной сети.………….…….…12

    3. Блок-схема алгоритма обучения……………………………….……....13

    4. Формирование исходных данных….…………………………………..16

    5. Выбор параметров обучения……...……………………………………16

  3. Анализ качества обучения.…………………………………………………18

  4. Тестовый пример……………………………………………………….…....19

  5. Выводы ………………………………………………………………………20

Список использованных источников……………………………….………21

КР-НГТУ-071900-(02-КТ-1)-15-05

Изм. лист

№ докум.

Подпись

Дата

Разработал

Каримов А.А.

Классификация букв алфавита

Пояснительная записка

Литер

Лист

Листов

Проверил

Волков М.Б.

4

Кафедра КТПП гр. 02-КТ-1

Н. контр.

Утвердил

1 Анализ исходных данных и разработка ТЗ

1.1 Основание и назначение разработки

Основанием данной работы является необходимость выполнения курсовой работы по дисциплине “Представление знаний в информационных системах”.

Назначением данной работы является классификация букв на основе нейронной сети.

1.2 Классификация решаемой задачи

Проанализируем некоторые проблемы, решаемые нейронными сетями.

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

Исходными данными является вектор признаков, выходные данные - вектор, значения всех координат которого должны быть равными О, за исключением координаты, соответствующей выходному элементу, представляющему искомый класс(значение этой координаты должно быть равным 1).

Кластеризация/Категоризация- при решении задачи кла­стеризации, которая известна также как классификация образов без учителя. Алгоритм кластеризации основан на подобии образов и размещает близкие образы в один кластер. Известны случаи применения кла­стеризации для извлечения знаний, сжатия данных и исследова­ния свойств данных.

Исходными данными является вектор признаков, в котором отсутствуют метки классов.

Аппроксимация функций - предположим, что имеется обу­чающая выборка ((xl yi), (х2, у2), ..., (xn, yw)), которая генерируется неизвестной функцией, искаженной шумом. Задача аппроксимации состоит в нахождении оценки этой функции.

Исходные данные – набор обучающих векторов. Выход сети – рассчитанное сетью значение функции.

Предсказание/прогноз - пусть заданы N дискретных отсчетов {(y(f1), y(f2), …, y(fN)} в последовательные моменты времени t1, t2, …, tN . Задача состоит в предсказании значения y(tN+1) в момент tN+1. Прогноз имеют значительное влияние на принятие решений в биз­несе, науке и технике.

Исходные данные – вектора данных по M признакам за T периодов времени. Выход сети – вектора данных по M признакам за периоды времени T+L.

КР-НГТУ-071900-(02-КТ-1)-15-05

Лист

5

Оптимизация - многочисленные проблемы в математике, статистике, технике, науке, медицине и экономике могут рассмат­риваться как проблемы оптимизации. Задачей оптимизации явля­ется нахождение решения, которое удовлетворяет системе огра­ничений и максимизирует или минимизирует целевую функцию.

Память, адресуемая по содержанию. В модели вычислений фон Неймана обращение к памяти доступно только посредством адреса, который не зависит от содержания памяти. Более того, если допущена ошибка в вычислении адреса, то может быть най­дена совершенно иная информация. Память, адресуемая по со­держанию, или ассоциативная память, доступна по указанию за­данного содержания. Содержимое памяти может быть вызвано даже по частичному или искаженному содержанию. Ассоциативная память чрезвычайно желательна при создании перспективных ин­формационно-вычислительных систем.

Управление. Рассмотрим динамическую систему, заданную совокупностью {u(t), y(t)}, где u(t) является входным управляющим воздействием, a y(t) - выходом системы в момент времени t. В системах управления с эталонной моделью целью управления яв­ляется расчет такого входного воздействия u(t), при котором сис­тема следует по желаемой траектории, диктуемой эталонной мо­делью.

Исходными данными для данной задачи является вектора(из нулей и единиц) размерности 100, которые описывают каждую из 26 букв английского алфавита, выбранных для обучения. Исходные данные предлагаются в прилагаемом файле “alphavit.xls”

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

Сеть, принимая входной вектор, должна в соответствии с ним выдать соответствующий данной последовательности выходной вектор.

Исходя из исходных данных данная задача является задачей классификации.

1.3 Предварительный выбор класса нейронной сети

Опираясь на [Терехов] можно сказать, что данную задачу позволяют решить несколько классов НС.

Сети прямого распространения, такие как, персептрон, однослойный и многослойный.

Рекуррентные сети: однослойные и многослойные, в том числе сети Хопфилда и двуна­правленная ассоциативная память.

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

КР-НГТУ-071900-(02-КТ-1)-15-05

Лист

6

Строго и однозначно определить класс НС для этой задачи не представляется возможным, так как большинство из них в той или иной мере подходят для ее решения.

Исходя из выше сказанного остановим свой выбор на следующих классах:

  • Персептрон, однослойный и многослойный;

  • Сети Хопфилда;

  • Сети Ворда;

  • Сети Кохонена;

  • Двунаправленная ассоциативная память(ДАП);

Проведем сравнительный анализ данных классов:

1.3.1 Однослойный персептрон.

Модель: отдельный персептронный нейрон вычисляет взве­шенную сумму элементов входного сигнала, вычитает значение смещения и пропускает результат через жесткую пороговую функ­цию, выход которой равен +1 или -1 в зависимости от принадлеж­ности входного сигнала к одному из двух классов.

Области применения: распознавание образов, классификация.

Недостатки: простые разделяющие поверхности (гиперплоскости) дают возможность решать лишь несложные задачи распознавания.

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

1.3.2 Многослойный персептрон с обучением по методу обратного распространения ошибки.

Модель: используется алгоритм обратного распространения ошибки. Тип входных сигналов – целые и действительные, тип выходных сигналов – действительные из интервала, заданного передаточной функцией нейронов. Тип передаточной функции – сигмоидальная.

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

Достоинства: первый эффективный алгоритм обучения многослойных нейронных сетей.

Недостатки: этот метод относится а алгоритмам с минимальной скоростью сходимости. Для увеличения скорости сходимости необходимо использовать матрицы вторых производных функции ошибки.

1.3.3 Сеть Хопфилда

Модель: используется как автоассоциативная память. Исходные данные – векторы-образцы классов. Выход каждого из нейронов подаётся на вход всех остальных нейронов.

КР-НГТУ-071900-(02-КТ-1)-15-05

Лист

7

Тип входных и выходных сигналов – биполярные. Тип передаточной функции – жёсткая пороговая.

Область применения: ассоциативная память, адресуемая по содержанию, распознавание образов, задачи оптимизации(в том числе, комбинаторной оптимизации).

Достоинства: позволяет восстановить искажённые сигналы.

Недостатки: размерность и тип входных сигналов совпадают с размерно­стью и типом выходных сигналов. Это существенно ограничивает применение сети в задачах распознавания образов. При использовании сильно коррелированных векторов-образцов возможно зацикливание сети в процессе функциониро­вания. Небольшая ёмкость, квадратичный рост числа синапсов при увеличении размерности входного сигнала.

1.3.4 Сети Ворда

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

Область применения: классификация.

Достоинства: быстрое обучение, хорошее обобщение на зашумленных данных.

1.3.5 Сети Кохонена

Модель: сеть состоит из М нейронов, об­разующих прямоугольную решетку на плоскости. Эле­менты входных сигналов подаются на входы всех нейронов сети. В процессе работы алгоритма настраиваются синаптические веса нейронов. Входные сигналы (вектора действительных чисел) последо­вательно предъявляются сети, при этом требуемые выходные сиг­налы не определяются.После предъявления достаточного числа входных векторов, синаптические веса сети определяют кластеры. Кроме того, веса организуются так, что топологически близкие нейроны чувствительны к похожим входным сигналам.

Области применения: кластерный анализ, распознавание образов, классификация.

Недостатки: сеть может быть использована для кластерного анализа только в случае, если заранее известно число кластеров.

Преимущества: способна функциони­ровать в условиях помех, так как число классов фиксировано, веса модифицируются медленно, и настройка весов заканчивается по­сле обучения .

1.3.6 Двунаправленная ассоциативная память

Модель: является гетероассоциативной. Входной вектор поступает на один набор нейронов, а соответствующий выходной вектор вырабатывается на другом на­боре нейронов. Входные образы ассоциируются с выходными.

КР-НГТУ-071900-(02-КТ-1)-15-05

Лист

8

Область применения: ассоциативная память, распознавание образов.

Достоинства: сеть может строить ассоциации между входными и выходными векторами, имеющими разные размерности.

Недостатки: Емкость жестко ограничена, возможны ложные ответы.

Исходя из выше сказанного сужаем выбор класса до многослойного персептрона и сети Ворда.

1.4 Предварительный выбор структуры нейронной сети

Понятие структуры НС включает в себя

  • Количество слоев,

  • Количество нейронов в каждом слое,

  • Вид функции активации,

  • Наличие смещения и т.д.

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

На вход сети подается вектор размерности 100, так как в нашей математической модели растровое изображение делится сеткой 10х10 и представляется вектором.

На выходе сети вектор из нулей и единиц размерности 26, так как число классов равно 26.

Соответственно число нейронов входного слоя – 100, выходного слоя – 26.

Определим оптимальное число слоев для количества скрытых нейронов, равного половине числа входных.

Число связей при 1 скрытом слое равно:

100*50+50*4=5200

при 2 скрытых слоях:

100*25+25*25+25*4=3225

при 3 слоях:

100*18+18*16+16*16+16*4=2408

Таким образом оптимальное число скрытых слоев равно 1.

Вид функции активации определим далее экспериментально.

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

    1. Выбор пакета нейронной сети

Выбор пакета основывался на следующих принципах:

• Доступность пакета;

• Полнота пакета (наличие достаточного количества параметров для построения и обучения нейронных сетей);

КР-НГТУ-071900-(02-КТ-1)-15-05

Лист

9

• Простота использования;

• Русифицированная документация по пакету.

Проведем сравнительный анализ нескольких пакетов:

  1. NeuroPro;

  2. NeuroShell 2;

  3. Statistica Neural Networks.

1.5.1 Нейропакет NeuroPro

Возможности программы:

1) Работа (чтение, запись, редактирование) с файлами дан­ных, представленными в форматах *.dbf (СУБД dBase, FoxPro, Clipper) и *.db (СУБД Paradox).

Создание слоистых нейронных сетей для решения задач прогнозирования:

• число слоев нейронов - до 10;

• число нейронов в слое - до 100;

• нейроны: с нелинейной сигмоидной функцией активации f(A) = А/(|А| + с), крутизна сигмоиды может задаваться отдельно т для каждого слоя нейронов.

Нейронная сеть может одновременно решать несколько задач прогнозирования; для каждого из выходных сигналов могут быть установлены свои требования к точности прогнозирования.

2) Обучение нейронной сети производится по принципу двойственного функционирования с применением одного из сле­дующих методов оптимизации:

• градиентного спуска;

• модифицированного ParTan - метода;

• метода сопряженных градиентов.

Руководство: есть.

Наличие пакета: есть.

1.5.2 Нейропакет NeuroShell 2

Не очень хорошо продуман интерфейс пользователя.

Обучающая выборка формируется достаточно просто, поддерживает импорт таблиц с входными данными в формате Excel или Lotus.

Наличие пакета: есть.

Руководство: есть(русифицированное).

Кроме русскоязычного руководства, есть учебник по NeuroShell 2.

Нейропакет реализует как необходимые для решения задачи сети, так и некоторые другие: многослойную сеть, сети Кохонена, вероятностные нейронные сети, НС с общей регрессией и сети метода группового учёта аргументов.

КР-НГТУ-071900-(02-КТ-1)-15-05

Лист

10

1.5.3 Нейропакет Statistica Neural Networks

Нейропакет реализует многослойные сети, сети Кохонена, линейные сети, радиальные базисные функции (RBF), вероятностные и обобщенно-регрессионные нейронные сети PNN/GRNN.

Формирование обучающей выборки достаточно просто. Работает с текстовыми файлами, файлами БД, буфером обмена. Проблемы с использованием пакета на моей машине.

Руководство: есть.

Пакет на английском языке.

Наличие пакета: есть.

Исходя из сравнительного анализа нейропакетов останавливаем свой выбор на продукте Neuro Shell 2.

1.6 Минимальные требования к информационной и программной совместимости

Для решения задачи необходима установленная операционная система MS Windows 98 и выше, либо любая другая, поддерживающая NeuroShell2 русское издание. На компьютере должен быть установлен пакет NeuroShell2 русское издание.

1.7 Минимальные требования к составу и параметрам технических средств

• IBM – совместимый персональный компьютер класса 486/66 или выше (желательно Pentium II или выше);

• 32 Mb RAM;

• Видеоадаптер SVGA;

• Монитор VGA и выше;

• Клавиатура, мышь;

КР-НГТУ-071900-(02-КТ-1)-15-05

Лист

11

2. Обучение нейронной сети

2.1. Окончательный выбор нейронной сети

Окончательный выбор нейронной сети основан на анализе полученных в результате эксперимента данных для средней ошибки <0,000001.

Таблица 1 Окончательный выбор нейронной сети

Нейронная сеть

Время обучения

Количество эпох

Многослойный персептрон

2:16

642

Реккурентная сеть

18:52

1072

Сеть Ворда

4:46

463

Сеть Ворда с обходным соединением

2:37

218

Трехслойная сеть с обходным соединением

6:34

565

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

2.2. Окончательный выбор структуры нейронной сети

Окончательный выбор структуры нейронной сети основан на анализе полученных экспериментально результатов для средней ошибки < 0,000001.

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

Передаточная функция блока 1 – Б1.

Передаточная функция блока 2 – Б2.

Таблица 2 Окончательный выбор структуры нейронной сети

Параметр сети

Время обучения

Количество эпох

Количество нейронов - 50

2:37

218

Количество нейронов - 58

2:30

203

Количество нейронов - 64

2:54

221

Б1 – Гаусса, Б2 - Гаусса

2:43

213

Б1 – Гаусса, Б2 – комп. Гаусса

3:11

215

Б1 – Гаусса, Б2 - tanh

3:10

224

Б1 – Гаусса, Б2 – sin

3:32

226

Б1 – комп. Гаусса, Б2 – комп. Гаусса

2:42

210

КР-НГТУ-071900-(02-КТ-1)-15-05

Лист

12

Соседние файлы в папке Классификация букв алфавита на основе нейронных сетей
  • #
    01.05.201434.3 Кб29alphavit.xls
  • #
    01.05.201416.9 Кб29noise10.xls
  • #
    01.05.201417.41 Кб29noise4.xls
  • #
    01.05.201416.9 Кб29noise7.xls
  • #
    01.05.201417.41 Кб29test.xls
  • #
    01.05.2014247.81 Кб34ПЗ_Каримов.doc