- •Оглавление
- •Введение
- •1.Математические модели искусственных нейронных сетей [9]
- •1.1Общие сведения о структуре биологического нейрона
- •1.2 Математическая модель искусственного нейрона
- •1.3 Математическое описание нейронной сети
- •1.4 Стохастический нейрон
- •1.5 Сравнение характеристик машины фон Неймана и нейронной сети
- •2.Разработка структуры и функций нейроимитатора как элемента интеллектуальной информационной системы
- •2.1 Концепции применения нейросетевых компонентов в информационных системах
- •2.2 Предварительная обработка информации на этапе проектирования нейросетевых компонентов
- •2.3 Формирование задачника для нейросети
- •2.4 Особенности формирования нейронной сети
- •2.5 Интерпретация сигналов нейронной сети
- •2.6Управляющая программа (исполнитель)
- •2.7 Компонент учитель
- •2.8Настройка параметров нейросети.
- •2.9Оценка и коррекция нейросетевой модели
- •2.10 Конструктор нейронной сети
- •2.11 Контрастер нейросети.
- •2.12 Логически прозрачные сети, получение явных знаний
- •2.13 Решение дополнительных задач с помощью нейросетевых компонентов
- •2.14Разработка языка описания нейроимитатора для обмена данными
- •3.Разновидности нейронных сетей [31]
- •3.1Персептрон Розенблатта.
- •3.1.1Персептрон Розенблатта.
- •3.1.2Теорема об обучении персептрона.
- •3.1.3Линейная разделимость и персептронная представляемость
- •3.2Свойства процессов обучения в нейронных сетях.
- •3.2.1Задача обучения нейронной сети на примерах.
- •3.2.2Классификация и категоризация.
- •3.2.3Обучение нейронной сети с учителем, как задача многофакторной оптимизации.
- •3.3Многослойный персептрон.
- •3.3.1Необходимость иерархической организации нейросетевых архитектур.
- •3.3.2Многослойный персептрон.
- •3.3.3Обучение методом обратного распространения ошибок.
- •3.4Другие иерархические архитектуры.
- •3.4.1Звезды Гроссберга
- •3.4.2Принцип Winner Take All (wta) - Победитель Забирает Все - в модели Липпмана-Хемминга.
- •3.4.3Карта самоорганизации Кохонена.
- •3.4.4Нейронная сеть встречного распространения.
- •3.5Модель Хопфилда.
- •3.5.1Сети с обратными связями
- •3.5.2Нейродинамика в модели Хопфилда
- •3.5.3Правило обучения Хебба
- •3.5.4Ассоциативность памяти и задача распознавания образов
- •3.6Обобщения и применения модели Хопфилда.
- •3.6.1Модификации правила Хебба.
- •3.6.2Матрица Хебба с ортогонализацией образов.
- •3.6.3Отказ от симметрии синапсов.
- •3.6.4Алгоритмы разобучения (забывания).
- •3.6.5Двунаправленная ассоциативная память.
- •3.6.6Детерминированная и вероятностная нейродинамика.
- •3.6.7Применения сети Хопфилда к задачам комбинаторной оптимизации.
- •3.7Неокогнитрон Фукушимы.
- •3.7.1Когнитрон: самоорганизующаяся многослойная нейросеть.
- •3.7.2Неокогнитрон и инвариантное распознавание образов.
- •3.8Теория адаптивного резонанса.
- •3.8.1Дилемма стабильности-пластичности восприятия.
- •3.8.2Принцип адаптивного резонанса.
- •3.8.3Нейронная сеть aрt-1.
- •3.8.4Начальное состояние сети.
- •3.8.5Фаза сравнения.
- •3.8.6Фаза поиска.
- •3.8.7Обучение сети арт.
- •3.8.8Теоремы арт.
- •3.8.9Дальнейшее развитие арт: архитектуры арт-2 и арт-3.
- •3.8.10Сети арт-2 и арт-3.
- •3.9Черты современных архитектур.
- •3.9.1Черты современных архитектур.
- •3.9.2Сегодняшний день нейронауки.
- •3.9.3Программное и аппаратное обеспечение. Нейро-эвм.
- •4.Литература и учебно-методические материалы
2.9Оценка и коррекция нейросетевой модели
Для оценки качества полученной модели используется оценка работы нейросети на тестовой выборке, или ошибка обобщения. Она характеризует способность ИНС обрабатывать новые данные в отличие от ошибки обучения, которая отражает качество настройки нейросети на конкретные примеры. Наиболее распространенным методом оценки моделей является метод перекрестного оценивания [252].
В случае, если ошибка сети превышает допустимую, необходимо вернуться на предыдущие этапы построения модели и изменить некоторые параметры нейросети.
Первым этапом коррекции модели является генерация нескольких экземпляров нейросети и их обучение, т.к. результаты обучения зависят от начальных значений весов синапсов, которые генерируются для каждой сети случайным образом. После обучения нескольких экземпляров, выбирается сеть с минимальной тестовой ошибкой. Различные нейросети могут ошибаться на различных примерах тестовой выборки. В этом случае можно сформировать комитет из нейросетей и вычислять окончательный ответ по задаче как среднее арифметическое ответов отдельных сетей. В этом случае средняя ошибка комитета будет меньше средней ошибки каждой нейросети [57]. Изменение вида или параметров функции оценки также может улучшить качество работы ИНС. В [41] предлагается следующая методика обучения сетей с оценкой МНК с допуском: устанавливается максимальное значение допуска, сеть обучается, затем величина допуска постепенно снижается с дообучением сети, пока оценка не достигнет требуемого уровня.
Если нейронная сеть заданной структуры не может удовлетворительно решить задачу, возможно несколько вариантов действий:
Добавление новых нейронов, новых слоев.
Увеличение значения характеристики крутизны функции (4.3).
Уменьшение значения характеристики крутизны функции (4.3).
Первые два варианта исходят из предположения, что модель недостаточно сложна или имеет недостаточную величину константы Липшица (4.5) для освоения задачи. Третий вариант предполагает, что нейросетевая функция недостаточно гладка для удовлетворительной аппроксимации. Уменьшение характеристики приведет к сглаживанию функции (4.3).
Для повышения качества модели могут быть использованы различные методы предобработки данных, например, сглаживание и фильтрация, кодирование количественного признака как дискретного, изменение состава обучающей выборки, изменение состава параметров, описывающих исследуемый объект. В настоящее время процесс коррекции нейросетевых моделей носит эвристический характер и основан на знаниях эксперта о конкретной задаче предметной области.
2.10 Конструктор нейронной сети
При проектировании интеллектуальных компонентов важным этапом является настройка структуры нейронной сети на предметную область, структуру и параметры обучающих данных. Под выбором структуры в случае многослойной сети прямого распространения (4.2) понимается определение числа слоев k нейронной сети и числа нейронов mk на каждом слое. Слои нумеруются от слоя, принимающего входные сигналы (1-ый слой) к слою, посылающему сигналы выходному слою(k-ый слой). Выходной (k+1-ый) слой обычно формируется автоматически в соответствии с поставленной задачей. Выбор структуры нейросетевой модели для решения конкретной задачи обычно возложен на пользователя в связи с тем, что в настоящее время отсутствуют универсальные методы определения оптимальной структуры нейросети. В литературе приводится несколько практических замечаний по поводу определения структуры сети в зависимости от задачи. В [41], например, предлагается сравнить оценку константы Липшица для выборки (4.5) и для нейросетевой функции. Для нейронной сети вида (4.2) константа Липшица определяется по формуле
, |
(4.27) |
где с – характеристика крутизны функции (4.3), mi – число нейронов на i-ом слое, m0 – число входных параметров, k – число слоев в сети. Тогда нейросеть может аппроксимировать выборку только в случае, если Ls < LNN. Другим принципом построения структуры сети может быть условие, по которому нейронная сеть должна иметь число настраиваемых параметров, меньшее, чем число примеров в обучающей выборке.
Как отмечалось ранее, методы автоматизированного формирования структуры нейросети делятся на методы наращивания и методы прореживания. В [40,41] отмечается преимущество методов наращивания. В соответствие с принципом автоматизации построения решателя предлагается эвристический метод автоматизированного наращивания структуры нейросети, основанный на методе динамического создания узлов (Dynamic Node Creation) [261] (рис.4.17):
Пользователем задается число слоев k и строится начальная структура сети, содержащая минимальное число нейронов на каждом слое. Определяется максимальное число нейронов на каждом слое mkmax.
Инициализация сети случайными параметрами. t :=1, t0=1.
Такт обучения всех нейронов с незафиксированными параметрами, t:=t+1;
Проверка условий:
H(t) Hmin ; , |
(5.28) |
где t – номер текущего такта обучения, H(ti) – оценка обучения сети на t такте, константа, 0<<1, и q задаются пользователем.
Если условия (5.28) не выполняются, то перейти к п.3, иначе перейти к следующему пункту.
Если H(t) Hmin , то КОНЕЦ ОБУЧЕНИЯ, иначе перейти к следующему пункту.
Проверка условия
-
,
(5.29)
где t0 – момент добавления первого нейрона из тех, параметры которых не зафиксированы, t1 – момент добавления текущего нейрона,константа, 0<<1.
ЕСЛИ условие (4.29) не выполняется, ТО параметры нейронов, добавленные после момента t0 ,фиксируются и в дальнейшем обучении не участвуют, ИНАЧЕ нейроны, добавленные после момента t0 , не внесли существенного улучшения в качество обучения сети и они маркируются для инициализации.
Инициализация нового нейрона и всех маркированных нейронов.
Добавление нового нейрона в слой с наименьшим номером k, для которого mk < mkmax .
Переход к п.3
Надо заметить, что параметры нейронов выходного слоя не фиксируются и всегда участвуют в обучении.
Рис. 4.17. Алгоритм автоматизированного формирования структуры многослойной нейронной сети
В [239] отмечается, что для ряда задач применение метода динамического создания узлов может приводить к значительному увеличению времени построения нейросети, т.к. вся сеть переобучается после добавления каждого нейрона. Предлагаемый алгоритм отличается от метода динамического создания узлов тем, что часть параметров сети фиксируется и не участвует в обучении. Это достигается введением условия в п.5 и константы, регулирующей количество обучаемых нейронов. При задании значения близкого к 1, вся сеть будет инициализироваться случайными параметрами после добавления каждого нового узла, что соответствует созданию новой сети. При задании значения , близкого к 0, обучаться будет только добавленный нейрон. Фиксация части параметров сети может значительно ускорить процесс обучения [239].