Студопедия — Распознавание графических символов с помощью нейропакета NeuroPro
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Распознавание графических символов с помощью нейропакета NeuroPro

Содержание:

1. Создание карты Кохонена в «Системе для профессионала»

2. Задание

В меню File®New Problem создадим новый файл и сохраним его как som.dsc

Рис. 1. Начало работы

Выберем Advanced Neural Networks (Систему для профессионала) и введем данные о размерах дохода и запрашиваемого кредита из файла Коchonen.xls Всего 66 записей.

Построим сеть Кохонена (Build Neural Network)

Сеть Кохонена имеет только входы, поэтому зададим входы, воспользовавшись Define Inputs/Outputs

Рис.2 Задание входов и выходов.

 

Рис. 3 Формирование файла с исходными данными (som.pat)

 

Для формирования сети Кохонена воспользуемся меню Design и выберем Сеть ® Самоорганизующейся карты Кохонена. Это сеть, обучающаяся без учителя, т.е. сеть, которая может учиться без предъявления правильных ответов на выходе. Такие сети способны разделять данные на указанное число категорий. Зададим число входов – 2 и число выходных нейронов – 4, предположительное число кластеров.

 

Рис. 4. Создание сети Кохонена.

 

С помощью меню Learning – обучим сеть группировать исходные данные в четыре класса. В результате обучения получим следующую группировку

Рис. 5 Группировка исходных данных в кластеры

 

С помощь Atach Output File сформируем выходной файл som.pat, просмотрим его с помощью меню Data Entrry.

Рис. 6 Формирование файла с выходными данными (som.out)

Для содержательной интерпретации полученных результатов выходные данные необходимо переписать в файл Коchonen.xls.

По результатам можно построить следующие графики

 

 

 

Задание:

1. Предложить свой вариант данных для кластеризации, пользуясь данными Государственной службы статистики Украины (http://www.ukrstat.gov.ua/). Построить график в Microsoft Exсel или Open Office Calc

2. Разработать содержательную постановку задачи кластеризации

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

4. Получить результат кластеризации.

5. Построить графики на основании исходных данных и полученных в результате кластеризации с помощью средств Microsoft Exсel (Open Office Calc).

6. Оформить отчет, в котором отобразить с 1-5 пункты задания.

Распознавание графических символов с помощью нейропакета NeuroPro

 

Содержание:

1. Общая характеристика нейропакета NeuroPro

2. Описание интерфейса и функций меню нейропакета NeuroPro

3. Применение нейропакета NeuroPro для задачи распознавания почтовых индексов.

4. Задание

5. Контрольные вопросы

6. Литература

 

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

 

1. Общая характеристика нейропакета NeuroPro

Возможности нейропакета NeuroPro:

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

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

a. Число слоев нейронов - до 10.

b. Число нейронов в слое - до 100. Число нейронов в слое может задаваться отдельно для каждого слоя нейронов.

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

d. Работа с количественными (непрерывными) и качественными (дискретнозначными, от 2 до 20 дискретных состояний для признака) входными признаками.

e. Решение задач прогнозирования (предсказания значений количественных выходных признаков) и классификации (предсказание состояний качественных выходных признаков)

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

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

a. Градиентный спуск.

b. Модифицированный ParTan-метод.

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

d. Квазиньютоновский BFGS-метод.

4. Тестирование нейронной сети, получение статистической информации о точности решения задачи.

5. Вычисление и отображение значимости входных сигналов сети, сохранение значений показателей значимости в файле на диске.

6. Внесение случайных возмущений в веса синапсов сети.

7. Упрощение (контрастирование) нейронной сети: Сокращение числа входных сигналов сети. Сокращение числа нейронов сети. Равномерное прореживание структуры синапсов сети. Сокращение числа синапсов сети. Сокращение числа неоднородных входов (порогов) нейронов сети. Бинаризация весов синапсов сети (приведение весов синапсов и пороговых входов к конечному набору выделенных значений). Возможен выбор из 4-х наборов выделенных значений.

8. Генерация вербального описания нейронной сети. Вербальное описание может редактироваться и сохраняться в файле на диске.

 

Для работы программы требуется следующая конфигурация компьютера:

Процессор Intel 80486 или совместимый

Монитор SVGA с разрешением не менее 800*600 точек

Microsoft Windows 95 или Microsoft Windows NT 4.0

 

Для установки программы необходимо запустить программу-инсталлятор Setup.exe. Будет произведено копирование следующих файлов:

ReadMe.txt - этот файл

History.txt - изменения и дополнения по сравнению с предыдущей версией

NeuroPro.exe - исполняемый файл

NeuroPro.hlp - файл справки- NeuroPro.cnt - служебный файл справки

Readme.doc - краткое описание программы (Microsoft Word 6.0)

UserGuide.doc - руководство пользователя (Microsoft Word 6.0)

Boltz.db - демонстрационный файл данных

Election.db - демонстрационный файл данных

Распространяемые файлы Borland Database Engine v.4.51

 

2 Описание интерфейса и функций меню нейропакета NeuroPro

Работа с пакетом начинается с появления окна, показанного на рис. 1.:

Рис. 1. Главная форма нейропакета NeuroPro (начало работы)

Доступными являются строка меню и панель инструментов.

Пункт меню «Файл» - обеспечивает стандартные операции с проектами нейронных сетей: создать новый проект, открыть существующий, сохранить имеющийся или другие варианты сохранения в подпункте «Сохранить как». Также с помощью подпункта «Выход» можно закрыть программу.

Пункт меню «Правка» - позволяет отменить последнее действие, копировать, вырезать выделенную область или файл и вставить.

Пункт меню «Окно» помогает выбрать способ отображения множества открытых окон в программе. Их можно отобразить мозаикой, каскадом или упорядочиванием значков.

С помощью пункта меню «Help» можно вызвать содержание справки, поиск ответа на вопрос, а также информацию о программе.

Опишем кнопки панели инструментов программы слева направо:

- «Создать» - позволяет создать новую нейронную сеть;

- «Открыть» - позволяет открыть уже созданный проект;

- «Сохранить» - сохраняет созданную сеть, однако не предоставляет выбор параметров сохранения;

- «Вырезать», «Копировать», «Вставить» - позволяют осуществлять одноимённые стандартные процедуры с файлами или строками;

- «Отменить» - позволяет отменить последнее действие;

- «Содержание справки» - вызывает содержание справки.

Как видим на рис. 1 доступными являются только кнопки «Создать» и «Открыть». После того, когда создана новая или открыта существующая нейронная сеть, главная форма нейропакета меняет свой вид.

Рис. 2. Главная форма нейропакета NeuroPro (после загрузки проекта)

 

Пункт меню «Нейросеть» позволяет выполнять операции с нейронными сетями. Операция выполняется над активной в данный момент в нейропроекте нейросетью:

- «Обучение» - обучение нейронной сети.

- «Тестирование» - тестирования нейронной сети.

- «Сокращение числа входных сигналов» нейронной сети путем удаления входных сигналов, наименее значимых для принятия сетью решения.

- «Сокращение числа синапсов» - удаление наименее значимых синапсов сети,

- «Сокращение числа неоднородных входов» - удаление наименее значимых неоднородных входов нейронов сети.

- «Равномерное упрощение сети» - сокращение числа приходящих на нейроны сети сигналов до задаваемого пользователем,

- «Бинаризация синапсов сети» - приведение весов синапсов к значениям -1 и 1 или значениям из более широкого набора выделенных значений.

- «Вербализация» - на основе вербального описания можно попытаться восстановить набор правил, используемых сетью для правильного решения задачи.

- «Значимость входов» - позволяет придать перечисленных входам разную значимость.

В пункте меню «Настройка» можно выбрать метод оптимизации нейронной сети (градиентный спуск, модифицированный ParTan, сопряжённые градиенты), а также норму накопления значимости (сумма модулей, максимум модуля).

Пользовательский интерфейс нейропакета NeuroPro v.025 показан на рис 3

Рис 3. Пользовательский интерфейс пакета NeuroPro v.025

 

3 Применение нейропакета NeuroPro для задачи распознавания почтовых индексов.

На примере цифр почтового индекса (рис.4) рассмотрим работу в NeuroPro.

Создадим нейронную сеть перевода 9-тизначного кода в цифры от 0 до 9.

Рис. 4 Цифры почтового индекса

Как видим для задания каждого символа (кода) необходимо 9 разрядов (см. рис. 4). Если в разряде присутствует линия, то значение входа будет равно «1», в противном случает значение входа равно «0». Создадим в Excel файл с входными и выходными данными. Файл будет иметь структуру показанную в таблице 1:

Таблица 1

VH1 VH2 VH3 VH4 VH5 VH6 VH7 VH8 VH9 VIH
                   
                   
                   
                   
                   
                   
                   
                   
                   
                   

 

Выделим область, где размещаются данные, и выберем пункт меню «Сохранить как». Выберем формат dbf.

Затем выберем в программе Neuro Pro пункт «Файл – Создать». Затем нажмём кнопку «Открыть файл данных» и выберем сохранённый ранее файл с исходными данными в формате dbf. Нажмём кнопку «Параметры». Проверим правильность указания входящих и выходящих потоков в открывшемся окне.

Число входных и выходных сигналов сети ограничено и не может в сумме превышать 255 или 511 (в зависимости от файла данных) сигналов. Каждому входному и выходному сигналу соответствует поле в файле данных.

Процедура задания входных и выходных сигналов новой сети изображена на рис. 5

После описания всех входных и выходных сигналов сети необходимо задать ее структуру (число слоев нейронов, число нейронов в каждом слое и характеристику – коэффициент преобразователя нейрона). Задание структуры новой сети изображено на рис. 6

 

Рис. 5 Задание входных и выходных сигналов новой сети

 

Рис. 6 Задание структуры новой сети

 

После задания структуры сети необходимо щелкнуть по кнопке «Создать» и в главном меню выбрать пункты «Нейросеть» — «Обучение». Окончание процесса обучения изображено на рис. 7. Необходимо обращать внимание на то, чтобы сеть правильно решала все примеры обучающей выборки.

Рис. 7 Результат обучения сети

 

После того, как сеть обучится, выберем пункт меню «Нейросеть – Тестирование», чтобы посмотреть, насколько точно сеть прогнозирует значения выходных полей в файле данных. (рис. 8)

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

 

 

Рис. 8 Тестирование сети на исходном файле

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

Намеренно допустим ошибки во входах цифр 1,2,6,9 и в выходе цифры 8 поставим 0. Протестируем тестфайл с ошибками и посмотрим результат (рис.9). Тестфайл с ошибками:

 

Рис. 9 Тестирование сети на файле с ошибками

 

Как видно из результатов тестирования, сеть исправила 2 ошибки из 5.

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

Для упрощения нейронной сети имеются следующие операции в меню Нейросеть:

§ Сокращение числа входных сигналов - удаление наименее значимых входных сигналов.

§ Сокращение числа нейронов - удаление наименее значимых нейронов сети.

§ Сокращение числа синапсов - удаление наименее значимых синапсов сети.

§ Сокращение числа неоднородных входов - удаление наименее значимых неоднородных входов нейронов сети.

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

§ Бинаризация синапсов сети - приведение значений весов синапсов и неоднородных входов нейронов к выделенным значениям.

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

Проведём упрощение нашей сети и снова протестируем её. Результат не изменился.

NeuroPro предлагает несколько методов оптимизации. Из реализованных в настоящее время в программе методов (градиентный спуск, модифицированный ParTan метод, метод сопряженных градиентов и квазиньютоновский BFGS-метод) при создании нейропроекта автоматически предлагается ParTan.

Для получения вербального описания текущей нейронной сети необходимо выбрать пункт меню Нейросеть/Вербализация. Вербальное описание сети выводится в Окно вербального описания сети (рис. 10). На основе вербального описания можно попытаться восстановить набор правил, используемых сетью для правильного решения задачи.

Рис. 10 Вербализация сети

4 Задание

1. Проведите описанные в примере действия, изменив входной файл. Новый входной файл должен быть сформирован следующим образом: оставим без изменения значения входов, а для кодирования значений выходов применим двоичную систему кодирования. В этом случае вместо одного выхода у нас получиться 4, каждый из которых может также принимать значения «0» или «1». Обучите и протестируйте систему. Сравните 2 примера, и сделайте выводы о способе представления входных и выходных данных.

2. Сформируйте согласно вариантам заданий достаточное количество примеров 2-х битных изображений символов размером 16*16 пикселей (256 входов), при этом символы могут быть нормальные, жирные, курсивные и рукописные, наклоненные перевернутые. Научите систему распознавать предлагаемые символы. Внесите искажения в исходные символы и проверьте правильность работы нейронной сети – устойчивость к искажениям.

Варианты заданий

 

№ варианта Графические символы
  A B C D E
  1 2 3 4 5
  K L M N O
  6 7 8 9 0
  O U S T X
  А Б Г Д П
  2 4 6 8 0
  W Q R F J
  1 3 5 7 9
  Й Ф С К У

 

КОНТРОЛЬНЫЕ ВОПРОСЫ

1. Область применения нейронных сетей.

2. Способы обучения нейронных сетей.

3. Алгоритм обратного распространения ошибки.

4. Функции активации, их виды.

5. Топология нейронных сетей.

6. Структура искусственного нейрона.

7. Цель обучения.

8. Нейронные сети при решении задач распознавания образов.

 

 

Л И Т Е Р А Т У Р А

1. Бондарев В.Н. Искусственный интеллект: Учебное пособие для вузов / Бондарев В.Н., Ф. Г. Аде – Севастополь: Изд-во СевНТУ, 2002.- 615 с.

2. Медведев В.С., Потемкин В.Г. Нейронные сети. MATLAB 6 / Под общ. ред. к.т.н. В.Г.Потемкина. - М.: ДИАЛОГ-МИФИ, 2002. – 496 с. – (Пакеты прикладных программ; Кн. 4).

3. Нейронные сети и анализ данных [электронный ресурс] http://neuropro.ru/ - режим доступа 28.01.2012

 

 




<== предыдущая лекция | следующая лекция ==>
Решение задачи кластеризации с помощью карты Кохонена в нейропакете NeuroShell2 | 

Дата добавления: 2015-10-19; просмотров: 1714. Нарушение авторских прав; Мы поможем в написании вашей работы!



Практические расчеты на срез и смятие При изучении темы обратите внимание на основные расчетные предпосылки и условности расчета...

Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

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

Типовые ситуационные задачи. Задача 1.У больного А., 20 лет, с детства отмечается повышенное АД, уровень которого в настоящее время составляет 180-200/110-120 мм рт Задача 1.У больного А., 20 лет, с детства отмечается повышенное АД, уровень которого в настоящее время составляет 180-200/110-120 мм рт. ст. Влияние психоэмоциональных факторов отсутствует. Колебаний АД практически нет. Головной боли нет. Нормализовать...

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

Признаки классификации безопасности Можно выделить следующие признаки классификации безопасности. 1. По признаку масштабности принято различать следующие относительно самостоятельные геополитические уровни и виды безопасности. 1.1. Международная безопасность (глобальная и...

Алгоритм выполнения манипуляции Приемы наружного акушерского исследования. Приемы Леопольда – Левицкого. Цель...

ИГРЫ НА ТАКТИЛЬНОЕ ВЗАИМОДЕЙСТВИЕ Методические рекомендации по проведению игр на тактильное взаимодействие...

Реформы П.А.Столыпина Сегодня уже никто не сомневается в том, что экономическая политика П...

Studopedia.info - Студопедия - 2014-2024 год . (0.01 сек.) русская версия | украинская версия