Исследование возможности применения искусственных нейронных сетей для автоматического управления процессом металлизации
p align="left">Они показали свою эффективность для решения задач распознавания образов. Нейронные сети способны обучаться на основе соотношений "вход-выход", поэтому они могут обеспечить более простые решения для сложных задач управления [2,3,6]. Кроме того, нейроны -- это нелинейные элементы; следовательно, нейронные сети в своей основе являются нелинейными системами, пригодными для решения задач управления, принципиально связанных с наличием нелинейных характеристик. Традиционные методы управления не обеспечивают решения подобных задач. Таким образом, в последнее время интеллектуальное управление стало достаточно подходящим для решения реальных задач [2,14,21,22].Вот основные причины, по которым нейронные сети в последние годы нашли широкое применение как в нейроуправлении, так и во многих других задачах науки и техники [3]: нейронные сети - наилучший из возможных способ аппроксимации и экстраполяции функций. Это справедливо при наличии в процессе обучения нейронных сетей достаточно большого объема обучающей информации, а также грамотного синтеза многослойной нейронной сети, решающей задачу; наличие множественных нелинейных функций активации в многослойной нейронной сети обеспечивает эффективную реализацию достаточно гибких нелинейных преобразований. Это важно для решения задач с существенными нелинейностями, для которых традиционные подходы пока не дают практически реализуемых решений; необходимым условием применения традиционных методов оптимального адаптивного управления является наличие большого объема априорной информации об объекте управления, например, данных математического моделирования. Благодаря способности нейронных сетей к обучению и самообучению для нейроконтроллеров такой объем информации не требуется. В связи с этим можно полагать, что нейроконтроллеры пригодны для управления в условиях существенных неопределенностей; высокая параллельность нейронных сетей является предпосылкой эффективной реализации аппаратной и программно-аппаратной поддержки нейросетевых контроллеров в контуре управления; многократно отмечаемое в литературе по нейронным сетям, но пока недостаточно исследованное свойство нейронных сетей монотонно (а не катастрофически) уменьшать качество работы при увеличении числа вышедших из строя элементов, а также отсутствие изменения качества работы при значительных изменениях параметров схем, реализующих элементы. 3.4 АНАЛИЗ До 1998 г. система автоматики металлизации была оснащена зарубежной аппаратурой. В частности, для управления технологическим процессом, системой сигнализации и блокировок на базовом уровне использовали контроллеры SIMATIC S3, для системы измерений, индикации и контроля использовали мнемосхему процесса, систему самописцев, индикаторов и узкопрофильных приборов, на которые выводилась необходимая информация. На данный момент внедряется стандарт открытых систем - поэтапная программа модернизации системы контроля и блокировок на шахтной печи на базе универсальных программируемых промышленных контроллеров фирмы "ЭМИКОН" серии ЭК-2000. Это делает предприятие независимым от одного поставщика АСУТП. Появляется возможность создать информационную связь с АСУП в режиме реального времени. В конечном счёте это означает существенное снижение как прямых, так и косвенных затрат на производство. Данная модернизация явилась следствием следующих факторов: моральный и физический износ оборудования КИПиА и автоматизации; дороговизна запасных частей и комплектующих (для самописцев); невозможность подключения компьютера к контроллерам типа SIMATIC S3, а современные контроллеры независимо от их типа обеспечивают свободный выбор при внедрении или модернизации системы; одним из важнейших факторов был временной, так как ни одна фирма не могла предложить замену (модернизацию) оборудования в сроки капитального ремонта. Но вопрос по созданию автоматической системы управления процессом металлизации пока остаётся открытым. Это, в первую очередь, связано с рядом проблем: практически невозможна формализация процесса, в связи с чем возникают серьёзные затруднения с построением математической модели. Причём, даже если удастся создать такую модель, вопрос о её практической пригодности и полезности вряд ли можно экономически выгодно разрешить. Созданная модель оказалась бы громоздкой, так как должна описывать не только физику технологического процесса, но и учитывать взаимосвязи и возмущения, а это не позволит ей работать в режиме реального времени. модель и её параметры динамически меняются и из-за неформализованности процесса невозможно спрогнозировать его ход. отсутствие во многих традиционных системах управления (в том числе и в системах с самонастройкой) способностей к обучению и дообучению (эти функции в полной мере присущи искусственному интеллекту). Разрешить названные проблемы очень трудно, используя только стандартные методы автоматизации. Из вышесказанного понятно, что использование для автоматизации традиционных подходов практически невозможно, так как отсутствуют данные математического моделирования, а процесс по своей природе нелинеен и подвержен влиянию шумов. В связи с этим, надо искать альтернативные методы автоматизации, которые должны обладать вышеуказанными свойствами. Описанные ранее методы ИИ обладают этими свойствами. 3.5 ВЫВОДЫ Для решения подобных задач необходима либо постоянная работа группы квалифицированных экспертов, либо адаптивные системы автоматизации, каковыми являются нейронные сети. Если создание экспертных систем может выполняться как на базе самоадаптирующихся систем, так и с использованием классических алгоритмов, то задачи управления агрегатами находятся целиком в компетенции систем с самостоятельной адаптацией. В данной дипломной работе предложен метод автоматизации процесса металлизации на базе адаптивного нейросетевого подхода. 4. НЕЙРОННЫЕ СЕТИ 4.1 ЭЛЕМЕНТЫ НЕЙРОННЫХ СЕТЕЙ 4.1.1 Понятие нейрона Основной элемент нейронной сети - это формальный нейрон, осуществляющий операцию нелинейного преобразования суммы произведений входных сигналов на весовые коэффициенты: где X=(x1, x2, …, xn)T - вектор входного сигнала; W=(w1, w2, …, wn) - весовой вектор; F - оператор нелинейного преобразования. На рис. 4.1 представлена схема персептронного нейронного элемента, состоящая из сумматора и блока нелинейного преобразования F. Каждому i-му входу нейрона соответствует весовой коэффициент wi (синапс), характеризующий силу синаптической связи по аналогии с биологическим нейроном. Сумма произведений входных сигналов на весовые коэффициенты называется взвешенной суммой. Она представляет собой скалярное произведение вектора весов на входной вектор: где |W|, |X| - соответственно длины векторов W и X; = W, X - угол между векторами W и X. Длины весового и входного векторов определяются через их координаты: Так как для нейронного элемента длина весового вектора после обучения |W|=const, то величина взвешенной суммы определяется проекцией входного вектора на весовой вектор: где ХW - проекция вектора Х на вектор W. Если входные векторы нормированы, т.е. |X|=const, то величина взвешенной суммы будет зависеть только от угла между векторами Х и W. Тогда при различных входных сигналах взвешенная сумма будет изменяться по косинусоидальному закону. Максимального значения она будет достигать при коллинеарности входного и весового векторов. Если сила связи wi отрицательная, то такая связь называется тормозящей. В противном случае синаптическая связь является усиливающей. Оператор нелинейного преобразования называется функцией активации нейронного элемента, вектор входного сигнала - паттерном входной активности нейронной сети, а вектор выходного сигнала - паттерном выходной активности. 4.1.2 Функции активации нейронов В качестве оператора нелинейного преобразования могут использоваться различные функции, которые определяются в соответствии с решаемой задачей и типом нейронной сети. Пусть Т - порог нейронного элемента, который характеризует расположение функции активации по оси абсцисс. Представим взвешенную сумму как: Рассмотрим наиболее распространенные функции активации нейронных элементов (Табл. 4.1). Пороговая В качестве пороговой функции активации может использоваться биполярная или бинарная функция. Пороговая бинарная функция активации может принимать значения 0 или 1. В случае использования пороговой биполярной функции активации -1 или 1. Линейная функция В этом случае выходное значение нейронного элемента равняется взвешенной сумме у = kS, где k -- коэффициент наклона прямой. Изменение порога линейного элемента эквивалентно сдвигу функции активации по оси абсцисс. Таблица 4.1. Перечень функций активации нейронов |
Наименование функции | Функция | Область значений | | Пороговая бинарная | | 0, 1 | | Пороговая биполярная (сигнатурная) | | -1, 1 | | Сигмоидная (логистическая) | | [0, 1] | | Полулинейная | | | | Линейная | f(S) = kS | | | Радиальная базисная (Гауссова) | | (0, 1) | | Полулинейная с насыщением | | (0, 1) | | Линейная ограниченная (с насыщением) | | (-1,1) | | Гиперболический Тангенс | | (-1,1) | | Модифицированная Пороговая | | -1, 1 | | Биполярная сигмоидная | | [-1,1] | | Треугольная | | (0, 1) | | |
Сигмоидная функция Эта функция является непрерывной, возрастающей функцией в диапазоне значений [0, 1]. Коэффициент ''c'' характеризует ширину сигмоидной функции по оси абсцисс. Сигмоидная функция является монотонной и всюду дифференцируемой. Поэтому она получила широкое распространение в искусственных нейронных сетях. Модифицированная пороговая функция Такая функция используется в двунаправленной ассоциативной памяти. Гиперболический тангенс Функция гиперболического тангенса аналогична биполярной сигмоидной функции. Коэффициент ''c'', как и в случае с сигмоидной функцией, характеризует ширину функции "гиперболический тангенс" по оси абсцисс. Радиально-базисная функция Она характеризуется функцией Гаусса для нормального закона распределения. Среднеквадратичное отклонение характеризует ширину радиально-базисной функции. Величина S в данном случае будет определяться в соответствии с евклидовым расстоянием между входным и весовым векторами: Применение различных функций активации определяется классом решаемых нейронной сетью задач. Помимо перечисленных могут применяться и другие функции активации нейронных элементов, которые адекватно отражают решаемую задачу. 4.2 СТРУКТУРА НЕЙРОННЫХ СЕТЕЙ 4.2.1 Основные понятия Нейронные сети образуются путем соединения нейронов по определенным правилам. Схема соединения нейронов называется структурой (в совокупности с методом обучения - парадигмой) нейронной сети. В общем случае для решения задачи можно использовать нейронную сеть любой структуры. Но на практике было определено, что для наилучшего решения определенных задач подходят только некоторые из структур. Поэтому одной из задач, решаемых в данной работе, является выбор структуры нейронной сети. Все разнообразие структур нейронных сетей принято делить на прямоточные (сети с прямыми связями), сети с обратными связями (рекуррентные, самоорганизующиеся) и гибридные сети. В прямоточных сетях нейроны не связаны обратными связями, т.е. в таких сетях не образуется петель и информация передаётся в одном направлении. К таким сетям относятся сети персептронного типа (простой персептрон, многослойный персептрон). В многослойных сетях с обратным распространением информации, нейроны связаны не только прямыми, но и обратными связями, т.е. в структуре таких сетей образуются петли. К таким сетям относятся, например, рекуррентные, рециркуляционные и сети Кохонена. В прямоточных и рекуррентных сетях структура сети не изменяется при обучении и эксплуатации сети. В самоорганизующихся сетях при обучении могут изменяться не только веса синаптических связей, но и структура сети, количество нейронов в отдельном слое и даже количество слоев в сети. Гибридные сети представляют собой объединение различного рода структур и концепций обучения сетей. 4.2.2 Сети прямого распространения информации Однослойные сети Рассмотрим нейронные сети, состоящие из одного слоя нейронных элементов, который осуществляет обработку входной информации. Такие сети принято изображать в виде двухслойной нейронной сети, где первый слой нейронных элементов является распределительным, а второй обрабатывающим. Распределительный слой передает входные сигналы на обрабатывающий слой нейронных элементов, который преобразует входную информацию в соответствии с синаптическими связями и функцией активации (рис. 5.3). При этом каждый нейрон распределительного слоя имеет синаптические связи со всеми нейронами обрабатывающего слоя. Тогда выходное значение j-го нейронного элемента второго слоя можно представить как: где Tj - порог j-го нейронного элемента выходного слоя; wij - сила синаптической связи между i-м нейроном распределительного слоя и j-м нейроном обрабатывающего слоя. Совокупность весовых коэффициентов сети можно представить в виде матрицы размерностью п х т: Тогда вектор-столбец взвешенной суммы в матричном виде определяется следующим образом:\ где T - вектор-столбец порогов нейронных элементов второго слоя. Однослойный персептрон Данную структуру предложил американский ученый Ф. Розенблатт в 1959 г. для нейронной сети, которую он назвал персептроном. Персептрон - это сеть, состоящая из S, А и R нейронных элементов (рис. 5.4). Нейроны слоя S называются сенсорными и предназначены для формирования входных сигналов в результате внешних воздействий. Нейроны слоя А называются ассоциативными и предназначены для непосредственной обработки входной информации. Нейроны слоя R называются эффекторными. Они служат для передачи сигналов возбуждения к соответствующему объекту. В сетях персептронного типа нейрон одного слоя связан со всеми нейронам другого слоя и не связан с нейронами своего собственного слоя. Простой персептрон состоит всего из двух слоев - входного и выходного. На входной слой подаются независимые и зависимые переменные. Нейроны входного слоя обрабатывают поступившую информацию и передают ее нейронам выходного слоя. Нейроны выходного слоя, в свою очередь, обрабатывают поступившую информацию и выдают ее на выход сети. Многослойные сети Многослойная нейронная сеть способна осуществлять любое отображение входных векторов в выходные. Архитектура такой сети состоит из множества слоев нейронных элементов. Входной слой (input layer) нейронных элементов выполняет распределительные функции. Выходной слой (output layer) нейронов служит для обработки информации от предыдущих слоев и выдачи результатов. Слои нейронных элементов, расположенные между входным и выходным слоями, называются промежуточными или скрытыми (hidden layers). Как и выходной слой, скрытые слои являются обрабатывающими. Выход каждого нейронного элемента предыдущего слоя нейронной сети соединен синаптическими связями со всеми входами нейронных элементов следующего слоя. Таким образом, топология многослойной нейронной сети является однородной и регулярной (рис. 5.5). В качестве функции активации нейронных элементов обычно используется гиперболический тангенс или сигмоидная функция. Многослойный персептрон В многослойном персептроне помимо входного и выходного слоев добавляются скрытые слои. Они представляют собой нейроны, которые не имеют непосредственных входов исходных данных, а связаны только с выходами входного слоя и с входом выходного слоя. Таким образом, скрытые слои дополнительно преобразуют информацию и добавляют нелинейности в модели (рис. 5.5). Простой персептрон хорошо справляется с задачами классификации. Каждому выходу нейронной сети сопоставляется определенный класс входного набора данных. Обученная нейронная сеть анализирует полученную информацию и активизирует только один выход - тот, который соответствует классу входного набора. Простой персептрон не способен решать большинство других практических задач. Многослойный персептрон с сигмоидной функцией активации нейронов способен аппроксимировать любую функциональную зависимость и, таким образом, способен решать большой круг самых разнообразных задач. Но при этом заранее не известно ни нужное число слоев сети, ни нужное количество скрытых нейронов, ни необходимое для обучения сети время. В большинстве случаев эти задачи решаются при конструировании сети эмпирическим путем. 4.2.3 Сети обратного распространения информации 4.2.3.1 Многослойные сети Рекуррентные (Recurrent networks), рециркуляционные (Recirculation networks) и релаксационные нейронные сети характеризуются как прямым (feed forward), так и обратным (feed back) распространением информации. При этом обратное распространение информации осуществляется по-разному для таких нейронных сетей. В рециркуляционных нейронных сетях распространение информации происходит по двунаправленным связям, которые имеют в различных направлениях разные весовые коэффициенты. При обратном распространении сигналов в таких сетях осуществляется их преобразование с целью восстановления входного образа. При прямом распространении сигналов происходит сжатие входных данных. В результате осуществляется рециркуляция информации. Обучение рециркуляционных нейронных сетей производится без учителя. Рекуррентные нейронные сети характеризуются обучением с учителем и обратными связями, по которым передаются результаты обработки сетью данных на предыдущем этапе. В результате этого входом рекуррентной нейронной сети в каждый фиксированный момент времени является вектор входных данных и результаты обработки информации сетью на предыдущем этапе. Обучение таких сетей базируется на алгоритме обратного распространения ошибки. Это дало повод, несмотря на различия между рекуррентными и рециркуляционными нейронными сетями, отнести их к одному классу. Рекуррентные сети Рекуррентными нейронными сетями называются такие сети, в которых выходы нейронных элементов последующих слоев имеют синаптические соединения с нейронами предшествующих слоев. Это приводит к возможности учета результатов преобразования нейронной сетью информации на предыдущем этапе для обработки входного вектора на следующем этапе функционирования сети. Рекуррентные сети могут использоваться для решения задач прогнозирования и управления. Существуют различные варианты архитектур рекуррентных нейронных сетей. В 1986 г. Джордан (Jordan) предложил рекуррентную сеть (рис. 5.6), в которой выходы нейронных элементов последнего слоя соединены посредством специальных входных нейронов с нейронами промежуточного слоя. Такие входные нейронные элементы называются контекстными нейронами (context units). Они распределяют выходные данные нейронной сети на нейронные элементы промежуточного слоя. Число контекстных нейронов равняется числу выходных нейронных элементов рекуррентной сети. В качестве выходного слоя таких сетей используются нейронные элементы с линейной функцией активации. Тогда выходное значение j-го нейронного элемента последнего слоя определяется по формуле: где vij - весовой коэффициент между i-м нейроном промежуточного и j-м нейроном выходного слоев; pi(t) - выходное значение i-го нейрона промежуточного слоя; Tj - пороговое значение j-го нейрона выходного слоя. Взвешенная сумма i-ro нейронного элемента промежуточного слоя определяется следующим образом: где wji - весовой коэффициент между j-м нейроном входного и i-м нейроном промежуточного слоев; р - число нейронов выходного слоя; wki - весовой коэффициент между k-м контекстным нейроном и i-м нейроном промежуточного слоя; Тj - пороговое значение i-го нейрона промежуточного слоя; n - размерность входного вектора. Тогда выходное значение i-го нейрона скрытого слоя: pi(t)=F(Si(t)) (5.2.1.) В качестве функции нелинейного преобразования F обычно используется гиперболический тангенс или сигмоидная функция. Другой вариант рекуррентной нейронной сети предложил Элман (Elman) в 1990 году. В такой сети выходы нейронных элементов промежуточного слоя соединяются с контекстными нейронами входного слоя. Тогда взвешенная сумма i-го нейронного элемента промежуточного слоя: где т - число нейронов промежуточного слоя; pk(t-1) - выходное значение k-го нейрона промежуточного слоя. Выходное значение k-го нейрона промежуточного слоя определяется следующим образом: pk(t-1)=F(Si(t-1))(5.2.3.) Для построения рекуррентных нейронных сетей можно использовать также два приведенных выше подхода. В этом случае существуют обратные связи к контекстным нейронам, как от нейронных элементов выходного, так и промежуточного слоев. Число контекстных нейронов входного слоя равняется общему числу нейронов промежуточного и выходного слоев. Тогда: где p - число нейронов выходного слоя. Рециркуляционные нейронные сети Рециркуляционные сети характеризуются как прямым У = f (X), так и обратным Х = f (У) преобразованием информации. Задача такого преобразования - достижение наилучшего автопрогноза или самовоспроизводимости вектора Х. Рециркуляционные нейронные сети применяются для сжатия (прямое преобразование) и восстановления исходной (обратное преобразование) информации. Такие сети являются самоорганизующимися в процессе работы, где обучение производится без учителя. Они были предложены в 1988 г. Теоретической основой рециркуляционных нейронных сетей служит анализ главных компонент (principal component analysis). Этот метод применяется в статистике для сжатия информации без существенных потерь её информативности. Он состоит в линейном ортогональном преобразовании входного вектора X размерности n в выходной вектор Y размерности p, где p < n. При этом компоненты вектора Y являются некоррелированными ,и общая дисперсия после преобразования остаётся неизменной. Рециркуляционная нейронная сеть представляет собой совокупность двух слоев нейронных элементов, которые соединены между собой двунаправленными связями (рис. 5.8). Каждый из слоев нейронных элементов может использоваться в качестве входного или выходного. Если слой нейронных элементов служит в качестве входного, то он выполняет распределительные функции. В противном случае нейронные элементы слоя являются обрабатывающими. Весовые коэффициенты, соответствующие прямым и обратным связям, характеризуются матрицей весовых коэффициентов W и W'. Для наглядности рециркуляционную сеть можно представить в развернутом виде, как показано на рис. 5.9. Такое представление сети является эквивалентным и характеризует полный цикл преобразования информации. При этом промежуточный слой нейронных элементов производит кодирование (сжатие) входных данных X, а последний слой - восстановление сжатой информации Y. Слой нейронной сети, соответствующий матрице связи W, назовем прямым, а соответствующий матрице связей W' - обратным. Рециркуляционная сеть предназначена для сжатия данных и восстановления сжатой информации. Сжатие данных осуществляется при прямом преобразовании информации в соответствии с выражением Y=F(WTX) (5.2.5.) Восстановление или реконструкция данных происходит при обратном преобразовании информации: X=F(W'Y) (5.2.6.) В качестве функции активации нейронных элементов F может использоваться как линейная, так и нелинейная функции. При использовании линейной функции активации.Релаксационные нейронные сети Релаксационные нейронные сети характеризуются прямым и обратным распространением информации между слоями сети. В основе функционирования таких сетей лежит итеративный принцип работы. Он заключается в том, что на каждой итерации происходит обработка данных, полученных на предыдущем шаге. Такая циркуляция происходит до тех пор, пока не установится состояние равновесия. При этом состояния нейронных элементов перестают изменяться и характеризуются стационарными значениями. Для анализа устойчивости релаксационных нейронных сетей используются функции Ляпунова. Такие сети применяются в качестве ассоциативной памяти и для решения комбинаторных задач оптимизации. К релаксационным относятся нейронные сети Хопфилда, Хемминга, двунаправленная ассоциативная память и машина Больцмана. В 1982 г. американский биофизик Д. Хопфилд (Hopfield) представил математический анализ релаксационных сетей с обратными связями. В основе анализа лежит теория изинговых спинов, которая используется для изучения ферромагнетиков при низких температурах. Поэтому такие нейронные сети получили название сетей Хопфилда. Нейронная сеть Хопфилда характеризуется обратными связями. В ней каждый нейрон имеет синаптические связи со всеми остальными нейронами сети. Архитектуру такой сети представим в виде двух слоёв нейронных элементов (рис. 5.10). При этом первый слой является распределительным, а второй слой нейронных элементов осуществляет нелинейное преобразование взвешенной суммы: где yi(t+1) - выходное значение i-го нейронного элемента в момент времени t+1; F - оператор нелинейного преобразования; Ti - пороговое значение i-го нейрона. В матричной форме модель Хопфилда можно представить как: Y(t+1)=F (S(t)); S(t)=WTY(t)-T (5.2.8.) При этом используемые векторы имеют вид: S=[S1, S2,…,Sn]T; Y=[y1, y2,…,yn]T; T=[T1, T2,…,Tn]T; (5.2.9.) В качестве матрицы весовых коэффициентов Хопфилд использовал симметричную матрицу (wij=wji) с нулевой главной диагональю (wii=0). Последнее условие соответствует отсутствию обратной связи нейронного элемента на себя. В качестве функции активации нейронных элементов F может служит как пороговая, и непрерывная функции, например сигмоидная или гиперболический тангенс. Сеть Хопфилда может использоваться в качестве ассоциативной памяти. В этом случая она способна распознавать зашумлённые или искажённые образы. Для обучения нейронной сети Хопфилда используется правило Хебба. В 1987 г. Р. Липпманом (Lippman) была предложена нейронная сеть Хэмминга (Hamming Network). Она представляет собой релаксационную, многослойную нейронную сеть с обратными связями между отдельными слоями. Сеть Хэмминга применяется в качестве ассоциативной памяти. При распознавании образов она использует в качестве меры близости расстояние Хэмминга. Весовые коэффициенты и пороги сети Хэмминга определяются из условия задачи, поэтому такая сеть является нейронной сетью с фиксированными связями. Сеть Хэмминга является многослойной, состоящей из различных классов нейронных сетей. Пусть имеется m образов, каждый из которых имеет размерность n: Тогда нейронная сеть Хэмминга будет состоять из сети с прямыми связями, сети Хопфилда и слоя выходных нейронов (рис. 5.11). Сеть с прямыми связями состоит из n входных распределительных и m выходных нейронных элементов. Она вычисляет меру подобия между входными и эталонными образами, хранящимися в ней. В качестве меры подобия используется число одинаковых разрядов между входным и эталонным образом. Сеть Хопфилда используется для разрешения возникающих конфликтов, когда входной паттерн является подобным нескольким эталонным образам, хранящимся в сети. При этом на выходе сети остаётся активным только один нейрон-победитель. Выходной слой нейронной сети состоит из m нейронов, каждый из которых имеет пороговую функцию активации. Он предназначен для преобразования выходной активности нейрона-победителя сети Хэмминга в единичное значение. При этом значения всех остальных нейронов выходного слоя устанавливаются в нулевое состояние. Таким образом, происходит идентификация входного паттерна, который кодируется номером нейрона выходного слоя, имеющим единичное значение. Если входной образ не совпадает с эталонным, то на выходе сети Хэмминга будет формироваться такой эталонный паттерн, который имеет минимальное расстояние Хэмминга по отношению к выходному образу. В 1988 г. Б. Коско предложил дальнейшее развитие сети Хопфилда - двунаправленную ассоциативную память, представляющей собой релаксационную сеть с циркуляцией информации. Двунаправленная ассоциативная память состоит из двух слоёв нейронных элементов. Нейроны каждого из слоёв могут быть как входными, так и выходными. Архитектура двунаправленной ассоциативной памяти аналогична рециркуляционной нейронной сети (рис. 5.8). Однако принципы функционирования таких сетей разные. 4.2.3.2 Саморганизующиеся нейронные сети Самоорганизующиеся нейронные сети (self-organising networks) характеризуются обучением без учителя, в результате которого происходит адаптация сети к решаемой задаче. К таким сетям относятся нейронные сети Кохонена, адаптивного резонанса и рециркуляционные сети (см. п. 5.2.3.1). В каждой из этих сетей самоорганизация происходит в результате различных механизмов обучения. Наиболее известными среди самоорганизующихся нейронных сетей являются сети, которые разработал в 80-х годах финский ученый Т.Кохонен (Kohonen). Нейронные сети Кохонена осуществляют топологическое упорядочивание входного пространства паттернов. Они широко применяются в задачах распознавания образов, оптимизации и управления. Самоорганизующиеся нейронные сети используются для решения различных задач: кластеризации, векторного квантования, сокращения размерности входного пространства, выделения характерных признаков и т.д. При кластеризации входные образы группируются в кластеры, причем каждому кластеру ставится в соответствие отдельный нейрон. Векторное квантование применяется для сжатия данных. Для обучения самоорганизующихся нейронных сетей используется конкурентный метод, который был предложен в 1976 г. С. Гроссбергом (S. Grossberg) и затем развит в работах финского ученого Т. Кохонена (Т. Kohonen). Сети адаптивного резонанса Нейронные сети адаптивного резонанса были предложены С. Гроссбергом (S.Grossberg) в 1976 г. Они основываются на теории адаптивного резонанса (Adaptive Resonance Theory). В соответствии с ней такие нейронные сети называются ART-сетями. Резонанс в них происходит при идентификации какого-либо события или образа. В процессе функционирования ART-сетей в них происходит циркуляция информации до тех пор, пока не наступит состояния резонанса. Нейронные сети адаптивного резонанса обучаются без учителя и характеризуются самоорганизацией в процессе работы. Они могут использоваться для распознавания образов, обработки речевых сигналов и в задачах управления. Теория адаптивного резонанса базируется на следующих основных принципах: 1. Адаптация входного паттерна к паттернам, хранящимся в сети, осуществляется при помощи резонанса. 2. Резонанс происходит при идентификации входного образа, когда он максимально совпадает с образом, хранящимся в сети. В процессе функционирования сеть резонирует до тех пор, пока не выделит паттерн наименее отличающийся от входного, или не зарезервирует новый класс. 3. В процессе адаптации входного паттерна к образам, имеющимся в сети, происходит его контрастное усиление. Оно характеризуется тем, что только отличительные особенности входного паттерна отображаются на синаптические веса. Это напоминает процесс биологической эволюции, когда отдельные признаки усиливаются, а другие ослабляются. 4. Хранение информации осуществляется в кратковременной (short-term-memory) и долговременной (long-term memory) памяти. Кратковременная память хранит входной паттерн, который должен быть декодирован, а долговременная соответствует образам, которые хранятся в нейронной сети. Отсюда следует, что теория адаптивного резонанса имеет биологические предпосылки. Так, долговременная и кратковременная память соответствует типам памяти, которые имеются у человека. Явление резонанса играет большую роль, как при самоорганизации индивида, так и биологической системы. Постановка задачи при распознавании образов методом адаптивного резонанса состоит в следующем. Необходимо найти такие синаптические векторы W1,W2,...,Wm, которые разбивают входное пространство паттернов на различные кластеры. Каждый кластер имеет размер, который характеризуется угловым расстоянием (рис. 5.15) и соответствующей ему величиной = cos , называемой параметром бдительности. Если имеет маленькое значение, то входные векторы будут отображаться на большие кластеры, в противном случае на маленькие (рис. 5.15). В соответствии с параметром бдительности нейронная сеть должна каждый раз решать, принадлежит ли входной вектор уже имеющемуся кластеру, или резервировать для него новый кластер с соответствующим весовым вектором. Это обеспечивает, с одной стороны, пластичность сети, так как каждый раз сеть может реагировать на незнакомый образ и, с другой стороны, стабильность, так как уже идентифицированные кластеры не размываются посредством новых входных векторов. Существуют различные модели нейронных сетей, основанных на теории адаптивного резонанса. В общем случае архитектура таких сетей представлена на рис. 5.16. Она состоит из двух слоев, которые соединены между собой прямыми и обратными синаптическими связями. Весовой вектор W характеризует прямые синаптические связи, а вектор V - обратные синаптические связи (рис. 5.16). Информация, хранящаяся в этих связях, характеризует долговременную память (LTM), активизация нейронов каждого из слоев - кратковременную память (STM). При помощи конкурентного слоя входной паттерн отображается в соответствующий кластер. Сравнивающий слой анализирует степень совпадения входного и выделенного сетью образа. При достаточной степени совпадения наступает резонанс, что соответствует идентификации образа. Для описания функционирования и обучения таких сетей С. Гроссберг использовал дифференциальные уравнения. Используя функцию Ляпунова, С.Гроссберг доказал сходимость нейронных сетей, в основе которых лежит теория адаптивного резонанса. 4.2.4 Гибридные нейронные сети Гибридные нейронные сети представляют собой объединение различного рода нейронных сетей и концепций их обучения. Они предназначены для решения различного рода задач, таких как распознавание образов, прогнозирование, аппроксимация функций и т. д. Нейронные сети встречного распространения Нейронные сети встречного распространения (Counterpropagation networks) были предложены в 1987 г. Р. Хечт-Нильсоном (Hecht-Nielsen). Они являются дальнейшим расширением нейронных сетей Кохонена и предназначены для аппроксимации функций. В отличие от сети Кохонена, которая разбивает входное n- мерное пространство на разные области, сеть встречного распространения ставит в соответствие каждой области числовое значение аппроксимируемой функции. Она характеризуется сочетанием двух подходов к обучению: с учителем и без учителя. Существуют различные варианты нейронных сетей встречного распространения, которые используют разные методы аппроксимации функций. Нейронные сети с радиально-базисной функцией Нейронные сети с радиально-базисной функцией (Radial Basis Function Network) являются дальнейшим развитием сетей встречного распространения. Они были предложены в 1989 г. и предназначены для решения задач распознавания образов, прогнозирования, сжатия данных и аппроксимации функций. Нейроны входного слоя выполняют распределительные функции. Промежуточный слой состоит из нейронов Кохонена. Каждый элемент скрытого слоя использует в качестве активационной функции радиальную базисную функцию типа гауссовой, а в качестве выходного слоя используются нейронные элементы с линейной функцией активации. 4.3 ОБУЧЕНИЕ НЕЙРОННЫХ СЕТЕЙ 4.3.1 Структура сети Способность к обучению является фундаментальным свойством мозга. В контексте ИНС процесс обучения может рассматриваться как настройка архитектуры сети и весов связей для эффективного выполнения специальной задачи. Обычно нейронная сеть должна настроить веса связей по имеющейся обучающей выборке. Функционирование сети улучшается по мере итеративной настройки весовых коэффициентов. Свойство сети обучаться на примерах делает их более привлекательными по сравнению с системами, которые следуют определенной системе правил функционирования, сформулированной экспертами. Теория обучения рассматривает три фундаментальных свойства, связанных с обучением по примерам: емкость, сложность образцов и вычислительная сложность. Под емкостью понимается сколько образцов может запомнить сеть, и какие функции и границы принятия решений могут быть на ней сформированы. Сложность образцов определяет число обучающих примеров, необходимых для достижения способности сети к обобщению. Слишком малое число примеров может вызвать переобученность сети, когда она хорошо функционирует на примерах обучающей выборки, но плохо - на тестовых примерах, подчиненных тому же статистическому распределению. Для конструирования процесса обучения, прежде всего, необходимо иметь модель внешней среды, в которой функционирует нейронная сеть - знать доступную для сети информацию. Эта модель определяет парадигму обучения. Во-вторых, необходимо понять, как (по какому алгоритму) модифицировать весовые параметры сети - какие правила обучения управляют процессом настройки. Алгоритм обучения означает процедуру, в которой используются правила обучения для настройки весов. Эффективность обучения многослойных нейронных сетей зависит от числа слоев, числа элементов в скрытых слоях нейронной сети и начальной инициализации весовых коэффициентов. Разная инициализация весовых коэффициентов нейронной сети может приводить к различным решениям задачи. Важную роль здесь играет размер случайно инициализируемых синаптических связей. Так, для сигмоидной функции активации нейронных элементов, если весовые коэффициенты будут иметь большие значения (положительные или отрицательные), то выходная активность нейронных элементов будет близка к единице или нулю. Это приведет к тому, что процесс обучения остановится в ближайшем, локальном минимуме от стартовой точки. Рекомендуется случайно выбирать значения весовых коэффициентов, которые имеют следующий порядок: где -- число нейронных элементов в слое . Другой способ - случайным образом инициализировать весовые коэффициенты в диапазоне [-0,05; 0,05] или [-0,1; 0,1]. При этом пороговые значения нейронных элементов устанавливаются в начальный момент времени в единичные значения. Большую роль для эффективности обучения играет архитектура нейронной сети. Размерность входного и выходного слоев нейронной сети определяется из условия решаемой задачи или обучающей выборки. Как было доказано в [16], при помощи трехслойной нейронной сети можно аппроксимировать любую функцию со сколь угодно заданной точностью. При этом точность аппроксимации зависит от числа нейронов в скрытом слое. Чем больше число нейронных элементов в скрытом слое, тем больше точность. Однако при слишком большой размерности скрытого слоя может наступить явление, называемое перетренировкой сети, так как слишком большое число нейронов в скрытом слое ухудшает обобщающие способности нейронных сетей. Поэтому число нейронных элементов в скрытом слое должно быть меньше числа тренировочных образцов. С другой стороны, при слишком малой размерности скрытого слоя можно попасть в нежелательный локальный минимум или процесс обучения будет слишком длительным. Поэтому здесь необходим разумный компромисс. Для обеспечения требуемой точности и обобщающей способности можно использовать нейронную сеть с двумя скрытыми слоями, размерность которых меньше, чем при использовании трехслойной сети. Однако нейронные сети, которые имеют несколько скрытых слоев, обучаются значительно медленнее. Исходя из проведенных в данном разделе рассуждений, можно сделать следующие выводы: нейронная сеть с одним скрытым слоем позволяет осуществить любое отображение входных сигналов в выходные; число нейронных элементов в промежуточном слое должно быть меньше числа тренировочных образцов; мощность нейронной сети можно увеличивать как за счет числа нейронов в слое, так и за счет числа слоев. Если на нейронную сеть накладываются ограничения, и она не может решить поставленную задачу, то необходимо увеличивать число скрытых слоев нейронной сети; случайная инициализация весовых коэффициентов нейронной сети должна проходить в достаточно узком диапазоне значений. 4.3.2 Алгоритмы обучения Существуют три парадигмы обучения: "с учителем", "без учителя" (самообучение) и смешанная. В первом случае нейронная сеть располагает правильными ответами (выходами сети) на каждый входной пример. Веса настраиваются так, чтобы сеть производила ответы как можно более близкие к известным правильным ответам. Усиленный вариант обучения с учителем предполагает, что известна только критическая оценка правильности выхода нейронной сети, но не сами правильные значения выхода. Обучение без учителя не требует знания правильных ответов на каждый пример обучающей выборки. В этом случае раскрывается внутренняя структура данных или корреляции между образцами в системе данных, что позволяет распределить образцы по категориям. При смешанном обучении часть весов определяется посредством обучения с учителем, в то время как остальная получается с помощью самообучения. Известны четыре основных типа правил обучения: коррекция по ошибке, машина Больцмана, правило Хебба и обучение методом соревнования.
Страницы: 1, 2, 3, 4
|