Обучение нейронной сети с учителем, как задача многофакторной оптимизации Понятие о задаче оптимизации. Нейронные сети в задачах оптимизации


Постановка задачи оптимизации при обучении нейронной сети

Пусть имеется нейронная сеть, выполняющая преобразование F:XYвекторов X из признакового пространства входовXв вектора Y выходного пространстваY. Сеть находится в состоянии W из пространства состоянийW. Пусть далее имеется обучающая выборка (X,Y),= 1..p. Рассмотрим полную ошибку E, делаемую сетью в состоянии W.

Отметим два свойства полной ошибки. Во-первых, ошибка E=E(W) является функцией состоянияW, определенной на пространстве состояний. По определению, она принимает неотрицательные значения. Во-вторых, в некоторомобученномсостоянии W*, в котором сеть не делает ошибок на обучающей выборке, данная функция принимает нулевое значение. Следовательно, обученные состояния являютсяточками минимумавведенной функции E(W).

Таким образом, задача обучения нейронной сети является задачей поиска минимума функции ошибки в пространстве состояний, и, следовательно, для ее решения могут применяться стандарные методы теории оптимизации. Эта задача относится к классу многофакторных задач, так, например, для однослойного персептрона с N входами и M выходами речь идет о поиске минимума в NxM-мерном пространстве.

На практике могут использоваться нейронные сети в состояниях с некоторым малым значением ошибки, не являющихся в точности минимумами функции ошибки. Другими словами, в качестве решения принимается некоторое состояние из окрестности обученного состояния W*. При этом допустимый уровень ошибки определяется особенностями конкретной прикладной задачи, а также приемлимым для пользователя объемом затрат на обучение.

Задача

Синаптические весовые коэффициенты однослойного персептрона с двумя входами и одним выходом могут принимать значения -1 или 1. Значение порога равно нулю. Рассмотреть задачу обучения такого персептрона логической функции “и”, как задачу многофакторной комбинаторной оптимизации. Для обучающей выборки использовать все комбинации двоичных входов.

Лекция 6. Многослойный персептрон.

Ограничения однослойных нейронных сетей. Необходимость иерархической организации нейронной системы. Многослойный ПЕРСЕПТРОН. Алгоритм обратного распространения ошибок.

Необходимость иерархической организации нейросетевых архитектур.

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

Однако основной проблемой, традиционно ограничивающей возможные сетевые топологии простейшими структурами, является проблема обучения. На этапе обучения сети пред'являются некоторые входные образы, называемые обучающей выборкой, и исследуются получаемые выходные реакции. Цель обучения состоит в приведении наблюдаемых реакций на заданной обучающей выборке к требуемым (адекватным) реакциям путем изменения состояний синаптических связей. Сеть считается обученной, если все реакции на заданном наборе стимулов являются адекватными. Данная классическая схема обучения с учителем требует явного знания ошибок при функционировании каждогонейрона, что, разумеется, затруднено для иерархических систем, где непосредственно контролируются только входы и выходы. Кроме того, необходимая избыточность в иерархических сетях приводит к тому, что состояние обучения может быть реализованомногимиспособами, что делает само понятие “ошибка, делаемая данным нейроном” весьма неопределенным.

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

studfiles.net

GotAI.NET - Материалы - Нейронные сети

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

Задача обучения нейронной сети на примерах.

По своей организации и функциональному назначению искусственная нейронная сеть с несколькими входами и выходами выполняет некоторое преобразование входных стимулов - сенсорной информации о внешнем мире - в выходные управляющие сигналы. Число преобразуемых стимулов равно n - числу входов сети, а число выходных сигналов соответствуе числу выходов m. Совокупность всевозможных входных векторов размерности n образует векторное пространство X, которое мы будем называть признаковым пространством (При рассмотрении соответсвующих пространств предполагается использование обычных векторных операций сложения и умножения на скаляр (подробнее см. Лекцию 2). Аналогично, выходные вектора также формируют признаковое пространство, которое будет обозначаться Y. Теперь нейронную сеть можно мыслить, как некоторую многомерную функцию F: X ® Y , аргумент которой принадлежит признаковому пространству входов, а значение - выходному признаковому пространству.

При произвольном значении синаптических весовых коэффициентов нейронов сети функция, реализуемая сетью также произвольна. Для получения требуемой функции необходим специфический выбор весов. Упорядоченная совокупность всех весовых коэффициентов всех нейронов может быть представлена, как вектор W. Множество всех таких векторов также формирует векторное пространство, называемое пространством состояний или конфигурационным (фазовым) пространством W. Термин "фазовое пространство" пришел из статистической физики систем многих частиц, где под ним понимается совокупность координат и импульсов всех частиц, составляющих систему.

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

Требуемая функция однозначнно описывается путем задания соотвествия каждому вектору признакового пространства X некоторого вектора из пространства Y. В случае сети из одного нейрона в задаче детектирования границы, рассмотренной в конце третьей Лекции, полное описание требуемой функции достигается заданием всего четырех пар векторов. Однако в общем случае, как например, при работе с видеоизображением, признаковые пространства могут иметь высокую размерность, поэтому даже в случае булевых векторов однозначное определение функции становится весьма громоздким (при условии, конечно, если функция не задана явно, например, формулой; однако для явно заданных функций обычно не возникает потребности представления их нейросетевыми моделями). Во многих практических случаях значения требуемых функций для заданных значений аргумента получаются из эксперимента или наблюдений, и, следовательно, известны лишь для ограниченной совокупности векторов. Кроме того, известные значения функции могут содержать погрешности, а отдельные данные могут даже частично противоречить друг другу. По этим причинам перед нейронной сетью обычно ставится задача приближенного представления функции по имеющимся примерам. Имеющиеся в распоряжении исследователя примеры соответствий между векторами, либо специально отобранные из всех примеров наиболее представительные данные называют обучающей выборкой. Обучающая выборка определяется обычно заданием пар векторов, причем в каждой паре один вектор соотвествует стимулу, а второй - требуемой реакции. Обучение нейронной сети состоит в приведении всех векторов стимулов из обучающей выборки требуемым реакциям путем выбора весовых коэффициентов нейронов.

Общая проблема кибернетики, заключающаяся в построении искусственной системы с заданным функциональным поведением, в контексте нейроных сетей понимается, как задача синтеза требуемой искусственной сети. Она может включать в себя следующие подзадачи: 1) выбор существенных для решаемой задачи признаков и формирование признаковых пространств; 2) выбор или разработка архитектуры нейронной сети, адекватной решаемой задаче; 3) получение обучаюшей выборки из наиболее представительных, по мнению эксперта, векторов признаковых пространств; 4) обучение нейронной сети на обучающей выборке.

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

Классификация и категоризация.

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

Эти две интеллектуальные задачи, по-видимому, следует отличать друг от друга. Термин класс можно определить, как совокупность предметов или понятий (образов), выделенных и сгруппированных по определенным признакам или правилам. Под классификацией мы будем понимать отнесение некоторого образа к классу, выполняемое по этим формальным правилам по совокупности признаков. Категория же (если отвлечься от специфического философского характера этого понятия) определяет лишь некоторые общие свойства образов и связи между ними. Задача категоризации, т.е. определения отношения данного образа к некоторой категории, гораздо менее определена, чем задача отношения к классу. Границы различных категорий являются нечеткими, расплывчатыми, и обычно сама категория понимается не через формальное определение, а только в сравнении с другими категориями. Границы классов, напротив, определены достаточно точно - образ относится к данному классу, если известно, что он обладает необходимым числом признаков, характерных для этого класса.

Итак, задачей систем-классификаторов является установление принадлежности образа к одному из формально определенных классов. Примерами такой задачи является задача классификации растений в ботанике, классификация химических веществ по их свойствам и типам возможных реакций, в которые они вступают, и другие. Формальные признаки могут быть определены посредством правил типа “если..-то..”, а системы, оперирующие с такими правилами, получили название экспертных систем. Традиционной областью применения классификаторов на нейронных сетях является экспериментальная физика высоких энергий, где одной из актуальных задач выступает выделение среди множества зарегистрированных в эксперименте событий с элементарными частицами событий, представляющих интерес для данного эксперимента.

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

В случае обучения с учителем (например, в персептроне) формирование категорий происходит методом проб и ошибок на основе примеров с известными ответами, предоставляемыми экспертом. Формирование категорий весьма напоминает процесс обучения у живых организмов, поэтому обычно эксперта называют “супервизором” или учителем. Учитель управляет обучением при помощи изменения параметров связей и, реже, самой топологии сети.

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

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

  Экспертные системы (ЭС) Нейросетевые системы (НС)
Источник знаний Формализованный опыт эксперта, выраженный в виде логических утверждений - правил и фактов, безусловно принимаемых системой Совокупный опыт эксперта-учителя, отбирающего примеры для обучения + индивидуальный опыт обучающейся на этих примерах нейронной сети
Характер знаний Формально-логическое “левополушарное” знание в виде правил Ассоциативное “правополушарное” знание в виде связей между нейронами сети
Развитие знаний В форме расширения совокупности правил и фактов (базы знаний) В форме дообучения на дополнительной последовательности примеров, с уточнением границ категорий и формированием новых категорий
Роль эксперта Задает на основе правил полный объем знаний экспертной системы Отбирает характерные примеры, не формулируя специально обоснование своего выбора
Роль искусственной системы Поиск цепочки фактов и правил для доказательства суждения Формирование индивидуального опыта в форме категорий, получаемых на основе примеров и категоризация образов

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

Обучение нейронной сети с учителем, как задача многофакторной оптимизации.

Понятие о задаче оптимизации.

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

Функция одной действительной переменной f(x) достигает локального минимума в некоторой точке x0, если существует такая d -окрестность этой точки, что для всех x из этой окрестности, т.е. таких, что | x - x0 | < d, имеет место f(x) > f(x0).

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

Математическое определение локального минимума функции в многомерном пространстве имеет тот же вид, если заменить точки x и x0 на вектора, а вместо модуля использовать норму. Поиск минимума для функции многих переменных (многих факторов) является существенно более сложной задачей, чем для одной переменной. Это связано прежде всего с тем, что локальное направление уменьшения значения функции может не соотвествовать нарпавлению движения к точке минимума. Кроме того, с ростом размерности быстро возрастают затраты на вычисление функции.

Решение задачи оптимизации во многом является искусством, общих, заведомо работающих и эффективных в любой ситуации методов нет. Среди часто использемых методов можно рекомендовать симплекс-метод Нелдера, некоторые градиентные методы, а также методы случайного поиска. В Приложении 2 для решения задачи оптимизации рассматриваются методы имитации отжига и генетического поиска, относящиеся к семеству методов случайного поиска.

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

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

Постановка задачи оптимизации при обучении нейронной сети

Пусть имеется нейронная сеть, выполняющая преобразование F:X®Y векторов X из признакового пространства входов X в вектора Y выходного пространства Y. Сеть находится в состоянии W из пространства состояний W. Пусть далее имеется обучающая выборка (Xa,Ya), a = 1..p. Рассмотрим полную ошибку E, делаемую сетью в состоянии W.

Отметим два свойства полной ошибки. Во-первых, ошибка E=E(W) является функцией состояния W, определенной на пространстве состояний. По определению, она принимает неотрицательные значения. Во-вторых, в некотором обученном состоянии W*, в котором сеть не делает ошибок на обучающей выборке, данная функция принимает нулевое значение. Следовательно, обученные состояния являются точками минимума введенной функции E(W).

Таким образом, задача обучения нейронной сети является задачей поиска минимума функции ошибки в пространстве состояний, и, следовательно, для ее решения могут применяться стандарные методы теории оптимизации. Эта задача относится к классу многофакторных задач, так, например, для однослойного персептрона с N входами и M выходами речь идет о поиске минимума в NxM-мерном пространстве.

На практике могут использоваться нейронные сети в состояниях с некоторым малым значением ошибки, не являющихся в точности минимумами функции ошибки. Другими словами, в качестве решения принимается некоторое состояние из окрестности обученного состояния W*. При этом допустимый уровень ошибки определяется особенностями конкретной прикладной задачи, а также приемлимым для пользователя объемом затрат на обучение.

Задача

Синаптические весовые коэффициенты однослойного персептрона с двумя входами и одним выходом могут принимать значения -1 или 1. Значение порога равно нулю. Рассмотреть задачу обучения такого персептрона логической функции “и”, как задачу многофакторной комбинаторной оптимизации. Для обучающей выборки использовать все комбинации двоичных входов.

www.gotai.net

Постановка задачи оптимизации при обучении нейронной сети

Пусть имеется нейронная сеть, выполняющая преобразование F:X®Y векторов X из признакового пространства входов X в вектора Y выходного пространства Y. Сеть находится в состоянии W из пространства состояний W. Пусть далее имеется обучающая выборка (Xa,Ya), a = 1..p. Рассмотрим полную ошибку E, делаемую сетью в состоянии W.

Отметим два свойства полной ошибки. Во-первых, ошибка E=E(W) является функцией состояния W, определенной на пространстве состояний. По определению, она принимает неотрицательные значения. Во-вторых, в некотором обученном состоянии W*, в котором сеть не делает ошибок на обучающей выборке, данная функция принимает нулевое значение. Следовательно, обученные состояния являются точками минимума введенной функции E(W).

Таким образом, задача обучения нейронной сети является задачей поиска минимума функции ошибки в пространстве состояний, и, следовательно, для ее решения могут применяться стандарные методы теории оптимизации. Эта задача относится к классу многофакторных задач, так, например, для однослойного персептрона с N входами и M выходами речь идет о поиске минимума в NxM-мерном пространстве.

На практике могут использоваться нейронные сети в состояниях с некоторым малым значением ошибки, не являющихся в точности минимумами функции ошибки. Другими словами, в качестве решения принимается некоторое состояние из окрестности обученного состояния W*. При этом допустимый уровень ошибки определяется особенностями конкретной прикладной задачи, а также приемлимым для пользователя объемом затрат на обучение.

  1. Алгоритм обратного распространения ошибки для обучения многослойного персептрона. Недостатки.

Перцептро́н, или персептрон (англ. perceptron от лат. perceptio — восприятие; нем. perzeptron) — математическая и компьютерная модель восприятия информации мозгом (кибернетическая модель мозга), предложенная Фрэнком Розенблаттом в 1957 году и реализованная в виде электронной машины «Марк-1» в 1960 году. Перцептрон стал одной из первых моделей нейросетей, а «Марк-1» — первым в мире нейрокомпьютером. Несмотря на свою простоту, перцептрон способен обучаться и решать довольно сложные задачи. Основная математическая задача, с которой он справляется, — это линейное разделение любых нелинейных множеств, так называемое обеспечение линейной сепарабельности.

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

  1. с одним скрытым слоем;

  2. с пороговой передаточной функцией;

  3. с прямым распространением сигнала.

Метод обратного распространения ошибки (англ. backpropagation)— метод обучения многослойного перцептрона. Впервые метод был описан в 1974 г. А.И. Галушкиным[1], а также независимо и одновременно Полом Дж. Вербосом[2]. Далее существенно развит в 1986 г. Дэвидом И. Румельхартом, Дж. Е. Хинтоном и Рональдом Дж. Вильямсом[3] и независимо и одновременно С.И. Барцевым и В.А. Охониным (Красноярская группа)[4].. Это итеративный градиентный алгоритм, который используется с целью минимизации ошибки работы многослойного перцептрона и получения желаемого выхода.

Основная идея этого метода состоит в распространении сигналов ошибки от выходов сети к её входам, в направлении, обратном прямому распространению сигналов в обычном режиме работы. Барцев и Охонин предложили сразу общий метод («принцип двойственности»), приложимый к более широкому классу систем, включая системы с запаздыванием, распределённые системы, и т. п.[5]

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

Архитектура многослойного перцептрона

Алгоритм: BackPropagation

  1. Инициализировать маленькими случайными значениями,

  2. Повторить NUMBER_OF_STEPS раз:

Для всех d от 1 до m:

    1. Подать на вход сети и подсчитать выходыкаждого узла.

    2. Для всех

.

    1. Для каждого уровня l, начиная с предпоследнего:

Для каждого узла j уровня l вычислить

.

    1. Для каждого ребра сети {i, j}

.

.

  1. Выдать значения .

где — коэффициент инерциальности для сглаживания резких скачков при перемещении по поверхности целевой функции

studfiles.net

Обучение нейронной сети с учителем, как задача многофакторной оптимизации. Понятие о задаче оптимизации.

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

Функция одной действительной переменной f(x) достигает локального минимума в некоторой точке x0, если существует такая-окрестность этой точки, что для всех x из этой окрестности, т.е. таких, что | x - x0| <, имеет место f(x) > f(x0).

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

Математическое определение локального минимума функции в многомерном пространстве имеет тот же вид, если заменить точки x и x0на вектора, а вместо модуля использовать норму. Поиск минимума для функции многих переменных (многихфакторов) является существенно более сложной задачей, чем для одной переменной. Это связано прежде всего с тем, чтолокальноенаправление уменьшения значения функции может не соотвествовать нарпавлению движения к точке минимума. Кроме того, с ростом размерности быстро возрастают затраты на вычисление функции.

Решение задачи оптимизации во многом является искусством, общих, заведомо работающих и эффективных в любой ситуации методов нет. Среди часто использемых методов можно рекомендовать симплекс-метод Нелдера, некоторые градиентные методы, а также методы случайного поиска. В Приложении 2 для решения задачи оптимизации рассматриваются методы имитации отжига и генетического поиска, относящиеся к семеству методов случайного поиска.

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

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

studfiles.net

Обучение нейронной сети с учителем, как задача многофакторной оптимизации Понятие о задаче оптимизации

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

Функция одной действительной переменной f(x) достигает локального минимума в некоторой точке x0, если существует такая-окрестность этой точки, что для всех x из этой окрестности, т.е. таких, что | x - x0| <, имеет место f(x) > f(x0).

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

Математическое определение локального минимума функции в многомерном пространстве имеет тот же вид, если заменить точки x и x0 на вектора, а вместо модуля использовать норму. Поиск минимума для функции многих переменных (многих факторов) является существенно более сложной задачей, чем для одной переменной. Это связано прежде всего с тем, что локальное направление уменьшения значения функции может не соотвествовать нарпавлению движения к точке минимума. Кроме того, с ростом размерности быстро возрастают затраты на вычисление функции.

Решение задачи оптимизации во многом является искусством, общих, заведомо работающих и эффективных в любой ситуации методов нет. Среди часто использемых методов можно рекомендовать симплекс-метод Нелдера, некоторые градиентные методы, а также методы случайного поиска. В Приложении 2 для решения задачи оптимизации рассматриваются методы имитации отжига и генетического поиска, относящиеся к семеству методов случайного поиска.

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

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

studfiles.net

Формирование начальных условий для ускорения настройки коэффициентов нейронных сетей в задачах оптимизации

ISBN 5-7262-0634-7. НЕЙРОИНФОРМАТИКА – 2006. Часть 2

А.И. Галушкин

НИИ автоматической аппаратуры им. В.С. Семенихина, Москва

[email protected] Формирование начальных условий

для ускорения настройки коэффициентов

нейронных сетей в задачах оптимизации Аннотация

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

Введение. Многослойные нейронные сети при решении математических задач, как правило, формируют многоэкстремальный функцио­нал оптимизации, причем наилучшее, а зачастую единственное, решение достигается в процессе настройки системой глобаль­ного экстремума данного функционала. В подавляющем боль­шинстве работ выбор начальных условий предлагается осуще­ствлять следующими способами: Множество задач, решаемых в нейросетевом логическом базисе, будет расширяться [4, 5] и соответственно для них необ­ходимо разрабатывать методы формирования начальных усло­вий для настройки многослойных нейронных сетей.

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

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

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

Системы линейных уравнений. Основная идея выбора начальных условий для двух вариантов исследуемых нейросетевых алгоритмов решения систем алгебраических уравнений представлена на рис. 1, а и б. Рис. 1. Схема нейросетевого алгоритма решения системы

алгебраических уравнений: а – вариант 1; б – вариант 2

В первом варианте нейросетевого алгоритма решения систем алгебраических уравнений в случае однослойной нейронной сети начальные значения вектора X предложено вычислять, решая N уравнений одной переменной, формируя их коэффициенты выделением (главной) диагонали матрицы А, либо N уравнений двух переменных, формируя их коэффициенты выделением двух диагоналей матрицы А (главной и соседней с ней сверху или снизу). Можно рассматривать вари­ант выделения трех диагоналей матрицы А (главной и двух соседних). Выбор числа диагоналей в матрице определяется допустимым временем решения диагональных систем уравнений обычными методами для вычисления Х(0) последующего решения системы линейных уравнений нейросетевым алгоритмом. Как отмечалось многократно ранее, эта процедура эффективна для систем боль­шой размерности. В данном случае проблемой остается выбор начальных значений весовых коэф­фициентов во втором, третьем и т.д. слоях многослойной нейронной сети, решающей систему ал­гебраических уравнений в структуре, представленной на рис. 1, а.

В работе [5] предложен модифицированный подход к нейросетевым алгоритмам решения сис­тем алгебраических уравнений, представленный на рис. 1, б. Здесь входом нейронной сети являются матрица А и вектор b, а выходом - искомое решение X. Основная задача заключается в том, чтобы, формируя выходной сигнал нейронной сети, найденный по первому методу решения систем алгеб­раических уравнений, вычислить коэффициенты нейронной сети, которые удовлетворяли бы соот­ношению X(0)=F{W(0),A,b}, где F – преобразование, осуществляемое нейронной сетью, a W(0) – на­бор начальных значений весовых коэффициентов нейронной сети определенной структуры.

Системы линейных неравенств. При решении систем линейных неравенств выбор начальных условий настройки коэффициентов многослойных нейронных сетей возможно проводить так же как и при решении систем линейных уравнений с соответствующей заменой знаков неравенств в системе неравенств на знаки равенств.

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

С нашей точки зрения, естественным при построении адаптивных аппроксиматоров и экстра­поляторов функций, адаптивных фильтров является выбор в качестве начальных условий настрой­ки многослойных нейронных сетей эквивалентного линейного фильтра. Линейный дискретный фильтр Заде и Рагаззини представляет собой z-фильтр порядка, равного памяти системы фильтра­ции или экстраполяции с коэффициентами, рассчитываемыми как функции памяти N и времени экстраполяции а. Так как линейный фильтр синтезируется, исходя из априорной информации о сигнале известной функциональной формы и аддитивной к полезному сигналу помехе, в частно­сти в виде белого шума, то может существовать несколько наборов весовых коэффициентов фильтров для полезных сигналов различной сложности и соответственно рассчитываемых с раз­личной вычислительной сложностью. Основная задача здесь состоит в том, чтобы пересчитать ко­эффициенты z-фильтра в соответствующие начальные коэффициенты нейронной сети определенной структуры.

Распознавание образов. Впервые задача выбора начальных условий для адаптивной настройки нейронных сетей, решающих задачу распознавания образов была поставлена в работе [1]. В дан­ной работе рассматриваются два метода выбора указанных начальных условий: выбор случайных начальных условий и выбор детерминированных начальных условий. Случайный выбор началь­ных условий производится ввиду многоэкстремальности функционала вторичной оптимизации, связанной с многомодальностью распределений ƒ(X) входного сигнала и ограниченностью струк­туры разомкнутой нейронной сети. Случайные элементы в процедуру поиска экстремума функ­ционала вторичной оптимизации вводятся в связи с необходимостью поиска локальных и глобального экстремумов указанного функционала. Необходимость поиска локальных экстремумов обусловлена необходимостью решения задачи минимизации структуры многослойной нейронной сети при анализе результатов настройки. На первом этапе использования случайных начальных условий (и следующего за ним этапа усреднения результатов настройки по множеству этапов выброса случайных начальных условий) создается впечатление о большом числе локальных экстре­мумов функционала вторичной оптимизации в пространстве настраиваемых коэффициентов. Однако в связи с этим необходимо отметить, что при усложнении структуры разомкнутой нейронной сети увеличивается множественность состояний многослойной нейронной сети, оцениваемая по величине функционала вторичной оптимизации. Иначе говоря, большинство локальных экстрему­мов функционала в пространстве настраиваемых коэффициентов обеспечивают одно и то же каче­ство распознавания. Это замечание необходимо связывать с описываемыми ниже методами оцен­ки качества многослойных нейронных сетей по значению функционала вторичной оптимизации по текущим сигналам в нейронной сети. С учетом вышесказанного, можно отметить правомер­ность подхода к настройке с использованием случайных начальных условий, хотя этот подход, очевидно, вводит избыточность во времени настройки нейронной сети с целью полного изучения входного сигнала (в частности, нахождения глобального экстремума функционала).

Целью введения детерминированных начальных условий является априорное введение ней­ронной сети в область одного из локальных экстремумов функционала вторичной оптимизации в пространстве настраиваемых коэффициентов. На уровне геометрии первого, второго слоя и после­дующих слоев многослойная нейронная сеть должна быть максимально аморфна, рассредоточена, т.е. подготовлена к решению наиболее сложной (с точки зрения модальности ƒ(X) задачи распознавания). Мыслимая конфигурация разделяющей поверхности в этом случае при обучении распо­знаванию двух классов образов представлена на рис. 2 (предварительный вариант). Окончатель­ный вариант может быть определен только при введении критерия аморфности, рассредоточенности. Очевидно, что минимально аморфной и рассредоточенной является многослойная нейронная сеть, в которой все коэффициенты нейронов первого слоя одинаковы и соответствующие разде­ляющие поверхности смещены к «краю» пространства признаков. На рис. 2 пунктиром обозначена физически реализуемая в нейронной сети область пространства признаков. Это распространяется и на режим самообучения, если не указывалась заранее принадлежность клеток рис. 2 к тому или иному классу. На­чальные условия на настраиваемые коэффициенты второго и последующих слоев рассчитываются по геометрии разде­ляющей поверхности, реализуемой нейронами первого слоя с указанием принадлежности областей исходного простран­ства признаков к тому или иному классу. Один из методов выбора детерминированных начальных условий был пред­ложен в работе[1].

Рис. 2. Разделяющая поверхность при выборе начальных условий:

1 – первый класс; 2 – второй класс В заключение данного пункта необходимо отметить, что методы, используемые при выборе начальных условий, можно упорядочить по виду используемой информации:

выбор случайных начальных условий без использова­ния обучающей выборки;

выбор детерминированных начальных условий без использования обучающей выборки;

выбор начальных условий с использованием выборки, этот способ связан с возможностью использования для выбора начальных коэффициентов нейронной сети с фиксированной структурой результатов обучения нейронной сети с переменной структурой [1, 3].

Кластеризация. Впервые задача выбора начальных условий для адаптивной настройки нейронных сетей, решающих задачу кластеризации, была поставлена в работе [1]. Естественным вариантом вы­бора начальных условий процесса адаптации в многослойных нейронных сетях, решающих задачу кластеризации, является построение начальной разделяющей поверхности в многомерном пространстве признаков так, как это показано на рис. 2 без указания принадлежности областей к тому или иному классу. Весовые коэффициенты нейронов первого и последующих слоев формируются исхо­дя из геометрии предполагаемой разделяющей поверхности с равномерным разбиением многомер­ного пространства признаков на области, соответствующие предполагаемым кластерам.

Задача коммивояжера. Задача коммивояжера является частной задачей линейного программиро­вания, в то время как задача линейного программирования является частной задачей оптимизации наряду с задачами квадратичного и нелинейного программирования. Задача коммивояжера заклю­чается в нахождении маршрута минимальной длины между N городами при выходе из определен­ного города и возвращении в него.

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

Моделирование динамических систем. Идентификация динамических систем с помощью ней­ронных сетей наиболее эффективна в случае существенно нелинейных систем, систем с перемен­ными параметрами и структурой, а также многомерных и распределенных систем. В простейшем случае линейной системы идентификация осуществляется подачей на вход системы ступенчатого сигнала любой амплитуды и нахождением z-преобразования переходного процесса. Моделью системы в данном случае является z-фильтр с коэффициентами z-передаточной функции. В случае более сложных систем, указанных выше, начальную информацию об объекте моделирования можно получить, подавая на вход последовательность ступенчатых сигналов различной амплитуды в диапазоне изменения входных сигналов от ну­ля до ХВХmах (рис. 3). При этом вследст­вие существенной нелинейности объек­та, реакции на различные ступенчатые сигналы не будут линейно-зависимыми, т.е. z-преобразование реакций системы на ступенчатые входные сигналы различной амплитуды можно использовать для формирования начальных значений коэффициентов нейронов первого слоя многослойной нейронной сети, идентифицирующей исследуемый объект. Предметом исследований здесь остается вопрос формирования начальных значений коэффициен­тов последующих слоев многослойной нейронной сети с полными последовательными связями, а также коэффициентов обратных связей в случае использования для идентификации нейронных се­тей с настраиваемыми обратными связями. Рис. 3. К выбору начальных условий адаптации в многослойных нейронных сетях

при решении задачи идентификации динамиче­ских систем

Заключение. Выбор начальных условий для настройки многослойных нейронных сетей является важным сред­ством для увеличения скорости сходимости адаптивных алгоритмов и обеспечения сходимости к глобальному экстремуму функционала оптимизации. К сожалению, этому вопросу практически не уделяется внимание в классической вычислительной математике при разработке итерационных алгоритмов решения сложных задач. Каждая задача, решаемая в нейросетевом логическом базисе, требует своего способа формирования начальных условий для адаптивного алгоритма настройки многослойной нейронной сети. Это будет предметом развития данной работы в дальнейшем, при решении класса задач, решаемых в нейросетевом логическом базисе. Список литературы
  1. Галушкин А.И. Синтез многослойных систем распознавания образов. - М.: "Энергия", 1974.
  2. Галушкин А.И., Судариков В.А., Шабанов Е.В. Нейроматематика: методы решения задач на нейрокомпьютерах. - Математическое моделирование, АНСССР, 1991. т. 3, № 8.
  3. Галушкин A.И. Теория нейронных сетей, (серия "Нейрокомпьютеры и их применение", книга 1). - М.: ИПРЖР, 2000.
  4. Нейроматематика (серия ''Нейрокомпьютеры и их применение", книга 6). - М.: ИПРЖР, 2002.
  5. Галушкин A.И. Нейроматематика (проблемы развития).- Нейрокомпьютеры: разработка и применение, № 1. 2003.
  6. Галушкин A.И. Расчет и проектирование оптимальных дискретных фильтров // В сб. "Автоматическое управление и вычислительная техника". - Машгиз, 1968, вып. 9.
  7. Galushkin A.I. Neurocomputers and neuromathematics.- Washington, 1968.
  8. Бутенко А.А., Галушкин А.Н., Пантюхин Д.В. Нейросетевые методы решения систем линейных алгебраических урав­нений. VIII Всероссийская конференция «Нейрокомпьютеры и их применение», НКП-2002. - М., 21-22 марта 2002 г.
  9. Пантюхин Д.В. Нейросетевые методы решения систем линейных алгебраических уравнений. XLV Научная конферен­ция Московского физико-технического института «Современные проблемы фундаментальных и прикладных наук». - Москва - Долгопрудный. 29-30 Ноября 2002 г.. 4.1, с. 79.
  10. Пантюхин Д.В. Вариант нейросетевого алгоритма решения систем линейных алгебраических уравнений. Междуна­родная конференция «Цифровая обработка сигналов и ее применение» DSPA-2003, 12-14 Марта 2003г., - Москва, Россия, т.2, с. 607.

УДК 004.032.26(06) Нейронные сети

voeto.ru

5. Свойства процессов обучения в нейронных сетях. - Computational Neuroscience (вычислительная нейронаука) Теория и приложения искусственных нейронных сетей

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

Задача обучения нейронной сети на примерах.

По своей организации и функциональному назначению искусственная нейронная сеть с несколькими входами и выходами выполняет некоторое преобразование входных стимулов - сенсорной информации о внешнем мире - в выходные управляющие сигналы. Число преобразуемых стимулов равно n - числу входов сети, а число выходных сигналов соответствуе числу выходов m. Совокупность всевозможных входных векторов размерности n образует векторное пространство X, которое мы будем называть признаковым пространством (При рассмотрении соответсвующих пространств предполагается использование обычных векторных операций сложения и умножения на скаляр (подробнее см. Лекцию 2). Аналогично,выходные вектора также формируют признаковое пространство, которое будет обозначаться Y. Теперь нейронную сеть можно мыслить, как некоторую многомерную функцию F: X® Y , аргумент которой принадлежит признаковому пространству входов, а значение - выходному признаковому пространству.

При произвольном значении синаптических весовых коэффициентов нейронов сети функция, реализуемая сетью также произвольна. Для получения требуемой функции необходим специфический выбор весов. Упорядоченная совокупность всех весовых коэффициентов всех нейронов может быть представлена, как вектор W. Множество всех таких векторов также формирует векторное пространство, называемое пространством состояний или конфигурационным (фазовым) пространством W. Термин "фазовое пространство" пришел из статистической физики систем многих частиц, где под ним понимается совокупность координат и импульсов всех частиц, составляющих систему.

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

Требуемая функция однозначнно описывается путем задания соотвествия каждому вектору признакового пространства X некоторого вектора из пространства Y. В случае сети из одного нейрона в задаче детектирования границы, рассмотренной в конце третьей Лекции, полное описание требуемой функции достигается заданием всего четырех пар векторов. Однако в общем случае, как например, при работе с видеоизображением, признаковые пространства могут иметь высокую размерность, поэтому даже в случае булевых векторов однозначное определение функции становится весьма громоздким (при условии, конечно, если функция не задана явно, например, формулой; однако для явно заданных функций обычно не возникает потребности представления их нейросетевыми моделями). Во многих практических случаях значения требуемых функций для заданных значений аргумента получаются из эксперимента или наблюдений, и, следовательно, известны лишь для ограниченной совокупности векторов. Кроме того, известные значения функции могут содержать погрешности, а отдельные данные могут даже частично противоречить друг другу. По этим причинам перед нейронной сетью обычно ставится задача приближенного представления функции по имеющимся примерам. Имеющиеся в распоряжении исследователя примеры соответствий между векторами, либо специально отобранные из всех примеров наиболее представительные данные называют обучающей выборкой. Обучающая выборка определяется обычно заданием пар векторов, причем в каждой паре один вектор соотвествует стимулу, а второй - требуемой реакции. Обучение нейронной сети состоит в приведении всех векторов стимулов из обучающей выборки требуемым реакциям путем выбора весовых коэффициентов нейронов.

Общая проблема кибернетики, заключающаяся в построении искусственной системы с заданным функциональным поведением, в контексте нейроных сетей понимается, как задачасинтеза требуемой искусственной сети. Она может включать в себя следующие подзадачи: 1) выбор существенных для решаемой задачи признаков и формирование признаковых пространств; 2) выбор или разработка архитектуры нейронной сети, адекватной решаемой задаче; 3) получение обучаюшей выборки из наиболее представительных, по мнению эксперта, векторов признаковых пространств; 4) обучение нейронной сети на обучающей выборке.

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

Классификация и категоризация.

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

Эти две интеллектуальные задачи, по-видимому, следует отличать друг от друга. Термин класс можно определить, как совокупность предметов или понятий (образов), выделенных и сгруппированных по определенным признакам или правилам. Под классификацией мы будем понимать отнесение некоторого образа к классу, выполняемое по этим формальным правилам по совокупности признаков. Категория же (если отвлечься от специфического философского характера этого понятия) определяет лишь некоторые общие свойства образов и связи между ними. Задача категоризации, т.е. определения отношения данного образа к некоторой категории, гораздо менее определена, чем задача отношения к классу. Границы различных категорий являются нечеткими, расплывчатыми, и обычно сама категория понимается не через формальное определение, а только в сравнении с другими категориями. Границы классов, напротив, определены достаточно точно - образ относится к данному классу, если известно, что он обладает необходимым числом признаков, характерных для этого класса.

Итак, задачей систем-классификаторов является установление принадлежности образа к одному из формально определенных классов. Примерами такой задачи является задача классификации растений в ботанике, классификация химических веществ по их свойствам и типам возможных реакций, в которые они вступают, и другие. Формальные признаки могут быть определены посредством правил типа “если..-то..”, а системы, оперирующие с такими правилами, получили название экспертных систем. Традиционной областью применения классификаторов на нейронных сетях является экспериментальная физика высоких энергий, где одной из актуальных задач выступает выделение среди множества зарегистрированных в эксперименте событий с элементарными частицами событий, представляющих интерес для данного эксперимента.

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

В случае обучения с учителем (например, в персептроне) формирование категорий происходит методом проб и ошибок на основе примеров с известными ответами, предоставляемыми экспертом. Формирование категорий весьма напоминает процесс обучения у живых организмов, поэтому обычно эксперта называют “супервизором” или учителем. Учитель управляет обучением при помощи изменения параметров связей и, реже, самой топологии сети.

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

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

  Экспертные системы (ЭС) Нейросетевые системы (НС)
Источник знаний Формализованный опыт эксперта, выраженный в виде логических утверждений - правил и фактов, безусловно принимаемых системой Совокупный опыт эксперта-учителя, отбирающего примеры для обучения + индивидуальный опыт обучающейся на этих примерах нейронной сети
Характер знаний Формально-логическое “левополушарное” знание в виде правил Ассоциативное “правополушарное” знание в виде связей между нейронами сети
Развитие знаний В форме расширения совокупности правил и фактов (базы знаний) В форме дообучения на дополнительной последовательности примеров, с уточнением границ категорий и формированием новых категорий

Роль эксперта

Задает на основе правил полный объем знаний экспертной системы Отбирает характерные примеры, не формулируя специально обоснование своего выбора
Роль искусственной системы Поиск цепочки фактов и правил для доказательства суждения Формирование индивидуального опыта в форме категорий, получаемых на основе примеров и категоризация образов

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

Обучение нейронной сети с учителем, как задача многофакторной оптимизации.

Понятие о задаче оптимизации.

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

 

Функция одной действительной переменной f(x) достигает локального минимума в некоторой точке x0, если существует такая d -окрестность этой точки, что для всех x из этой окрестности, т.е. таких, что | x - x0 | < d, имеет место f(x) > f(x0).

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

Математическое определение локального минимума функции в многомерном пространстве имеет тот же вид, если заменить точки x и x0 на вектора, а вместо модуля использовать норму. Поиск минимума для функции многих переменных (многих факторов) является существенно более сложной задачей, чем для одной переменной. Это связано прежде всего с тем, что локальное направление уменьшения значения функции может не соотвествовать нарпавлению движения к точке минимума. Кроме того, с ростом размерности быстро возрастают затраты на вычисление функции.

Решение задачи оптимизации во многом является искусством, общих, заведомо работающих и эффективных в любой ситуации методов нет. Среди часто использемых методов можно рекомендовать симплекс-метод Нелдера, некоторые градиентные методы, а также методы случайного поиска. В Приложении 2 для решения задачи оптимизации рассматриваются методы имитации отжига и генетического поиска, относящиеся к семеству методов случайного поиска.

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

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

Постановка задачи оптимизации при обучении нейронной сети

Пусть имеется нейронная сеть, выполняющая преобразование F:X®Y векторов X из признакового пространства входов X в вектора Y выходного пространства Y. Сеть находится в состоянии W из пространства состояний W. Пусть далее имеется обучающая выборка (Xa,Ya), a = 1..p. Рассмотрим полную ошибку E, делаемую сетью в состоянии W.

 

Отметим два свойства полной ошибки. Во-первых, ошибка E=E(W) является функцией состояния W, определенной на пространстве состояний. По определению, она принимает неотрицательные значения. Во-вторых, в некотором обученном состоянии W*, в котором сеть не делает ошибок на обучающей выборке, данная функция принимает нулевое значение. Следовательно, обученные состояния являются точками минимума введенной функции E(W).

Таким образом, задача обучения нейронной сети является задачей поиска минимума функции ошибки в пространстве состояний, и, следовательно, для ее решения могут применяться стандарные методы теории оптимизации. Эта задача относится к классу многофакторных задач, так, например, для однослойного персептрона с N входами и M выходами речь идет о поиске минимума в NxM-мерном пространстве.

На практике могут использоваться нейронные сети в состояниях с некоторым малым значением ошибки, не являющихся в точности минимумами функции ошибки. Другими словами, в качестве решения принимается некоторое состояние из окрестности обученного состояния W*. При этом допустимый уровень ошибки определяется особенностями конкретной прикладной задачи, а также приемлимым для пользователя объемом затрат на обучение.

Задача

Синаптические весовые коэффициенты однослойного персептрона с двумя входами и одним выходом могут принимать значения -1 или 1. Значение порога равно нулю. Рассмотреть задачу обучения такого персептрона логической функции “и”, как задачу многофакторной комбинаторной оптимизации. Для обучающей выборки использовать все комбинации двоичных входов.

intellect.ml


Prostoy-Site | Все права защищены © 2018 | Карта сайта