Представление знаний в информационных системах
Обновлено
Содержание
1. Анализ исходных данных и разработка ТЗ1.1 Основание и назначение разработки1.2 Классификация решаемой задачи1.3 Предварительный выбор класса НС1.4 Предварительный выбор структуры НС1.5 Выбор пакета НС1.6 Минимальные требования к информационной и программной совместимости1.7 Минимальные требования к составу и параметрам технических средств2. Обучение НС2.1 Формирование исходных данных2.2. Окончательный выбор модели, структуры и параметров обучения НС2.3 Блок-схема алгоритма обучения3. Анализ качества обучения4. Тестовый пример5. Выводы1. Анализ исходных данных и разработка технического задания1.1 Основание и назначение разработкиОснованием данной работы является необходимость выполнения курсовой работы по дисциплине "Представление знаний в информационных системах".Назначением работы является освоение нейронной сети.1.2 Классификация решаемой задачиВ таблице 1 представлены некоторые проблемы, решаемые нейронными сетями [5].Таблица 1.Проблема | Исходные данные | Выходные данные | Задача | Применение | |
Классификация | вектор признаков | вектор, значения всех координат которого должны быть равными 0, за исключением координаты, соответствующей выходному элементу, представляющему искомый класс(значение этой координаты должно быть равным 1) | указание принадлежности входного образа одному или нескольким предварительно определенным классам | распознавание букв, распознавание речи, классификация сигнала электрокардиограммы, классификация клеток крови | |
| Кластеризация (классификация образа без учителя) | вектор признаков, в котором отсутствуют метки классов | - | Алгоритм основан на подобии образов и размещает близкие образы в один кластер | извлечение знаний, сжатие данных и исследование свойств данных | |
| Апроксимация функций (имеется обучающая выборка ((xl yi), (х2, у2), ..., (xn, yw)), которая генерируется неизвестной функцией, искаженной шумом) | набор обучающих векторов | рассчитанное сетью значение функции | нахождение оценки функции | ||
Прогнозирование ( заданы N дискретных отсчетов {(y(f1), y(f2), …, y(fN)} в последовательные моменты времени t1, t2, …, tN ) | вектора данных по M признакам за T периодов времени | вектора данных по M признакам за периоды времени T+L | предсказание значения y(tN+1) в момент tN+1 | принятие решений в бизнесе, науке и технике | |
| Управление (рассматривается динамическая система, заданная совокупностью {u(t), y(t)}) | u(t) - входное управляющее воздействие | (t) - выход системы в момент времени t | расчет такого входного воздействия u(t), при котором система следует по желаемой траектории, диктуемой эталонной моделью |
Класс НС | |
сети прямого распространения (персептрон, однослойный и многослойный) | |
реккурентные (однослойные и многослойные, в том числе сети Хопфилда и двунаправленная ассоциативная память) |
Класс | Модель | Область применения | Достоинства | Недостатки | |
Однослойный персептрон | отдельный персептронный нейрон вычисляет взвешенную сумму элементов входного сигнала, вычитает значение смещения и пропускает результат через жесткую пороговую функцию, выход которой равен +1 или -1 в зависимости от принадлежности входного сигнала к одному из двух классов | распознавание образов, классификация | программные или аппаратные реализации модели очень просты. Простой и быстрый алгоритм обучения | простые разделяющие поверхности (гиперплоскости) дают возможность решать лишь несложные задачи распознавания | |
Многослойный персептрон с обучением по методу обратного распространения ошибки | используется алгоритм обратного распространения ошибки. Тип входных сигналов - целые и действительные, тип выходных сигналов - действительные из интервала, заданного передаточной функцией нейронов. Тип передаточной функции - сигмоидальная | распознавание образов, классификация, прогнозирование, распознавание речи. Контроль, адаптивное управление, построение экспертных систем | первый эффективный алгоритм обучения многослойных нейронных сетей | этот метод относится к алгоритмам с минимальной скоростью сходимости. Для увеличения скорости сходимости необходимо использовать матрицы вторых производных функции ошибки | |
Сеть Хопфилда | используется как автоассоциативная память. Исходные данные - векторы-образцы классов. Выход каждого из нейронов подаётся на вход всех остальных нейронов. Тип входных и выходных сигналов - биполярные. Тип передаточной функции - жёсткая пороговая. | ассоциативная память, адресуемая по содержанию, распознавание образов, задачи оптимизации(в том числе, комбинаторной оптимизации). | позволяет восстановить искажённые сигналы | размерность и тип входных сигналов совпадают с размерностью и типом выходных сигналов. Это существенно ограничивает применение сети в задачах распознавания образов. При использовании сильно коррелированных векторов-образцов возможно зацикливание сети в процессе функционирования. Небольшая ёмкость, квадратичный рост числа синапсов при увеличении размерности входного сигнала | |
Сети Ворда | обычная трехслойная сеть с обратным распространением ошибки с разными передаточными функциями в блоках скрытого слоя | Классифика-ция | обучение, хорошее обобщение на зашумленных данных | ||
Сети Кохонена | сеть состоит из М нейронов, образующих прямоугольную решетку на плоскости. Элементы входных сигналов подаются на входы всех нейронов сети. В процессе работы алгоритма настраиваются синаптические веса нейронов. Входные сигналы (вектора действительных чисел) последовательно предъявляются сети, при этом требуемые выходные сигналы не определяются. После предъявления достаточного числа входных векторов, синаптические веса сети определяют кластеры. Кроме того, веса организуются так, что топологически близкие нейроны чувствительны к похожим входным сигналам | кластерный анализ, распознавание образов, классификация | сеть может быть использована для кластерного анализа только в случае, если заранее известно число кластеров | способна функционировать в условиях помех, так как число классов фиксировано, веса модифицируются медленно, и настройка весов заканчивается после обучения | |
Двунаправленная ассоциативная память | является гетероассоциативной. Входной вектор поступает на один набор нейронов, а соответствующий выходной вектор вырабатывается на другом наборе нейронов. Входные образы ассоциируются с выходными | ассоциативная память, распознавание образов | сеть может строить ассоциации между входными и выходными векторами, имеющими разные размерности | Емкость жестко ограничена, возможны ложные ответы |
Название пакета | 1 | 2 | 3 | 4 | 5 | 7 | 6 | |
Neural10 | нет | нет | да | freeware | легко | неудобный | есть | |
NeuroPro | нет | нет | да | freeware | легко | неудобный | есть | |
Neural Planner | да | да | да | - | легко | слишком упрощённый | есть | |
BrainMaker 3.10 | да | да | да | - | легко | очень удобный | есть | |
NeuroShell 2 | да | да | да | freeware | очень легко | очень удобный | есть | |
Название пакета | 8 | |||||||
Neural10 | допускаются любые расширения файлов с обучающими парами | |||||||
NeuroPro | возможности упрощения сети | |||||||
Neural Planner | встроенный графический редактор, аналог табличного редактора | |||||||
BrainMaker 3.10 | набор утилит широкого назначения | |||||||
NeuroShell 2 | очень хорошая справка, собственные алгоритмы обучения | |||||||
Название пакета | 9 | |||||||
Neural10 | ограниченность настройки параметров сети | |||||||
NeuroPro | невозможность сохранения результатов опроса обученной сети | |||||||
Neural Planner | ограниченность по числу алгоритмов обучения | |||||||
BrainMaker 3.10 | ограниченные функциональные возможности | |||||||
NeuroShell 2 | возможность импорта только 5 типов входных файлов |
IBM - совместимый персональный компьютер класса 486/66 или выше (желательно Pentium II или выше)
Видеоадаптер SVGA
Монитор VGA и выше
Клавиатура, мышь
2. Обучение нейронной сети
Под обучением искусственной нейронной сети понимается процесс настройки весовых коэффициентов ее базовых процессорных элементов, результатом чего является выполнение сетью конкретных задач -- распознавания, оптимизации, аппроксимации, управления. Достижение подобных целей формализуется критерием качества Q, минимальное значение minWQ=Q* которого соответствует наилучшему решению поставленной задачи [5].
2.1 Формирование исходных данныхРассматривается классификация цифр арабского алфавита, написанных шрифтом Arial 10ым размером. Для формирования исходных данных (вектор признаков) использовалось растровое представление цифр (в виде массива из 0 и 1). Размер изображения, исходя из шрифта написания, составил 6х10 квадратов. Отсюда размерность входного вектора - 60.Выходной вектор (-вектор, значения всех координат которого должны быть равными 0, за исключением координаты, соответствующей выходному элементу, представляющему искомый класс(значение этой координаты должно быть равным 1)) имеет размерность 10, в нем номер позиции единицы соответствует номеру цифры. Таким образом, обучающая пара содержит 60 + 10 = 70 значений.Для каждого желаемого образа формируется соответствующий массив, записанный в одну строку (сверху вниз слева направо), и также в процессе обучения используются реальные выходные значения, которые записаны в конце строки сформированного массива.2.2 Окончательный выбор модели, структуры и параметров обучения НСВ NeuroShell 2 предлагается несколько моделей НС.По рекомендациям разработчиков пакета критерием остановки обучения будет: события после минимума > 20000, так как с использованием встроенной калибровки этот критерий позволяет избежать переучивания сети и запоминания тестовых примеров.Окончательный выбор нейронной сети основан на анализе полученных экспериментально результатов для средней ошибки < 0,000001.Таблица 1 Окончательный выбор нейронной сетиНейронная сеть | Время обучения | Количество эпох | |
Многослойный персептрон | 0:09 | 4047 | |
Реккурентная сеть | 2:13 | 29274 | |
Сеть Ворда | 0:00 | 224 | |
Сеть Ворда с обходным соединением | 0:00 | 87 | |
Трехслойная сеть с обходным соединением | 0:01 | 149 |
Параметр сети | Время обучения | Количество эпох | |
Количество нейронов - 30 | 0:00 | 99 | |
Количество нейронов - 40 | 0:00 | 87 | |
Количество нейронов - 50 | 0:00 | 86 | |
Б1 - Гаусса, Б2 - Гаусса | 0:00 | 87 | |
Б1 - Гаусса, Б2 - комп. Гаусса | 0:00 | 87 | |
Б1 - Гаусса, Б2 - sin | 0:00 | 87 | |
Б1 - комп. Гаусса, Б2 - комп. Гаусса | 0:00 | 86 | |
Б1 - sin, Б2 - sin | 0:00 | 87 | |
Б1 - комп. Гаусса, Б2 - логистическая | 0:00 | 112 |
Скорость обучения | Время обучения | Количество эпох | |
0,1 | 0:00 | 86 | |
0,2 | 0:00 | 62 | |
0,3 | 0:00 | 49 | |
0,4 | 0:00 | 37 | |
0,5 | 0:00 | 37 | |
0,6 | 0:00 | 37 | |
0,7 | 0:00 | 36 |
Момент | Время обучения | Количество эпох | |
0,1 | 0:00 | 36 | |
0,2 | 0:00 | 37 | |
0,3 | 0:00 | 37 | |
0,4 | 0:00 | 37 |
