Реферат по предмету "Разное"


13 Архитектура нейронных сетей

Глава 13. Нейронные сети13.1. Архитектура нейронных сетейПовседневная практика финансовых рынков находится в интересном противоречии с академической точкой зрения, согласно которой изменения цен финансовых активов происходят мгновенно, без каких-либо усилий эф­фективно отражая всю доступную информацию. Существование сотен мар­кет-мейкеров, трейдеров и фондовых менеджеров, работа которых состоит в том, чтобы делать прибыль, говорит о том, что участники рынка вносят оп­ределенный вклад в общую информацию. Более того, так как эта работа сто­ит дорого, то и объем привнесенной информации должен быть значитель­ным. Существование сотен маркет-мейкеров, трейдеров и фондовых менедже­ров на финансовых рынках говорит о том, что все они обрабатывают финан­совую информацию и принимают решения. Труднее ответить на вопрос о том, как конкретно на финансовых рын­ках возникает и используется информация, которая может приносить при­быль. Исследования почти всегда показывают, что никакая устойчивая стратегия торговли не дает постоянной прибыли, и это, во всяком случае, так, если учитывать еще и расходы на совершение сделок. Хорошо извест­но также, что участники рынка (и весь рынок в целом) могут принимать совершенно различные решения исходя из сходной или даже неизменной информации. Участники рынка в своей работе, по-видимому, не ограничиваются ли­нейными состоятельными правилами принятия решений, а имеют в запасе несколько сценариев действий, и то, какой из них пускается в ход, зависит подчас от внешних незаметных признаков. Один из возможных подходов к многомерным и зачастую нелинейным информационным рядам финансового рынка заключается в том, чтобы по возможности подражать образцам пове­дения участников рынка, используя такие методы искусственного интеллек­та, как экспертные системы или нейронные сети. На моделирование процессов принятия решений этими методами было потрачено много усилий. Оказалось, однако, что экспертные системы в сложных ситуациях хорошо работают лишь тогда, когда системе присуща внутренняя стационарность (т.е. когда на каждый входной вектор имеется единственный не меняющийся со временем ответ). Под такое описание в какой-то степени подходят задачи комплексной классификации или распре­деления кредитов, но оно представляется совершенно неубедительным для финансовых рынков с их непрерывными структурными изменениями. В слу­чае с финансовыми рынками едва ли можно утверждать, что можно достичь полного или хотя бы в определенной степени адекватного знания о данной предметной области, в то время как для экспертных систем с алгоритмами, основанными на правилах, это - обычное требование. Нейронные сети предлагают совершенно новые многообещающие воз­можности для банков и других финансовых институтов, которым по роду своей деятельности приходится решать задачи в условиях небольших апри­орных знаний о среде. Характер финансовых рынков драматическим обра­зом меняется с тех пор, как вследствие ослабления контроля, приватизации и появления новых финансовых инструментов национальные рынки слились в общемировые, а в большинстве секторов рынка возросла свобода финансо­вых операций. Очевидно, что сами основы управления риском и доходом не могли не претерпеть изменений, коль скоро возможности диверсификации и стратегии защиты от риска изменились до неузнаваемости. Одной из сфер применения нейронных сетей для ряда ведущих банков стала проблема изменений позиции доллара США на валютном рынке при большом числе неизменных объективных показателей. Возможности такого применения облегчаются тем, что имеются огромные базы экономических данных, - ведь сложные модели всегда прожорливы в отношении инфор­мации. Котировки облигаций и арбитраж - еще одна область, где задачи рас­ширения и сужения риска, разницы в процентных ставках и ликвидности, глубины и ликвидности рынка являются благоприятным материалом для мощных вычислительных методов. Еще одной проблемой, значение которой в последнее время возрастает, является моделирование потоков средств между институциональными инве­сторами. Падение процентных ставок сыграло решающую роль в повышении привлекательности инвестиционных фондов открытого типа и индексных фондов, а наличие опционов и фьючерсов на их акции позволяет приобре­тать их с полной или частичной гарантией. Очевидно, что задача оптимизации в условиях, когда число частичных ограничений равновесия бесконечно (например, на фьючерсном и наличном рынке любого товара в любом секторе рынка играют роль перекрестные раз­ности процентных ставок), становится проблемой чрезвычайной сложности, все более выходящей за рамки возможностей любого трейдера. В таких обстоятельствах трейдеры и, следовательно, любые системы, стремящиеся описать их поведение, в каждый момент времени должны бу­дут сосредоточивать внимание на уменьшении размерности задачи. Хорошо известно такое явление, как ценная бумага повышенного спроса. Когда речь идет о финансовом секторе, можно с уверенностью утвер­ждать, что первые результаты, полученные при применении нейронных се­тей, являются весьма обнадеживающими, и исследования в этой области нужно развивать. Как это уже было с экспертными системами, может потре­боваться несколько лет, прежде чем финансовые институты достаточно уве­рятся в возможностях нейронных сетей и станут использовать их на полную мощность. Характер разработок в области нейронных сетей принципиально от­личается от экспертных систем: последние построены на утверждениях типа «если..., то...», которые нарабатываются в результате длительного процесса обучения системы, а прогресс достигается, главным образом, за счет более удачного использования формально-логических структур. В основе нейронных сетей лежит преимущественно-поведенческий подход к решаемой задаче: сеть «учится на примерах» и подстраивает свои пара­метры при помощи так называемых алгоритмов обучения через механизм обратной связи.^ РАЗЛИЧНЫЕ ВИДЫ ИСКУССТВЕННЫХ НЕЙРОНОВ Искусственным нейроном (рис. 12.1) называется простой элемент, снача­ла вычисляющий взвешенную сумму V входных величин Xj N __ у= ∑ Wixi =Wixi i=l Здесь N- размерность пространства входных сигналов. Затем полученная сумма сравнивается с пороговой величиной (или bias) wo, вслед за чем вступает в действие нелинейная функция активации f (ее можно также охарактеризовать как «решающую функцию»). Коэффициенты {W,} во взвешенной сумме (1) обычно называют синаптическими коэффи­циентами или весами. Саму же взвешенную сумму V мы будем называть потенциалом нейрона i. Выходной сигнал тогда имеет вид f(v) Величину порогового барьера можно рассматривать как еще один весо­вой коэффициент при постоянном входном сигнале. В этом случае мы гово­рим о расширенном входном пространстве: нейрон с N -мерным входом имеет N+ I весовой коэффициент. Если ввести в уравнение пороговую вели­чину WO, оно перепишется так:в зависимости от способа преобразования сигнала и характера функции активации возникают различные виды нейронных структур. Мы будем рас­сматривать только детерминированные нейроны (в противоположность ве­роятностным нейронам, состояние которых в момент t есть случайная функция потенциала и состояния в момент (t-l). Далее, мы будем различать статические нейроны - такие, в которых сигнал передается без задержки,- и динамические, где учитывается возможность таких задержек, учиты­вается ( Входы Синапсы Ячейка Аксон Выход нейрона уРис.13.1.Искусственный нейрон^ РАЗЛИЧНЫЕ ВИДЫ ФУНКЦИИ АКТИВАЦИИ Функции активации f могут быть различных видов: линейная: выходной сигнал нейрона равен его потенциалу, ступенчатая: нейрон принимает решение, выбирая один из двух вариан­тов (активен/неактивен), линейная с насыщением: нейрон выдает значения, промежуточные между двумя предельными значениями А и В многопороговая: выходной сигнал может принимать одно из q значений, определяемых (q -1) порогом внутри предельных значений А и В, сигмоидная: рассматриваются два вида сигмоидных функций: 1________ s = f(V) = 1 +ехр(-bУ)с выходными значениями в промежутке (0,1) и s = f(V) = exp(bY)-1 ехр(by) + 1с выходными значениями от -1 до 1.Коэффициент Ь определяет крутизну сигмоида. Поскольку сигмоидная функция является гладким отображением (∞; +∞)~(0,I), крутизну b можно учесть через величины весов и порогов, и без ограничения общности можно полагать ее равной единице. Возможно, также определить нейроны без насыщения, принимающие на выходе непрерывное множество значений. В задачах классификации выход­ное значение может определяться порогом - при принятии единственного решения,- или быть вероятностным - при определении принадлежности к классу. Чтобы учесть особенности конкретной задачи, могут быть выбраны различные другие виды функции активации - гауссова, синусоидальная, всплески (wavelets) и т.д.^ НЕЙРОННЫЕ СЕТИ С ПРЯМОЙ СВЯЗЬЮМы будем рассматривать два вида нейронных сетей: статические, кото­рые также часто называют сетями с прямой связью (feed-forward), и динами­ческие, или рекуррентные сети. В этом разделе мы займемся статическими сетями. Сети других видов будут кратко рассмотрены позднее. Нейронные сети с прямой связью состоят из статических нейронов, так что сигнал на выходе сети появляется в тот же момент, когда подаются сиг­налы на вход. Организация (топология) сети может быть различной. Если не все составляющие ее нейроны являются выходными, говорят, что сеть со­держит скрытые нейроны. Наиболее общий тип архитектуры сети получает­ся в случае, когда все нейроны связаны друг с другом (но без обратных свя­зей). В конкретных задачах нейроны обычно бывают сгруппированы в слои. На рис. 13.2 показана типовая схема нейронной сети с прямой связью с од­ним скрытым слоем.Выходные элементыСкрытые элементыВходные элементы^ Рис. 13.2. Нейронная сеть с прямой связью с одним скрытым слоем (пopoгu не отмечены) Интересно отметить, что, согласно теоретическим результатам, нейрон­ные сети с прямой связью и с сигмоидными функциями являются универ­сальным средством для приближения (аппроксимации) функций. Говоря точнее, любую вещественнозначную функцию нескольких переменных на компактной области определения можно сколь угодно точно приблизить с помощью трехслойной сети. При этом правда, мы не знаем ни размеров се­ти, которая для этого потребуется, ни значений весов. Более того, из доказа­тельства этих результатов видно, что число скрытых элементов неограни­ченно возрастает при увеличении точности приближения. Сети с прямой связью, действительно, могут служить универсальным средством для ап­проксимации, но нет никакого правила, позволяющего найти оптимальную топологию сети для данной задачи. Таким образом, задача построения нейронной сети является нетривиальной. Вопросы о том, сколько нужно взять скрытых слоев, сколько элементов в каждом из них, сколько связей и какие обучающие параметры, в имеющей­ся литературе, как правило, трактуются облегченно.^ 13.2. Алгоритмы обучения нейронных сетейНа этапе обучения происходит вычисление синаптических коэффициентов в процессе решения нейронной сетью задач (классификации, предсказания временных рядов и др.), в которых нужный ответ определяется не по прави­лам, а с помощью примеров, сгруппированных в обучающие множества. Та­кое множество состоит из ряда примеров с указанным для каждого из них зна­чением выходного параметра, которое было бы желательно получить. Дейст­вия, которые при этом происходят, можно назвать контролируемым обучени­ем: «учитель» подает на вход сети вектор исходных данных, а на выходной узел сообщает желаемое значение результата вычислений. Контролируемое обучение нейронной сети можно рассматривать как решение оптимизацион­ной задачи. Ее целью является минимизация функции ошибок, или невязки, она данном множестве примеров путем выбора значений весов W^ КРИТЕРИИ ОШИБОК Целью процедуры минимизации является отыскание глобального ми­нимума - достижение его называется сходимостью процесса обучения. Поскольку невязка зависит от весов нелинейно, получить решение в ана­литической форме невозможно, и поиск глобального минимума осущест­вляется посредством итерационного процесса - так называемого обу­чающего алгоритма, который исследует поверхность невязки и стремит­ся обнаружить на ней точку глобального минимума. Обычно в качестве меры погрешности берется средняя квадратичная ошибка (MSE), которая определяется как сумма квадратов разностей между желаемой величиной выхода dk и реально полученными на сети значениями Yk для каждого примера k.Здесь р- число примеров в обучающем множестве. Наряду с такой мерой погрешности широко используется расстояние Кульбака-Лейблера, связанное с критерием максимума правдоподобия:а также некоторые другие.Минимизация величины Е осуществляется с помощью градиентных ме­тодов. В первом из них берется градиент общей ошибки, и веса W пересчи­тываются каждый раз после обработки всей совокупности обучающих при­меров (Здесь 10 - определяемый пользователем параметр, который называется величиной градиентного шага или коэффициентом обучения. Другой возможный метод носит название стохастического градиентного. В нем веса пересчитываются после каждого просчета всех примеров из одного обучающего множества, и при этом используется частичная функция стоимости, соответствующая этому, например k-MY, множеству^ ОБРАТНОЕ РАСПРОСТРАНЕНИЕ ОШИБКИРассмотрим теперь наиболее распространенный алгоритм обучения нейронных сетей с прямой связью - алгоритм обратного распростране­ния ошибки (Backpropagation, ВР), представляющий собой развитие так называемого обобщенного дельта-прав WIG. Этот алгоритм был заново от­крыт и популяризирован в 1986 г. Ру-мельхартом и МакКлеландом из зна­менитой Группы по изучению параллельных распределенных процессов в Массачусетском технологическом институте. В этом пункте мы более под­робно рассмотрим математическую суть алгоритма. Он является алгорит­мом градиентного спуска, минимизирующим суммарную квадратичную ошибкуЗдесь индекс i пробегает все выходы многослойной сети. Основная идея ВР состоит в том, чтобы вычислять чувствительность ошибки сети к изменениям весов. Для этого нужно вычислить частные про­изводные от ошибки по весам. Пусть обучающее множество состоит из Р образцов, и входы k-гo образца обозначены через {х l}. Вычисление част­ных производных осуществляется по правилу цепи: вес входа i-гo нейрона, идущего от j-гo нейрона, пересчитывается по формулегде 1:: - длина шага в направлении, обратном к градиенту. Если рассмотреть отдельно k-й образец, то соответствующее изменение весов равно Множитель O~ вычисляется через аналогичные множители из после­ дующего слоя, и ошибка, таким образом, передается в обратном направле­нии. Для выходных элементов мы получаем:Для скрытых элементов множитель 0k определяется так:( 13.13)с учетом того, что (13.14) получаем: (13.15) где индекс h пробегает номера всех нейронов, на которые воздействует i-й нейрон. Данный алгоритм используется в двух вариантах. В стохастическом ва­рианте веса пересчитываются каждый раз после просчета очередного образ­ца, а в «эпохальном», или off-line варианте, веса меняются после просчета всего обучающего множества.ИМПУЛЬС Другой часто применяемый прием состоит в том, что при определении направления поиска к текущему градиенту добавляется поправка - вектор смещения предыдущего шага, взятый с некоторым коэффициентом. Можно сказать, что учитывается уже имеющийся импульс движения. Окончательная формула для изменения весов выглядит так: где 11- число в интервале (0,1), которое задается пользователем. Часто значенией волевым образом задается равным 0.9, безотносительно к специфике задачи и архитектуре сети. Нужно отметить, что метод импуль­са очень чувствителен к способу упорядочения примеров в обучающем множестве. Если подряд попал ось несколько примеров из одного класса, импульс станет очень большим, и это нарушит ход процесса обучения. Ска­занное еще раз свидетельствует о. необходимости предварительного случай­ного упорядочения обучающего множества.^ ДРУГИЕ АЛГОРИТМЫ ОБУЧЕНИЯНаконец, в последнее время пользуются успехом так называемые генети­ческие алгоритмы, в которых набор весов рассматривается как ИНДИВИД, под­верженный мутациям и скрещиванию, а в качестве показателя его «качества» берется критерий ошибки. По мере того как нарождаются новые поколения, все более вероятным становится появление оптимального индивида.ШУМ в финансовых приложениях данные зашумлены особенно сильно. На­пример, совершение сделок может регистрироваться в базе данных с запо­зданием, причем в разных случаях- с разным. Про пуск значений или не­полную информацию также иногда рассматривают как шум: в таких случаях берется среднее или наилучшее значение, и это, конечно, приводит к зашум­лению базы данных. Отрицательно сказывается на обучении неправильное определение класса объекта в задачах распознавания - это ухудшает спо­собность системы к обобщению при работе с новыми (т.е. не входившими в число образцов) объектами.^ ПЕРЕКРЕСТНОЕ ПОДТВЕРЖДЕНИЕ Для того чтобы устранить произвол в разбиении базы данных, могут быть применены методы повторных проб. Рассмотрим один из таких мето­дов, который называется перекрестным подтверждением. Его идея состо­ит в том, чтобы случайным образом разбить базу данных на q попарно непересекающихся подмножеств. Затем производится q обучений на (q -1) множестве, а ошибка вычисляется по оставшемуся множеству. Если q дос­таточно велико, например, равно 10, каждое обучение задействует большую часть исходных данных. Если процедура обучения надежна, то результаты по q различным моделям должны быть очень близки друг к другу. После этого итоговая характеристика определяется как среднее всех полученных значений ошибки. К сожалению, при применении этого метода объем вы­числений часто оказывается очень большим, так как требуется проделать q обучений, и в реальном приложении с большей размерностью это может быть невыполнимо. В предельном случае, когда q = Р, где Р - общее чис­ло примеров, метод называется пере крестным подтверждением с одним востатке. Такой метод оценки имеет смещение, и разработан метод» складного ножа», уменьшающий этот недостаток ценой еще большего объема вычислений.^ 13.3. Динамические сетиСледующий класс нейронных сетей, который мы рассмотрим, - дина­мические или рекуррентные, сети. Они построены из динамических нейро­нов, чье поведение описывается дифференциальными или разностными уравнениями, как правило, первого порядка. Сеть организована так, что ка­ждый нейрон получает входную информацию от других нейронов (возмож­но, и от себя самого) и из окружающей среды. Этот тип сетей имеет важное значение, так как с его помощью можно моделировать нелинейные динами­ческие системы. Это - весьма общая модель, которую потенциально можно использовать в самых разных приложениях, например: ассоциативная па­мять, нелинейная обработка сигналов, моделирование конечных автоматов, идентификация систем, задачи управления.^ Нейронные сети с временной задержкой Перед тем, как описать собственно динамические сети, рассмотрим, как сеть с прямой связью используется для обработки временных рядов. Метод состоит в том, чтобы разбить временной ряд на несколько отрезков и полу­чить, таким образом, статистический образец для подачи на вход многослой­ной сети с прямой связью. Это осуществляется с помощью, так называемой разветвленной линии задержки (см. рис. 13.3). y(t)X(t)Рис.13.3. Нейронная сеть с временной задержкой Архитектура такой нейронной сети с временной задержкой позволяет моделировать любую конечную временную зависимость вида: y(t) = F[ x(t), x(t - 1), ..., х(у - k)]. (13.17) Поскольку рекуррентные связи отсутствуют, такая сеть может быть обручена при помощи стандартного алгоритма обратного распростране­ния ошибки или какого-то из его многочисленных вариантов. Сети такой конструкции успешно применялись в задачах распознавания речи, пред­сказания нелинейных временных рядов и нахождения закономерностей в хаосе.^ СЕТИ ХОПФИЛДА С помощью рекуррентных сетей Хопфилда можно обрабатывать неупо­рядоченные (рукописные буквы), упорядоченные во времени (временные ряды) или пространстве (графики, грамматики) образцы (рис. 13.4). Рекур­рентная нейронная сеть простейшего вида введена Хопфилдом; она построе­на из N нейронов, связанных каждый с каждым, причем все нейроны явля­ются выходными. Сети такой конструкции используются, главным образом, в качестве ассо­циативной памяти, а также в задачах нелинейной фильтрации данных и грам­матического вывода. Кроме этого, недавно они были применены для предска­зывания и для распознавания закономерностей в поведении цен акций.ВходыРис. 13.4. Сеть Холфилда13.4. Самоорганизующиеся сетиВведенную Кохоненом «самоорганизующуюся карту признаков)} можно рассматривать как вариант нейронной сети. Сеть такого типа рассчитана на самостоятельное обучение: во время обучения сообщать ей правильные от­веты необязательно. В процессе обучения на вход сети подаются различныеобразцы. Сеть улавливает особенности их структуры и разделяет образцы на кластеры, а уже полученная сеть относит каждый вновь поступающий при­мер к одному из кластеров, руководствуясь некоторым критерием «близости". Сеть состоит из одного входного и одного выходного слоя. Количество элементов в выходном слое непосредственно определяет, сколько кластеров сеть может распознавать. Каждый из выходных элементов получает на вход весь входной вектор. Как и во всякой нейронной сети, каждой связи припи­сан некоторый синоптический вес. В большинстве случаев каждый выход­ной элемент соединен также со своими соседями. Эти внутренние связи иг­рают важную роль в процессе обучения, так как корректировка весов проис­ходит только в окрестности того элемента, который наилучшим образом от­кликается на очередной вход. Выходные элементы соревнуются между собой за право вступить в действие и «получить урок». Выигрывает тот из них, чей вектор весов окажется ближе всех к входному вектору в смысле расстояния, определяе­мого, например, евклидовой метрикой. У элемента-победителя это рас­стояние будет меньше, чем у всех остальных. На текущем шаге обучения менять веса разрешается только элементу-победителю (и, может быть, его непосредственным соседям); веса остальных элементов при этом как бы заморожены. Выигравший элемент заменяет свой весовой вектор, немного перемещая его в сторону входного вектора. После обучения на достаточ­ном количестве примеров совокупность весовых векторов с большей точ­ностью приходит в соответствие со структурой входных примеров - век­торы весов в буквальном смысле моделируют распределение входных об­разцов.Puc.l3.5. Самоорганизующаяся сеть Кохонена. Изображены только связи, идущие в i-u узел. Окрестность узла показана пунктиром Очевидно, для правильно го понимания сетью входного распределения нужно, чтобы каждый элемент сети становился победителем одинаковое число раз - весовые векторы должны быть равновероятными. Перед началом работы сети Кохонена нужно сделать две вещи: векторы величины должны быть случайно распределены по единичной сфере; все весовые и входные векторы должны быть нормированы на едини­цу. 13.5. Сеть со встречным распространениемСеть со встречным распространением (CPN, Counterpropagation Network) соединяет в себе свойства самоорганизующейся сети Кохонена и концепцию Oustar - сети Гроссберга. В рамках этой архитектуры элементы слоя сети Кохонена не имеет прямо го выхода во внешний мир, а служат вхо­дами для выходного слоя, в котором связям адаптивно придаются веса Гроссберга. Эта схема возникла из работ Хехта - Нильсена. CPN-сеть наце­лена на постепенное построение искомого отображения входов в выходы на основе примеров действия такого отображения. Сеть хорошо решает задачи, где требуется способность адаптивно строить математическое отражение по его точным значениям в отдельных точках. Сети данного вида успешно применяются в таких финансовых и эконо­мических приложениях, как рассмотрение заявок на предоставление займов, предсказание трендов цен акций, товаров и курсов обмена валют. Говоря обобщенно, можно ожидать успешного применения СРN-сетей в задачах, где требуется извлекать знания из больших объемов данных.^ ПРАКТИЧЕСКОЕ ПРИМЕНЕНИЕ НЕЙРОННЫХ СЕТЕЙ ДЛЯ ЗАДАЧ КЛАССИФИКАЦИИ (КЛАСТЕРИЗАЦИИ) Решение задачи классификации является одним из важнейших примене­ний нейронных сетей. Задача классификации представляет собой задачу от­несения образца к одному из нескольких попарно непересекающихся мно­жеств. Примером таких задач может быть, например, задача определения кредитоспособности клиента банка, медицинские задачи, в которых необхо­димо определить, например, исход заболевания, решение задач управления портфелем ценных бумаг (продать, купить или «придержать» акции в зави­симости от ситуации на рынке), задача определения жизнеспособных несклонных к банкротству фирм.^ ЦЕЛЬ КЛАССИФИКАЦИИ При решении задач классификации необходимо отнести имеющиеся статические образцы (характеристики ситуации на рынке, данные медос­мотра, информация о клиенте) к определенным классам. Возможны не­сколько способов представления данных. Наиболее распространенным яв­ляется способ, при котором образец представляется вектором. Компоненты этого вектора представляют собой различные характеристики образца, ко­торые влияют на принятие решения о том, к какому классу можно отнести данный образец. Например, для медицинских задач в качестве компонен­тов этого вектора могут быть данные из медицинской карты больного. Та­ким образом, на основании некоторой информации о примере, необходимо определить, к какому классу его можно отнести. Классификатор таким об­разом относит объект к одному из классов в соответствии с определенным разбиением N-мерного пространства, которое называется пространством входов, и размерность этого пространства является количеством компонент вектора. Прежде всего, нужно определить уровень сложности системы. В ре­альных задачах часто возникает ситуация, когда количество образцов ог­раниченно, что осложняет определение сложности задачи. Возможно вы­ делить три основных уровня сложности. Первый (самый простой) - ко­гда классы можно разделить прямыми линиями (или гиперплоскостями, если пространство входов имеет размерность больше двух) - так назы­ваемая линейная разделимость. Во втором случае классы невозможно разделить линиями (плоскостями), но их, возможно, отделить с помошью более сложного деления - нелинейная разделимость. В третьем случае классы пересекаются, и можно говорить только о вероятностной разде­лимости.^ Рис.13.б. Линейно и нелинейно разделимые классыВ идеальном варианте после предварительной обработки мы должны по­лучить линейно разделимую задачу, так как после этого значительно упро­щается построение классификатора. К сожалению, при решении реальных задач мы имеем ограниченное количество образцов, на основании которых и производится построение классификатора. При этом мы не можем провести такую предобработку данных, при которой будет достигнута линейная раз­делимость образцов.^ ИСПОЛЬЗОВАНИЕ НЕЙРОННblХ СЕТЕЙ В КАЧЕСТВЕ КЛАССИФИКАТОРА Сети с прямой связью являются универсальным средством аппроксима­ции функций, что позволяет их использовать в решении задач классифика­ции. Как правило, нейронные сети оказываются наиболее эффективным спо­собом классификации, потому что генерируют фактически большое число регрессионных моделей (которые используются в решении задач классифи­кации статистическими методами). К сожалению, в применении нейронных сетей в практических задачах возникает ряд проблем. Во-первых, заранее не известно, какой сложности (размера) может потребоваться сеть для достаточно точной реализации отображения. Эта сложность может оказаться чрезмерно высокой, что по­требует сложной архитектуры сетей. Так, Минский в своей работе «Пер­септроны» доказал, что простейшие однослойные нейронные сети способ­ны решать только линейно разделимые задачи. Это ограничение преодо­лимо при использовании многослойных нейронных сетей. В общем виде можно сказать, что в сети с одним скрытым слоем вектор, соответствую­щий входному образцу, преобразуется скрытым слоем в некоторое новое пространство, которое может иметь другую размерность, а затем гиперп­лоскости, соответствующие нейронам выходного слоя, разделяют его на классы. Таким образом, сеть распознает не только характеристики исход­ных данных, но и «характеристики характеристик», сформированные скрытым слоем.^ ПОДГОТОВКА ИСХОДНЫХ ДАННЫХ Для построения классификатора необходимо определить, какие парамет­ры влияют на принятие решения о том, к какому классу принадлежит обра­зец. При этом могут возникнуть две проблемы. Во-первых, если количество параметров мало, то может возникнуть ситуация, при которой один и тот же набор исходных данных соответствует примерам, находящимся в разных классах. Тогда невозможно обучить нейронную сеть, и система не будет корректно работать (невозможно найти минимум, который соответствует такому набору исходных данных). Исходные данные обязательно должны быть непротиворечивы. Для решения этой проблемы необходимо увеличить размерность пространства признаков (количество компонент входного век­тора, соответствующего образцу). Но при увеличении размерности про­странства признаков может возникнуть ситуация, когда число примеров мо­жет стать недостаточным для обучения сети, и она вместо обобщения просто запомнит примеры из обучающей выборки и не сможет корректно функцио­нировать. Таким образом, при определении признаков необходимо найти компромисс с их количеством. Далее необходимо определить способ представления входных данных для нейронной сети, Т.е. определить способ нормирования. Нормировка необходима, поскольку нейронные сети работают с данными, представлен­ными числами в диапазоне 0..1, а исходные данные могут иметь произ­вольный диапазон или вообще быть нечисловыми данными. При этом воз­можны различные способы, начиная от простого линейного преобразова­ния в требуемый диапазон и заканчивая многомерным анализом парамет­ров и нелинейной нормировкой в зависимости от влияния параметров друг на друга.^ КОДИРОВАНИЕ ВЫХОДНЫХ ЗНАЧЕНИЙ Задача классификации при наличии двух классов может быть решена на сети с одним нейроном в выходном слое, который может принимать одно из двух значений 0 или 1 в зависимости от того, к какому классу принад­лежит образец. При наличии нескольких классов возникает проблема, свя­занная с представлением этих данных для выхода сети. Наиболее простым способом представления выходных данных в таком случае является вектор, компоненты которого соответствуют различным номерам классов. При этом i-я компонента вектора соответствует i-му классу. Все остальные компоненты при этом устанавливаются в О. Тогда, например, второму классу будет соответствовать 1 на 2 выходе сети и 0 на остальных. При интерпретации результата обычно считается, что номер класса определяет­ся номером выхода сети, на котором появилось максимальное значение. Например, если в сети с тремя выходами, мы имеем вектор выходных зна­чений (0,2; 0,6; 0,4), и видим, что максимальное значение имеет вторая компонента вектора, значит класс, к которому относится этот пример, - 2. При таком способе кодирования иногда вводится также понятие уверенно­сти сети в том, что пример относится к этому классу. Наиболее простой способ определения уверенности заключается в определении разности ме­жду максимальным значением выхода и значением другого выхода, кото­рое является ближайшим к максимальному. Например, для рассмотренного выше примера уверенность сети в том, что пример относится ко второму классу, определится как разность между второй и третьей компонентой вектора и равна 0.6-0.4=0.2. Соответственно, чем выше уверенность, тем больше вероятность того, что сеть дала правильный ответ. Этот метод ко­дирования является самым простым, но не всегда самым оптимальным способом представления данных. Известны и другие способы. Например, выходной вектор представляет собой номер кластера, записанный в двоичной форме. Тогда при наличии 8 классов нам потребуется вектор из 3 элементов, и, скажем, 3 классу будет соответствовать вектор 011. Но при этом в случае получения неверного зна­чения на одном из выходов мы можем получить неверную классификацию (неверный номер кластера), поэтому имеет смысл увеличить расстояние ме­жду двумя кластерами за счет использования кодирования выхода по коду Хемминга, который повысит надежность классификации. Другой подход состоит в разбиении задачи с k классами на k*(k-I)/2 подзадач с двумя классами (2 на 2 кодирование) каждая. Под подзадачей в данном случае понимается то, что сеть определяет наличие одной из ком­понент вектора. Т.е. исходный вектор разбивается на группы по два ком­понента в каждой таким образом, чтобы в них вошли все возможные ком­бинации компонент выходного вектора. Число этих групп можно опреде­лить как количество неупорядоченных выборок по два из исходных ком­понентТогда, например, для задачи с четырьмя классами мы имеем 6 выходов (подзадач), распределенных следующим образом: №подзадач и (выхода) Компоненты выхода 1 1-2 2 1-3 3 1-4 4 2-3 5 2-4 6 3-4 Где 1 на выходе говорит о наличии одной из компонент. Тогда мы можем перейти к номеру класса по результату расчета сетью следующим образом: определяем, какие комбинации получили единичное (точнее близкое к еди­нице) значение выхода (т.е. какие подзадач и у нас активировались), и счита­ем, что номер класса будет тот, который вошел в наибольшее количество активированных подзадач (см. таблицу). № класса Акт. выходы 1 1,2,3 2 1,4,5 3 2,4,6 5 3,5,6 Это кодирование во многих задачах дает лучший результат, чем класси­ческий способ кодирования.^ ВЕРОЯТНОСТНАЯ КЛАССИФИКАЦИЯ При статистическом распознавании образов оптимальный классификатор относит образец xJ. к классу С, руководствуясь решающим правилом Байеса. Для двух классов оно выглядит так: V отнести хК к С\, если р{с.I.I}>р{с21 хК}, V отнести f к С2, если Р{С. I.I} Смысл правила простой: образец f относится к группе, имеющей наи­большую апостериорную вероятность. Это правило оптимально в том смыс­ле, что оно минимизирует среднее число неправильных классификаций. Ес­ ли имеется такая пара функций {q>z(x)}, что выполнены условия: Р{С2 I х }, то байесовское соотношение между априорной и апостериорной вероятно­стью сохраняет силу, и поэтому эти функции можно использовать в качестве упрощенных решающих функций. Так имеет смысл дела


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

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

Пишем реферат самостоятельно:
! Как писать рефераты
Практические рекомендации по написанию студенческих рефератов.
! План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом.
! Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач.
! Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты.
! Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ.

Читайте также:
Виды рефератов Какими бывают рефераты по своему назначению и структуре.