Рефераты

Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий

Алгоритм Кохонена формирования карт признаков. Шаг 1. Инициализировать веса случайными значениями. Задать размер окрестности s(0), и скорость h(0) и tmax. Шаг 2. Задать значения входных сигналов (x1,.,xp). Шаг 3. Вычислить расстояние до всех нейронов сети. Расстояния dk от входного сигнала x до каждого нейрона k определяется по формуле: Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий где xi - i-ый элемент входного сигнала, wki - вес связи от i-го элемента входного сигнала к нейрону k. Шаг 4. Найти нейрон – победитель, т.е. найти нейрон j, для которого расстояние dj наименьшее: j:dj < dk "k¹p Шаг 5. Подстроить веса победителей и его соседей. Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий Шаг 6. Обновить размер окрестности s(t) и скорость h(t) s(t)=s(0)(1-t/tmax) h(t)=h(0)(1-t/tmax) Шаг 7. Если (t < tmax), то Шаг 2, иначе СТОП. Благодаря своим способностям к обобщению информации, карты Кохонена являются удобным инструментом для наглядного представления о структуре данных в многомерном входном пространстве, геометрию которого представить практически невозможно. Сети встречного распространения. Еще одна группа технических применений связана с предобработкой данных. Карта Кохонена группирует близкие входные сигналы Х, а требуемая функция Y = G(X) строится на основе обычной нейросети прямого распространения (например многослойного персептрона или линейной звезды Гроссберга[1]) к выходам нейронов Кохонена. Такая гибридная архитектура была предложена Р. Хехт-Нильсеном и имеет название сети встречного распространения [1-3,7,9]. Нейроны слоя Кохонена обучаются без учителя, на основе самоорганизации, а нейроны распознающих слоев адаптируются с учителем итерационными методами. Пример такой структуры для решения задачи классификации сейсмических сигналов приведен на рис. 4.5. Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий Второй уровень нейросети используется для кодирования информации. Весовые коэффициенты tij (i =1,...,M; j=1,2) – коэффициенты от i-го нейрона слоя Кохонена к j-му нейрону выходного слоя рассчитываются следующим образом: Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий где Yi – выход i- го нейрона слоя Кохонена Sj – компонента целевого вектора (S={0,1} – взрыв, S={1,0}-землетрясение) Таким образом после предварительного обучения и формирования кластеров в слое Кохонена, на фазе вторичного обучения все нейроны каждого полученного кластера соединяются активными (единичными) синапсами со своим выходным нейроном, характеризующим данный кластер. Выход нейронов второго слоя определяется выражением: (11) Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий где: Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий Kj - размерность j-ого кластера, т.е. количество нейронов слоя Кохонена соединённых с нейроном j выходного слоя отличными от нуля коэффициентами. R - пороговое значение (0 < R < 1). Пороговое значение R можно выбрать таким образом, чтобы с одной стороны не были потеряны значения активированных кластеров, а с другой стороны - отсекался "шум не активизированных кластеров". В результате на каждом шаге обработки исходных данных на выходе получаются значения Sj, которые характеризуют явление, породившее данную входную ситуацию (Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий - землетрясение; Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий - взрыв). 4.5 Выводы по разделу. Итак, подводя итог данной главе, следует сказать, что это далеко не полный обзор нейросетевых архитектур, которые успешно справляются с задачами классификации. В частности ничего не было сказано о вероятностных нейронных сетях, о сетях с базисно радиальными функциями, о использовании генетических алгоритмов для настройки многослойных сетей и о других, пусть менее известных, но хорошо себя зарекомендовавших. Соответственно проблема выбора наиболее оптимальной архитектуры для решения задачи классификации сейсмических сигналов вполне актуальна. В идеале, конечно хотелось бы проверить эффективность хотя бы нескольких из них и выбрать наилучшую. Но для этого необходимо проводить более масштабные исследования, которые займут много времени. На данном этапе исследований была сделана попытка использовать хорошо изученные нейронные сети и алгоритмы обучения для того, чтобы убедиться в эффективности подхода в целом. В главе 6 детально обсуждаются нейросеть, которая была исследована в рамках настоящей дипломной работы.

5. Методы предварительной обработки данных.

Если возникает необходимость использовать нейросетевые методы для решения конкретных задач, то первое с чем приходится сталкиваться – это подготовка данных. Как правило, при описании различных нейроархитектур, по умолчанию предполагают что данные для обучения уже имеются и представлены в виде, доступном для нейросети. На практике же именно этап предобработки может стать наиболее трудоемким элементом нейросетевого анализа. Успех обучения нейросети также может решающим образом зависеть от того, в каком виде представлена информация для ее обучения. В этой главе рассматриваются различные процедуры нормировки и методы понижения размерности исходных данных, позволяющие увеличить информативность обучающей выборки. 5.1 Максимизация энтропии как цель предобработки. Рассмотрим основной руководящий принцип, общий для всех этапов предобработки данных. Допустим, что в исходные данные представлены в числовой форме и после соответствующей нормировки все входные и выходные переменные отображаются в единичном кубе. Задача нейросетевого моделирования – найти статистически достоверные зависимости между входными и выходными переменными. Единственным источником информации для статистического моделирования являются примеры из обучающей выборки. Чем больше бит информации принесет пример – тем лучше используются имеющиеся в нашем распоряжении данные. Рассмотрим произвольную компоненту нормированных (предобработанных) данных: Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий . Среднее количество информации, приносимой каждым примером Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий , равно энтропии распределения значений этой компоненты Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий . Если эти значения сосредоточены в относительно небольшой области единичного интервала, информационное содержание такой компоненты мало. В пределе нулевой энтропии, когда все значения переменной совпадают, эта переменная не несет никакой информации. Напротив, если значения переменной Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий равномерно распределены в единичном интервале, информация такой переменной максимальна. Общий принцип предобработки данных для обучения, таким образом состоит в максимизации энтропии входов и выходов. 5.2 Нормировка данных. Как входами, так и выходами могут быть совершенно разнородные величины. Очевидно, что результаты нейросетевого моделирования не должны зависеть от единиц измерения этих величин. А именно, чтобы сеть трактовала их значения единообразно, все входные и выходные величин должны быть приведены к единому масштабу. Кроме того, для повышения скорости и качества обучения полезно провести дополнительную предобработку, выравнивающую распределения значений еще до этапа обучения. Индивидуальная нормировка данных. Приведение к единому масштабу обеспечивается нормировкой каждой переменной на диапазон разброса ее значений. В простейшем варианте это – линейное преобразование: Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий в единичный отрезок: Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий . Обобщение для отображения данных в интервал Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий , рекомендуемого для входных данных тривиально. Линейная нормировка оптимальна, когда значения переменной Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий плотно заполняют определенный интервал. Но подобный «прямолинейный» подход применим далеко не всегда. Так, если в данных имеются относительно редкие выбросы, намного превышающие типичный разброс, именно эти выбросы определят согласно предыдущей формуле масштаб нормировки. Это приведет к тому, что основная масса значений нормированной переменной Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий сосредоточится вблизи нуля Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий Гораздо надежнее, поэтому, ориентироваться при нормировке не а экстремальные значения, а на типичные, т.е. статистические характеристики данных, такие как среднее и дисперсия. Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий , где Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий , Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий В этом случае основная масса данных будет иметь единичный масштаб, т.е. типичные значения все переменных будут сравнимы (рис. 6.1)

Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий

Однако, теперь нормированные величины не принадлежат гарантированно единичному интервалу, более того, максимальный разброс значений Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий заранее не известен. Для входных данных это может быть и не важно, но выходные переменные будут использоваться в качестве эталонов для выходных нейронов. В случае, если выходные нейроны – сигмоидные, они могут принимать значения лишь в единичном диапазоне. Чтобы установить соответствие между обучающей выборкой и нейросетью в этом случае необходимо ограничить диапазон изменения переменных. Линейное преобразование, представленное выше, не способно отнормировать основную массу данных и одновременно ограничить диапазон возможных значений этих данных. Естественный выход из этой ситуации – использовать для предобработки данных функцию активации тех же нейронов. Например, нелинейное преобразование Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий , Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий нормирует основную массу данных одновременно гарантируя чтоДиплом: Классификация сейсмических сигналов на основе нейросетевых технологий (рис. 5.2)

Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий

Как видно из приведенного выше рисунка, распределение значений после такого нелинейного преобразования гораздо ближе к равномерному. Все выше перечисленные методы нормировки направлены на то, чтобы максимизировать энтропию каждого входа (выхода) по отдельности. Но, вообще говоря, можно добиться гораздо большего максимизируя их совместную энтропию. Существуют методы, позволяющие проводить нормировку для всей совокупности входов, описание некоторых из них приведено в [4]. 6.3 Понижение размерности входов. Поскольку заранее неизвестно насколько полезны те или иные входные переменные для предсказания значений выходов, возникает соблазн увеличивать число входных параметров, в надежде на то, что сеть сама определит, какие из них наиболее значимы. Однако чаще всего это не приводит к ожидаемым результатам, а к тому же еще и увеличивает сложность обучения. Напротив, сжатие данных, уменьшение степени их избыточности, использующее существующие в них закономерности, может существенно облегчить последующую работу, выделяя действительно независимые признаки. Можно выделить два типа алгоритмов, предназначенных для понижения размерности данных с минимальной потерей информации: · Отбор наиболее информативных признаков и использование их в процессе обучения нейронной сети; · Кодирование исходных данных меньшим числом переменных, но при этом содержащих по возможности всю информацию, заложенную в исходных данных. Рассмотрим более подробно оба типа алгоритмов. 5.3.1 Отбор наиболее информативных признаков. Для того, чтобы понять какие из входных переменных несут максимум информации, а какими можно пренебречь необходимо либо сравнить все признаки между собой и определить степень информативности каждого из них, либо пытаться найти определенные комбинации признаков, которые наиболее полно отражают основные характеристики исходных данных. В разделе 3.2 был описан алгоритм, позволяющий упорядочить все признаки по мере убывания их значимости. Однако накладываемые ограничения не позволяют применять его для более распространенных задач. Для выбора подходящей комбинации входных переменных используется так называемые генетические алгоритмы [5], которые хорошо приспособлены для задач такого типа, поскольку позволяют производить поиск среди большого числа комбинаций при наличии внутренних зависимостей в переменных. 5.3.2 Сжатие информации. Анализ главных компонент. Самый распространенный метод понижения размерности - это анализ главных компонент (АГК). Традиционная реализация этого метода представлена в теории линейной алгебры. Основная идея заключается в следующем: к данным применяется линейное преобразование, при котором направлениям новых координатных осей соответствуют направления наибольшего разброса исходных данных. Для эти целей определяются попарно ортогональные направления максимальной вариации исходных данных, после чего данные проектируются на пространство меньшей размерности, порожденное компонентами с наибольшей вариацией [4]. Один из недостатков классического метода главных компонент состоит в том, что это чисто линейный метод, и соответственно он может не учитывать некоторые важные характеристики структуры данных. В теории нейронных сетей разработаны более мощные алгоритмы, осуществляющие “нелинейный анализ главных компонент”[3]. Они представляют собой самостоятельную нейросетевую структуру, которую обучают выдавать в качестве выходов свои собственные входные данные, но при этом в ее промежуточном слое содержится меньше нейронов, чем во входном и выходном слоях. (рис 5.3). Сети подобного рода носят название – автоассоциативные сети.

Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий

Чтобы восстановить свои входные данные, сеть должна научиться представлять их в более низкой размерности. Базовый алгоритм обучения в этом случае носит название правило обучения Ойя для однослойной сети. Учитывая то, что в такой структуре веса с одинаковыми индексами в обоих слоях одинаковы, дельта-правило обучения верхнего (а тем самым и нижнего) слоя можно записать в виде: Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий , где Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий , Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий , j=1,2,.,d – компонента входного вектора; Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий , выходы сети j=1,.,d; d - количество нейронов на входном ми выходном слоях (размерность вектора признаков); yi - выход с i-го нейрона внутреннего слоя, i=1,.,M M – количество нейронов на внутреннем слое; h - коэффициент обучения; wij=wkj - веса сети , соответственно между входным – скрытым и скрытым – выходным слоями. Скрытый слой такой сети осуществляет оптимальное кодирование входных данных, и содержит максимально возможное при данных ограничениях количество информации. После обучения внешний интерфейс (wij) (рис.5.4) может быть сохранен и использован для понижения размерности.

Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий

Нелинейный анализ главных компонент. Главное преимущество нейроалгоритмов в том, что они легко обобщаются на случай нелинейного сжатия информации, когда никаких явных решений уже не существует. Можно заменить линейные нейроны в описанных выше сетях – нелинейными. С минимальными видоизменениями нейроалгоритмы будут работать и в этом случае, всегда находя оптимальное сжатие информации при наложенных ограничениях. Например, простая замена линейной функции активации нейронов на сигмоидную в правиле обучения Ойя: Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий приводит к новому качеству. Таким образом, нейроалгоритмы представляют собой удобный инструмент нелинейного анализа, позволяющий относительно легко находить способы глубокого сжатия информации и выделения нетривиальных признаков. 5.4 Выводы по разделу. Конечно, описанными выше методиками не исчерпывается все разнообразие подходов к ключевой для нейро-анализа проблеме формирования пространства признаков. Например, существуют различные методики, расширяющие анализ главных компонент. Также, большего внимания заслуживают генетические алгоритмы. Необъятного не объять. Главное, чтобы за деталями не терялся основополагающий принцип предобработки данных: снижение существующей избыточности всеми возможными способами. Это повышает информативность примеров и, тем самым, качество нейропредсказаний. 6. Реализация нейросетевой модели и исследование ее технических характеристик. Ранее было показано, какими средствами нейроинформатики можно пытаться решить задачу идентификации типа сейсмического источника, какие процедуры целесообразно применять при предварительной подготовке данных, был приведен небольшой обзор различных алгоритмов обучения известных нейроархитектур. В этой главе представлено решение задачи на базе двухслойного персептрона, так как именно он был выбран на начальном этапе исследований. Дано также описание алгоритма обучения и методов его оптимизации. 6.1 Структура нейронной сети. Итак, для решения задачи идентификации типа сейсмического события предлагается использовать одну из самых универсальных нейроархитектур – многослойный персептрон, а точнее его двухслойную реализацию (рис. 6.1). Как показали эксперименты, увеличение числа скрытых слоев не приводит к лучшим результатам, а лишь усложняет процесс обучения, поэтому и была выбрана именно реализация с одним скрытым слоем нейронов.

Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий

На вход сети подается p-мерный вектор признаков {xi, i=1,2,.,p}. Для определенности будем рассматривать случай, когда p=9, хотя исследования проводились и для p=5, p=18. Оптимальное количество нейронов на скрытом слое H подбиралось экспериментально для разных p. Соответственно при p = 9 достаточно брать H равным также 9 или немного больше. Для разбиения исходных данных на два класса на выходе сети достаточно одного нейрона. Между входным и скрытым слоями, а также между скрытым и выходным слоями использовалась полносвязная структура. С учетом этих дополнений опишем принятые на рисунке 7.1 обозначения: p – размерность исходных данных (количество признаков используемых для классификации); H – число нейронов на скрытом слое; xi – компонента входного вектора признаков, i = 1,.,p; x0 º 1 – постоянное воздействие используемое для работы нейронной сети; wji – весовые коэффициенты между входным и скрытым слоями, i = 0,1,.,p , j = 1,.,H; vk - весовые коэффициенты между скрытым и выходным слоями, k = 0,1,.,H. zj – значение выхода j-го нейрона скрытого слоя; z0 º 1, j = 1,.,H; Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий y – значение выходного нейрона сети (выход сети) Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий (12) f1(x) –функция активации нейронов скрытого слоя; f2(x) –функция активации нейрона выходного слоя. В качестве функции активации f1(x) для нейронов скрытого слоя и f2(x) для единственного нейрона на выходе сети предлагается использовать одну и ту же функцию, а именно сигмоидную функцию активации, для краткости будем обозначать ее как f(x): Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий , с производной в виде Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий . Вид такой функции представлен на рис.6.2

Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий

Т.к. значения функции f(x) ограничены в диапазоне [0, 1], результат сети y(x) может принимать любые действительные значения из этого же диапазона, в следствии чего логично интерпретировать выходы сети следующим образом: если y(x) > 0.5, то вектор принадлежит к одному классу (взрывы), в противном случае к другому (землетрясения). 6.2 Исходные данные. На вход нейронной сети предлагается подавать вектора признаков составленные из сейсмограмм. О том, какие признаки были использованы для этой задачи и как они получены, было рассказано ранее в разделе 3.1. Стоит отметить, что проблема формирования векторов признаков – это исключительно проблема сейсмологии. Поэтому для исследования эффективности применения нейронных сетей в качестве исходных данных были использованы уже готовые выборки векторов, которые содержали в себе примеры и землетрясений и взрывов. Размерность векторов признаков p=9, хотя , как было отмечено в предыдущем разделе, проводились эксперименты и с другим количеством признаков . Для работы с нейросетью рекомендуется использовать исходные данные не в первоначальном виде, а после предварительной обработки при помощи процедуры индивидуальной нормировки по отдельному признаку, описанной в разделе 5.2. Это преобразование состоит в следующем: Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий где xi – исходное значение вектора признаков, точнее его i-я компонента; xi,min – минимальное значение по i-му признаку, найденное из всей совокупности исходных данных, включающей оба класса событий; xi,max – максимальное значение по i-му признаку . Выбор именно этой нормировки, а не более универсальных, которые описаны в разделе 5, в настоящих исследованиях продиктованы тем обстоятельством, что непосредственно признаки измеренные по сейсмограммам, подвергаются последовательно двум нелинейным преобразованиям в соответствии с функциями y=Ln(x) и z=(1/7)(y1/7-1), и уже из этих значений формируются обучающие вектора. Такие преобразования приводят к большей кластеризации точек в многомерном пространстве, однако диапазон изменения каждого из признаков не нормирован относительно интервала [-1, 1], а выбранная нормировка позволяет без потери информации перенести все входные значения в нужный диапазон. 6.3 Определение критерия качества системы и функционала его оптимизации. Если через Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий обозначить желаемый выход сети (указание учителя), то ошибка системы для заданного входного сигнала (рассогласование реального и желаемого выходного сигнала) можно записать в следующем виде: Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий , где k — номер обучающей пары в обучающей выборке, k=1,2,.,n1+n2 n1 - количество векторов первого класса; n2 - число векторов второго класса. В качестве функционала оптимизации будем использовать критерий минимума среднеквадратической функции ошибки: Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий 6.4 Выбор начальных весовых коэффициентов. Перед тем, как приступить к обучению нейронной сети, необходимо задать ее начальное состояние. От того насколько удачно будут выбраны начальные значения весовых коэффициентов зависит, как долго сеть за счет обучения и подстройки будет искать их оптимальное величины и найдет ли она их. Как правило, всем весам на этом этапе присваиваются случайные величины равномерно распределенные в диапазоне [-A,A], например [-1,1], или [-3,3]. Однако, как показали эксперименты, данное решение не является наилучшим и в качестве альтернативы предлагается использовать другие виды начальной инициализации, а именно: 1. Присваивать весам случайные величины, заданные не равномерным распределением, а нормальным распределением с параметрами N[a,s], где выборочное среднее a=0, а дисперсия s = 2, или любой другой небольшой положительной величине. Для формирования нормально распределенной величины можно использовать следующий алгоритм: Шаг 1. Задать 12 случайных чисел x1, x2, .,x12 равномерно распределенных в диапазоне [0,1]. xi Í R[0,1]. Шаг 2. Для искомых параметров a и s величина Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий , полученная по формуле: Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий будет принадлежать нормальному распределению с параметрами N[a,s]. 2. Можно производить начальную инициализацию весов в соответствии с методикой, предложенной Nguyen и Widrow [7]. Для этой методики используются следующие переменные Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий число нейронов текущего слоя Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий количество нейронов последующего слоя Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий коэффициент масштабирования: Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий Вся процедура состоит из следующих шагов: Для каждого нейрона последующего слояДиплом: Классификация сейсмических сигналов на основе нейросетевых технологий : Инициализируются весовые коэффициенты (с нейронов текущего слоя): Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий случайное число в диапазоне [-1,1] ( или Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий ). Вычисляется норма Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий Далее веса преобразуются в соответствии с правилом: Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий Смещения Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий выбираются случайным образом из диапазона Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий . Обе предложенные методики позволили на практике добиться лучших результатов, в сравнении со стандартным алгоритмом начальной инициализации весов. 6.5 Алгоритм обучения и методы его оптимизации. Приступая к обучению выбранной нейросетевой модели, необходимо было решить, какой из известных типов алгоритмов, градиентный (обратное распространения ошибки) или стохастический (Больцмановское обучение) использовать. В силу ряда субъективных причин был выбран именно первый подход, который и представлен в этом разделе. Обучение нейронных сетей как минимизация функции ошибки. Когда функционал ошибки нейронной сети задан (раздел 6.3), то главная задача обучения нейронных сетей сводится к его минимизации. Градиентное обучение – это итерационная процедура подбора весов, в которой каждый следующий шаг направлен в сторону антиградиента функции ошибки. Математически это можно выразить следующим образом: Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий , или , что то же самое : Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий , здесь ht - темп обучения на шаге t. В теории оптимизации этот метод известен как метод наискорейшего спуска.[] Метод обратного распространения ошибки. Исторически наибольшую трудность на пути к эффективному правилу обучения многослойных персептронов вызвала процедура расчета градиента функции ошибки Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий . Дело в том, что ошибка сети определяется по ее выходам, т.е. непосредственно связана лишь с выходным слоем весов. Вопрос состоял в .том, как определить ошибку для нейронов на скрытых слоях, чтобы найти производные по соответствующим весам. Нужна была процедура передачи ошибки с выходного слоя к предшествующим слоям сети, в направлении обратном обработке входной информации. Поэтому такой метод, когда он был найден, получил название метода обратного распространения ошибки (error back-propagation ). Разберем этот метод на примере двухслойного персептрона с одним нейроном на выходе.(рис 6.1) Для этого воспользуемся введенными ранее обозначениями. Итак, Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий -Функция ошибки (13) Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий -необходимая коррекция весов коррекция весов (14) для выходного слоя Dv записывается следующим образом. Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий Коррекция весов между входным и скрытым слоями производится по формуле: Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий (15) Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий Подставляя одно выражение в другое получаем Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий (16) Производная функции активации, как было показано ранее (раздел 6.1), вычисляется через значение самой функции. Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий Непосредственно алгоритм обучения состоит из следующих шагов: 1. Выбрать очередной вектор из обучающего множества и подать его на вход сети. 2. Вычислить выход сети y(x) по формуле (12). 3. Вычислить разность между выходом сети и требуемым значением для данного вектора (13). 4. Если была допущена ошибка при классификации выбранного вектора, то подкорректировать последовательно веса сети сначала между выходным и скрытым слоями (15), затем между скрытым и входным (16). 5. Повторять шаги с 1 по 4 для каждого вектора обучающего множества до тех пор, пока ошибка на всем множестве не достигнет приемлемого уровня. Несмотря на универсальность, этот метод в ряде случаев становится малоэффективным. Для того, чтобы избежать вырожденных случаев, а также увеличить скорость сходимости функционала ошибки, разработано много модификаций стандартного алгоритма, в частности две из которых и предлагается использовать. Многостраничное обучение. С математической точки зрения обучение нейронных сетей (НС) – это многопараметрическая задача нелинейной оптимизации. В классическом методе обратного распространения ошибки (single-режим) обучение НС рассматривается как набор однокритериальных задач оптимизации. Критерий для каждой задачи - качество решения одного примера из обучающей выборки. На каждой итерации алгоритма обратного распространения параметры НС (синаптические веса и смещения) модифицируются так, чтобы улучшить решение одного примера. Таким образом, в процессе обучения циклически решаются однокритериальные задачи оптимизации. Из теории оптимизации следует, что при решении многокритериальных задач модификации параметров следует производить, используя сразу несколько критериев (примеров), в идеале - все. Тем более нельзя ограничиваться одним примером при оценке производимых изменений значений параметров. Для учета нескольких критериев при модификации параметров используют агрегированные или интегральные критерии, которые могут быть, например, суммой, взвешенной суммой или квадратным корнем от суммы квадратов оценок решения отдельных примеров. В частности, в настоящих исследованиях изменения весов проводилось после проверки всей обучающей выборки, при этом функция ошибки рассчитывалась в виде : Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий где, k - номер обучающей пары в обучающей выборке, k=1,2,.,n1+n2 n1 - количество векторов первого класса; n2 - число векторов второго класса. Как показывают тестовые испытания, обучение при использовании пакетного режима, как правило сходится быстрее, чем обучение по отдельным примерам. Автоматическая коррекция шага обучения. В качестве еще одного расширения традиционного алгоритма обучения предлагается использовать так называемый градиентный алгоритм с автоматическим определением длины шага h. Для его описания необходимо определить следующий набор параметров: · начальное значение шагаh0 ; · количество итераций, через которое происходит запоминание данных сети (синоптических весов и смещений); · величина (в процентах) увеличения шага после запоминания данных сети, и величина уменьшения шага в случае увеличения функции ошибки. В начале обучения записываются на диск значения весов и смещений сети. Затем происходит заданное число итераций обучения с заданным шагом. Если после завершения этих итераций значение функции ошибки не возросло, то шаг обучения увеличивается на заданную величину, а текущие значения весов и смещений записываются на диск. Если на некоторой итерации произошло увеличение функции ошибки, то с диска считываются последние запомненные значения весов и смещений, а шаг обучения уменьшается на заданную величину. При использовании автономного градиентного алгоритма происходит автоматический подбор длины шага обучения в соответствии с характеристиками адаптивного рельефа, и его применение позволило заметно сократить время обучения сети без потери качества полученного результата. Эффект переобучения. Одна из наиболее серьезных трудностей изложенного подхода обучения заключается в том, что таким образом минимизируется не та ошибка, которую на самом деле нужно минимизировать, а ошибка, которую можно ожидать от сети, когда ей будут подаваться совершенно новые наблюдения. Иначе говоря, хотелось бы, чтобы нейронная сеть обладала способностью обобщать результат на новые наблюдения. В действительности сеть обучается минимизировать ошибку на обучающем множестве, и в отсутствие идеального и бесконечно большого обучающего множества это совсем не то же самое, что минимизировать "настоящую" ошибку на поверхности ошибок в заранее неизвестной модели явления [5]. Иначе говоря, вместо того, чтобы обобщить известные примеры, сеть запомнила их. Этот эффект и называется переобучением. Соответственно возникает проблема – каким методом оценить ошибку обобщения? Поскольку эта ошибка определена для данных, которые не входят в обучающее множество, очевидным решением проблемы служит разделение всех имеющихся в нашем распоряжении данных на два множества: обучающее – на котором подбираются конкретные значения весов, и валидационного – на котором оцениваются предсказательные способности сети. На самом деле, должно быть еще и третье множество, которое вообще не влияет на обучение и используется лишь для оценки предсказательных возможностей уже обученной сети. Ошибки, полученные на обучающем, валидационном и тестовом множестве соответственно называются ошибка обучения, валидационная ошибка и тестовая ошибка. В нейроинформатике для борьбы с переобучением используются три основных подхода: · Ранняя остановка обучения; · Прореживание связей (метод от большого к малому); · Поэтапное наращивание сети ( от малого к большому). Самым простым является первый метод. Он предусматривает вычисление во время обучения не только ошибки обучения, но и ошибки валидации, используя ее в качестве контрольного параметра. В самом начале работы ошибка сети на обучающем и контрольном множестве будет одинаковой. По мере того, как сеть обучается, ошибка обучения, естественно, убывает, и, пока обучение уменьшает действительную функцию ошибок, ошибка на контрольном множестве также будет убывать. Если же контрольная ошибка перестала убывать или даже стала расти, это указывает на то, что сеть начала слишком близко аппроксимировать данные и обучение следует остановить. Рисунок 6.5 дает качественное представление об этой методике.

Диплом: Классификация сейсмических сигналов на основе нейросетевых технологий

Страницы: 1, 2, 3


© 2010 Собрание рефератов