
- •Содержание
- •3.2. Многослойный персептрон 34
- •12.1. Обоснование выбора темы и области применения разработки 142
- •12.2. Оценка ожидаемой экономической целесообразности разработки, изготовления и использования проектируемой системы 144
- •12.3. Выводы 151
- •7. Работа с сетью Кохонена. 170
- •Введение
- •Глава 1. Введение в искусственные нейронные сети
- •1.1. Проблемы, решаемые в контексте инс
- •1.2. Краткий исторический обзор
- •1.3. Модель технического нейрона
- •Математическая модель нейрона:
- •1.4. Архитектура нейронной сети
- •1.5. Обучение нейронных сетей
- •1.6. Многослойные сети прямого распространения
- •1.6.1. Многослойный персептрон
- •1.6.3. Нерешенные проблемы
- •1.7. Самоорганизующиеся карты Кохонена
- •1.8. Модели теории адаптивного резонанса
- •1.9. Сеть Хопфилда
- •1.9.1 Ассоциативная память
- •1.9.2. Минимизация энергии
- •Глава 2. Основные функциональные возможности программ моделирования нейронных сетей
- •2.1. Формирование (создание) нейронной сети.
- •2.2. Обучение нейронной сети
- •2.3. Имитация функционирования (тестирование) обученной нейронной сети
- •Глава 3. Персептроны
- •3.1. Однослойный персептрон
- •3.2. Многослойный персептрон
- •3.2.1. Архитектура сети
- •3.2.2. Алгоритм обратного распространения
- •3.2.3. Модификации алгоритма обратного распространения и rprop-алгоритма
- •3.3. Применение многослойных персептронов
- •3.3.1. Решение конкретных задач
- •3.3.2. Естественные координаты
- •3.3.3. Репликативные нейронные сети
- •3.3.4. Практическое использование репликативных нейронных сетей
- •Глава 4. Сети Кохонена
- •4.1. Основной принцип работы сети Кохонена
- •4.2. Сходимость алгоритма самообучения
- •Глава 5. Сети радиальных базисных функций
- •5.1. Архитектура сетей
- •5.2. Интерполяция при помощи центральных функций
- •5.3. Интерполяция с помощью центральных функций и полиномов
- •5.4. Аппроксимация с помощью центральных функций
- •5.5. Вариационное исчисление для решения проблемы аппроксимации с помощью rbf-сетей
- •5.6. Расширение на случай многих функций
- •5.7. Расширение линейной частью
- •5.9. Итеративное дополнительное обучение rbf- и hbf-сетей
- •5.10. Выбор центров и радиусов в rbf-сетях
- •5.10.1. Итеративный алгоритм кластеризации
- •5.10.2. Выбор параметра
- •5.10.3. Расчет выходной весовой матрицы c
- •Глава 6. Нейронные сети и генетические алгоритмы
- •6.1. Эволюция как способ оптимизации.
- •6.2 Генетические алгоритмы
- •6.3. Нейро-генетические способы
- •Глава 7. Система моделирования нейронных сетей Trajan 2.0
- •7.1. Создание сети и обучающей последовательности
- •7.1.1. Создание сети
- •7.1.2. Количество и размерность слоев в сети
- •7.1.3. Создание обучающей последовательности
- •7.1.4. Редактирование набора образцов
- •7.2. Обучение сети
- •7.2.1. Типы сетей
- •7.2.2. Создание обучающей и проверочной последовательностей образов
- •7.2.3. Создание сокращенной обучающей последовательности
- •7.2.4. Визуализация процесса обучения
- •7.2.5. Оптимизация процесса обучения
- •7.2.6. Обучение с перекрестной проверкой
- •7.3. Работа с сетью
- •7.3.1. Возможности сети по работе с образцами
- •7.3.2. Интерпретация классификации
- •7.3.3. Работа с сетью Кохонена.
- •7.4. Генетический алгоритм выбора входных атрибутов
- •7.5. Сохранение результатов работы
- •Глава 8. Экспериментальное исследование эффективности применения нейронных сетей
- •Глава 9. Методика представления, архивирования и обработки обучающей последовательности для алгоритмов обучения нейросетей
- •Глава 10. Возможности использования среды www для дистанционного обучения
- •Глава 11. Создание программ для среды www
- •Глава 12. Технико-экономический анализ и обоснование разработки адаптивного обучающего и контролирующего курсов по нейросетям
- •12.1. Обоснование выбора темы и области применения разработки
- •12.2. Оценка ожидаемой экономической целесообразности разработки, изготовления и использования проектируемой системы
- •12.2.1. Расчет затрат на разрабоку и изготовление предлагаемого курса
- •12.2.2. Расчет экономического эффекта от создания и использования обучающего курса
- •12.3. Выводы
- •Глава 13. Обучение контролирующей системы
- •Глава 14. Дистанционный обучающий и контролирующий курс
- •Содержание обучающего курса
- •Заключение
- •Литература
- •Приложение 1. Лабораторная работа «Кластеризация образов с помощью системы моделирования нейросетей Trajan 2.1»
- •1. Цель работы
- •2. Знания и умения, формируемые данной лабораторной работой
- •3. Постановка задачи
- •4. Принципиальные особенности сетей Кохонена.
- •5. Создание сети Кохонена
- •6. Обучение сети Кохонена
- •7. Работа с сетью Кохонена.
- •8. Задание
- •9. Контрольные вопросы
- •Приложение 2. Вопросы контролирующего курса.
- •Приложение 3. Обучающие последовательности для контролирующей системы
- •Приложение 4. Листинг контролирующей программы.
3.3.2. Естественные координаты
Рассмотрим некий генератор данных в m-мерном пространстве. Предположим, что генерируемые им данные заполняют не все пространство, а лишь некоторое многообразие размерности n, где n << m. Многообразие, на котором расположены данные, можно представлять как сложную поверхность, которая в окрестности каждой своей точки похожа на поверхность n – мерной сферы. Утверждается, что на многообразии существует такая функция распределения, которая сколь угодно близка к исходной функции распределения генератора в смысле средних значений. Это утверждение позволяет вместо исходных данных, представляемых большим числом признаков, рассматривать генератор данных в пространстве небольшого числа измерений. В большинстве практических задач встречается именно такая ситуация.
Естественные координаты вводятся следующим образом. Рассмотрим взаимно-однозначное непрерывное отображение n-мерного многообразия в n-мерный единичный куб. Это означает, что каждый вектор X, лежащий на n-мерном многообразии, представляется вектором с n координатами, причем каждая координата является числом, равномерно распределенным между нулем и единицей.
Метод естественных координат является обобщением метода главных компонент. Естественные координаты точно так же зависят только от внутренней, заранее определенной, вероятностной структуры многообразия данных: равные объемы внутри единичного куба соответствуют множествам с равной вероятностью на многообразии данных, хотя их геометрические размеры могут значительно различаться. Однако в отличие от метода главных компонент, где используются декартовы координаты, естественные координаты могут отражать более сложную вероятностную структуру многообразия данных.
Естественные координаты – это единственная координатная система из независимых компонент, которая обеспечивает оптимальное кодирование информации, с учетом вероятностной структуры генератора данных.
3.3.3. Репликативные нейронные сети
Как построить естественные координаты для какого-либо генератора данных? Рассмотрим репликативную нейронную сеть – многослойный персептрон с тремя скрытыми слоями, число элементов входного и выходного слоев которого одинаково. Первый и третий скрытые слои состоят из обычных для многослойного персептрона элементов, с S-образной передаточной функцией. Размеры этих слоев подбираются в процессе обучения сети.
Для вектора длины m, подаваемого на входной слой, строится его отображение f в единичный куб. Для обученной сети это отображение реализует представление исходного вектора в системе естественных координат u, которое воспроизводится в среднем скрытом слое. Дальнейшее прохождение информации от среднего скрытого слоя до выходного слоя дает отображение g (обратное f) из единичного куба в исходное m-мерное пространство с заданной функцией распределения F(x).
Средний скрытый слой состоит из n элементов, где n – предполагаемая размерность многообразия данных. Передаточная функция элементов среднего скрытого слоя имеет вид наклонной или ступенчатой функции.
Цель обучения репликативной нейронной сети состоит в том, чтобы вектор, воспроизводимый выходным слоем сети, совпадал с вектором, поданным на входной слой. Передаточная функция элементов выходного слоя выбирается линейной. Обучение проводится на обучающей выборке, полученной с помощью генератора данных с функцией распределения F(x). Утверждается, что обученная репликативная нейронная сеть строит в среднем скрытом слое представление исходных векторов в естественных координатах. Таким образом, входной вектор длины m передается на средний слой и там представляется естественными координатами в n-мерном единичном кубе (n << m). Дальнейшая передача информации по сети от среднего скрытого слоя к выходному дает обратное отображение: вектор в естественных координатах переходит в m-мерный вектор, расположенный близко к входному.
Удаление шума. Репликативная сеть имеет еще одно интересное свойство: она способна удалять аддитивный шум, присутствующий в исходных данных. Предположим, что вектор данных состоит из двух слагаемых: информационной части вектора и шумового случайного компонента, выбираемого в каждой точке многообразия данных в соответствии с условной плотностью распределения.
Утверждается, что репликативная нейронная сеть приводит шумовой компонент к среднему значению, и результат, получаемый на выходе сети, является суммой двух слагаемых: информационной части вектора (такая же как и у входного вектора) и среднего значения шума в данной точке многообразия. Если среднее значение равно нулю, то выходной слой воспроизводит правильную информационную компоненту вектора, удаляя случайный шум. То же самое верно и для среднего скрытого слоя, где к вектору естественных координат добавляется среднее значение шума. Полученный результат позволяет объяснить известное наблюдение, что репликативные нейронные сети способны выполнять «чистку» анализируемых данных.
Определение размерности. До сих пор мы предполагали, что размерность многообразия данных n известна. К сожалению, такое бывает достаточно редко. Тем не менее эту размерность можно оценить. Рассмотрим большое количество данных, произведенных генератором и упорядочим их по возрастанию евклидова расстояния до некоторой фиксированной точки из этого же набора. Такое упорядочение данных позволяет оценить размерность многообразия вблизи зафиксированной точки.
Возьмем первые k векторов из упорядоченного набора, рассмотрим гауссовский ковариационный эллипсоид и определим количество не слишком коротких осей эллипсоида. Эту величину назовем локальной размерностью и нарисуем график ее зависимости от числа k. Обычно этот график линейно возрастает при увеличении k, но при некотором его значении наклон графика резко уменьшается и на графике образуется «колено». Соответствующую величину k будем рассматривать как аппроксимацию размерности в окрестности выбранной точки. Повторяя описанную процедуру определения локальной размерности для других точек, находим оценку размерности многообразия данных n, как наибольшее из значений локальной размерности. Найденная размерность n используется в качестве размерности системы естественных координат.
Если значение n, используемое для нахождения естественных координат, меньше, чем реальная размерность многообразия данных, то полученные естественные координаты будут образовывать решетку, заполняющую все пространство, подобно фракталу, похожему на ковер Серпинского. С другой стороны, если значение n больше, чем реальная размерность, то координатные объемы в естественной системе координат будут «сплюснуты» в такие множества, у которых по крайней мере один характерный размер много меньше других. Таким образом, чтобы найти правильное значение размерности, нужно маневрировать между Сциллой заполнения пространства (когда величина размерности выбирается слишком малой) и Харибдой сильной деформации координатной решетки в естественных координатах (когда величина размерности выбрана слишком большой).
Знание размерности многообразия данных и выбор правильного значения величины n может помочь избежать неэффективного использования системы естественных координат. Аналогичное замечание справедливо и для векторов «испорченных» шумом, где также нужно выбрать число элементов в среднем скрытом слое, после чего сеть может быть натренирована для очистки шума.
В заключение скажем несколько слов об обучении репликативных нейронных сетей и настройке архитектуры сети. Известно, что обучение многослойного персептрона с тремя скрытыми слоями – задача весьма сложная. Полутоновое изображение размером 192 х 256 пикселей (слева) было сжато, а затем, с помощью частично обученной репликативной нейронной сети возвращено к исходному размеру. Сначала изображение разделяется на непересекающиеся фрагменты размером 64 х 64 пиксела. Полученный 4096-мерный вектор, компоненты которого являются восьмибитовым числами, означающими яркость пиксела, подается на вход нейронной сети для обучения. Репликативная нейронная сеть имеет m=4096 элементов во входном и выходном слоях, n=40 элементов в среднем скрытом слое и по 410 элементов в первом и третьем скрытых слоях. Реализуемый такой сетью коэффициент сжатия – 102,4 : 1. Количество настраиваемых в процессе обучения весов связей равно 3 396 476. После реконструкции изображения границы между фрагментами были сглажены.
Один из подходов к обучению репликативной нейронной сети основан на том, что мы знаем, каким должен быть выходной сигнал у элементов среднего скрытого слоя. Это должны быть естественные координаты. Таким образом, можно использовать такой метод обучения, благодаря которому элементы среднего скрытого слоя более активно производят выходные сигналы, равномерно и плотно заполняющие внутреннюю часть n- мерного единичного куба, а также обладают свойствами естественных координат. Также очень важно использовать на этапе обучения ступенчатую функцию в качестве передаточной функции элементов среднего скрытого слоя.