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

Столичный Муниципальный ИНСТИТУТ ЭЛЕКТРОНИКИ И Арифметики

Кафедра МОСОИиУ

Объяснительная ЗАПИСКА

К ДИПЛОМНОМУ ПРОЕКТУ

На тему: _Классификация сейсмических сигналов на базе нейросетевых технологий.________________________________________________________

Студент

Управляющий проекта:

Допущен к защите____________________200___г.

КОНСУЛЬТАНТЫ ПРОЕКТА:

Особая часть

Конструкторско-технологическая часть

Финансовая часть

Техника безопасности

Зав. кафедрой________________________

МОСКВА

Инструкция.

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


Оглавление.

Инструкция 2

Введение 5

1. Главные положения теории нейронных сетей 7

2. Постановка задачки систематизации Классификация сейсмических сигналов на основе нейросетевых технологий - реферат сейсмических сигналов 16

3. Статистическая методика решения задачки систематизации 18

3.1 Выделение информационных признаков из сейсмограмм 18

3.2 Отбор более информативных признаков для идентификации 19

3.3 Процедуры статистической идентификации 21

3.4 Оценка вероятности неверной систематизации способом скользящего экзамена 22

4. Обзор разных архитектур нейронных сетей , созданных для задач систематизации 23

4.1 Нейрон-классификатор 23

4.2 Мультислойный персептрон 25

4.3 Сети Ворда 27

4.4 Сети Кохонена 27

4.5 Выводы по разделу 37

5. Способы подготовительной обработки Классификация сейсмических сигналов на основе нейросетевых технологий - реферат данных 31

5.1 Максимизация энтропии как цель предобработки 31

5.2 Нормировка данных 32

5.3 Снижение размерности входных данных 34

5.3.1 Отбор более информативных признаков 34

5.3.2 Сжатие инфы. Анализ основных компонент 35

5.4 Выводы .по разделу 37

6. Реализация нейросетевой модели и исследование ее технических черт 38

6.1 Структура нейросети 38

6.2 Начальные данные 40

6.3 Определение аспекта свойства системы и функционала его оптимизации 41

6.4 Выбор исходных Классификация сейсмических сигналов на основе нейросетевых технологий - реферат весовых коэффициентов 41

6.5 Метод обучения и способы его оптимизации 42

6.6 Формирование обучающей подборки и оценка эффективности обученной нейросетевой модели 48

7. Программная реализация 49

7.1 Многофункциональные способности программки 50

7.2 Общие сведения 51

7.3 Описание входного файла с начальными данными 52

7.4 Описание файла опций 52

7.5 Метод работы программки 57

7.6 Эксплуатация программного продукта 58

7.7 Итог работы программки 58

8. Заключение 61

Перечень литературы 63

Приложение 64

1. Пример подборки сейсмограмм Классификация сейсмических сигналов на основе нейросетевых технологий - реферат 64

2. Пример файла с векторами признаков 65

3. Файл с опциями программки 66

4. Пример файла отчета 67

5. Файл описания функций, типов переменных и применяемых библиотек “nvclass.h” 68

6. Файл автоматической компиляции программки под ОС Unix -“Makefile” 73

7. Основной модуль - “nvclass.с” 74


Введение.

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

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

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

1-ая глава посвящена описанию главных положений теории нейронных сетей, также областям науки и техники, в каких эти Классификация сейсмических сигналов на основе нейросетевых технологий - реферат технологии отыскали обширное применение.

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

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

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

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

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


1. Главные положения Классификация сейсмических сигналов на основе нейросетевых технологий - реферат теории нейронных сетей.

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

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

Элементы нейронных сетей.

Самыми ординарными Классификация сейсмических сигналов на основе нейросетевых технологий - реферат, базисными элементами нейросетей являются:

· Адаптивный сумматор . Элемент вычисляющий скалярное произведение вектора входного сигнала х на вектор характеристик w;

· Нелинейный преобразователь сигнала f модифицирующий скалярный сигнал x в f(x);

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


Математическая модель нейрона:

(1)

(2)

где

wi - вес синапса (weight), (i=0,1,2...p );

w0 - значение смещения (bias);

s - итог суммирования (sum);

xi - компонента входного вектора (входной сигнал), (i=1,2,...p );

y - выходной сигнал нейрона;

p- число входов нейрона;

f - нелинейное преобразование (функция активации).

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

Синаптические связи с положительными весами именуют возбуждающими, с отрицательными весами - тормозящими.

Таким Классификация сейсмических сигналов на основе нейросетевых технологий - реферат макаром, нейрон на сто процентов описывается своими весами wi и передаточной функцией f(x) . Получив набор чисел (вектор) xk в качестве входов, нейрон выдает некое число y на выходе.

Эта модель была предложена Маккалоком и Питтсом еще в 1943 г. При всем этом использовались пороговые передаточные функции (рис. 2a Классификация сейсмических сигналов на основе нейросетевых технологий - реферат), и правила формирования выходного сигнала y выглядели в особенности просто:

(3)

В 1960 г. на базе таких нейронов Розенблатт выстроил 1-ый в мире автомат для определения изображений букв, который был назван “перcептрон” (perception — восприятие). Этот автомат имел очень ординарную однослойную структуру и мог решать только относительно обыкновенные (линейные) задачки. С того времени Классификация сейсмических сигналов на основе нейросетевых технологий - реферат были исследованы и поболее сложные системы из нейронов, использующие в качестве передаточных сложные непрерывные функции. Одна из более нередко применяемых передаточных функций именуется сигмоидной (либо логистической) (рис. 2б) и задается формулой

(4)


Нейронная сеть.

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

Одними из более всераспространенных являются мультислойные сети, в каких нейроны объединены в слои. Слой - это совокупа нейронов c единым входным сигналом. В качестве основного примера разглядим сеть, которая довольно ординарна по структуре и в то же время обширно употребляется Классификация сейсмических сигналов на основе нейросетевых технологий - реферат для решения прикладных задач — двухслойный персептрон с p входами и одним выходом (рис. 2.3).


Как надо из наименования, эта сеть состоит из 2-ух слоев. Фактически нейроны размещаются в первом (сокрытом) и во 2-м (выходном) слое. Входной слой (также его именуют нулевым либо «вырожденным») только передает входные сигналы ко всем Классификация сейсмических сигналов на основе нейросетевых технологий - реферат H нейронам первого слоя (тут H = 4 ). Каждый нейрон первого слоя имеет p входов, которым приписаны веса wi0 ,wi1 ,wi2 , ..., wip (для нейрона с номером i ). Веса wi0 и v0 соответствуют смещению b в описании формального нейрона, которое приведено выше. Получив входные сигналы, нейрон суммирует их с надлежащими весами Классификация сейсмических сигналов на основе нейросетевых технологий - реферат, потом применяет к этой сумме передаточную функцию и пересылает итог на один из входов нейрона второго («выходного») слоя. В свою очередь, нейрон выходного слоя суммирует приобретенные от первого слоя сигналы с некими весами vi .

Итак, подавая на входы персептрона любые числа x1 , x2 , ..., xp , мы получим на выходе Классификация сейсмических сигналов на основе нейросетевых технологий - реферат значение некой функции F(x1 , x2 , ..., xp ), которое является ответом (реакцией) сети. Разумеется, что ответ сети зависит как от входного сигнала, так и от значений ее весовых коэффициентов.

Выпишем четкий вид этой функции

(5)

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

· полносвязные сети , в каких каждый нейрон связан со всеми остальными (на входы каждого нейрона подаются выходные сигналы других нейронов);

· сети с оборотными связями (рекуррентные). В их спецефическим образом выходы с следующих слоев нейронов подаются на вход предшествующим.

Разобравшись с тем, из чего Классификация сейсмических сигналов на основе нейросетевых технологий - реферат состоят нейронные сети, и как они работают, перейдем к вопросу "как сделать сеть,

приспособленную для решения

намеченной цели?". Этот вопрос

решается в два шага: (рис. 1.4)

1. Выбор типа (архитектуры) сети

2. Подбор весов (обучение) сети.

На первом шаге следует избрать последующее:

· какие нейроны мы желаем использовать (число входов, передаточные функции);

· каким образом Классификация сейсмических сигналов на основе нейросетевых технологий - реферат следует соединить их меж собой;

· что взять в качестве входов и выходов сети.

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

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

Обучение нейросети.

Научить нейросеть - означает, сказать ей, чего мы от нее добиваемся. Этот процесс очень похож на обучение малыша алфавиту. Показав ребенку изображение буковкы "А", мы спрашиваем его: "Какая это буковка?" Если Классификация сейсмических сигналов на основе нейросетевых технологий - реферат ответ неверен, мы сообщаем ребенку тот ответ, который мы желали бы от него получить: "Это буковка А". Ребенок запоминает этот пример вкупе с верным ответом, другими словами в его памяти происходят некие конфигурации в подходящем направлении. Мы будем повторять процесс предъявления букв опять и опять до того времени, когда Классификация сейсмических сигналов на основе нейросетевых технологий - реферат все 33 буковкы будут твердо запомнены. Таковой процесс именуют "обучение с учителем".

При обучении сети мы действуем совсем аналогично. Пусть у нас имеется некая база данных, содержащая примеры из различных классов, которые нужно научиться распознавать (набор рукописных изображений букв). Предъявляя изображение буковкы "А" на вход сети, мы получаем Классификация сейсмических сигналов на основе нейросетевых технологий - реферат от нее некий ответ, не непременно верный. Нам известен и верный (хотимый) ответ - в этом случае нам хотелось бы, чтоб на выходе с меткой "А" уровень сигнала был максимален. Обычно в качестве хотимого выхода в задачке систематизации берут набор (1,0,0,...), где 1 стоит на выходе с меткой "А", а 0 - на всех Классификация сейсмических сигналов на основе нейросетевых технологий - реферат других выходах. Вычисляя разность меж хотимым ответом и реальным ответом сети, мы получаем 33 числа - вектор ошибки. Дальше применяя разные методы по вектору ошибки вычисляем требуемые поправки для весов сети. Одну и ту же буковку (также разные изображения одной и той же буковкы) мы можем предъявлять сети много раз Классификация сейсмических сигналов на основе нейросетевых технологий - реферат. В этом смысле обучение быстрее припоминает повторение упражнений в спорте - тренировку.

Оказывается, что после неоднократного предъявления примеров веса сети стабилизируются, при этом сеть дает правильные ответы на все (либо практически все) примеры из базы данных. В таком случае молвят, что "сеть выучила все примеры", " сеть обучена", либо "сеть натренирована". В Классификация сейсмических сигналов на основе нейросетевых технологий - реферат программных реализациях можно созидать, что в процессе обучения величина ошибки (сумма квадратов ошибок по всем выходам) равномерно миниатюризируется. Когда величина ошибки добивается нуля либо применимого низкого уровня, тренировку останавливают, а полученную сеть считают натренированной и готовой к применению на новых данных. Схематично процесс обучения представлен на рис 1.5.


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

Применение нейросети.

После того, как сеть Классификация сейсмических сигналов на основе нейросетевых технологий - реферат обучена, ее можно использовать ее для решения намеченной цели (рис 1.4). Важная особенность людского мозга заключается в том, что, в один прекрасный момент обучившись определенному процессу, он может правильно действовать и в тех ситуациях, в каких он не бывал в процессе обучения. К примеру, можно читать практически хоть какой почерк, даже Классификация сейсмических сигналов на основе нейросетевых технологий - реферат если лицезреем его 1-ый раз в жизни. Так же и нейросеть, грамотным образом обученная, может с большой вероятностью верно реагировать на новые, не предъявленные ей ранее данные. К примеру, мы можем нарисовать буковку "А" другим почерком, а потом предложить нашей сети систематизировать новое изображение. Веса обученной сети хранят довольно много Классификация сейсмических сигналов на основе нейросетевых технологий - реферат инфы о сходстве и различиях букв, потому можно рассчитывать на верный ответ и для нового варианта изображения

Примеры практического внедрения нейронных сетей.

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

Прогнозирование.

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

либо прогнозирование конфигурации курса валют на определен

ный период времени и т.д.. (рис 1.6)

Определение либо систематизация.

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

Примером таковой задачки служит

мед диагностика, где сеть может

учесть огромное количество Классификация сейсмических сигналов на основе нейросетевых технологий - реферат числовых

характеристик (энцефалограмма, давление, вес и т.д.).

Естественно, "мировоззрение" сети в данном случае нельзя

считать окончательным.

Систематизация компаний по степени их перспективности (рис 1.8) - это уже обычный метод использования нейросетей в практике больших компаний. При всем этом сеть также употребляет огромное количество

экономических характеристик,

сложным образом связанных

меж собой Классификация сейсмических сигналов на основе нейросетевых технологий - реферат.

Кластеризацию и поиск закономерностей.

Кроме задач систематизации, нейросети обширно употребляются для поиска зависимостей в данных и кластеризации.

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


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


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


2. Постановка задачки систематизации сейсмических сигналов.

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

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

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


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

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

Математическая постановка в Классификация сейсмических сигналов на основе нейросетевых технологий - реферат данном случае формулируется как задачка разделения по обучающей выборке 2-ух классов и ставится так: имеется два набора векторов (каждый вектор размерности N) : X1 ,…,Xp1 и Y1 ,…Yp2 . Заблаговременно понятно, что Xi (i=1,…,p1) относится к первому классу, а Yj (j=1,…,p2) - ко второму. Требуется выстроить решающее правило, т.е Классификация сейсмических сигналов на основе нейросетевых технологий - реферат. найти такую функцию f, что при f(x) > 0 вектор x относился бы к первому классу, а при f(x) < 0 - ко второму, где xÍ{X1 ,…, Xp1 , Y1 ,…, Yp2 }.


3. Статистическая методика решения задачки систематизации.

В данном разделе рассматривается методика определения типов сейсмических событий, основанная на выделении дискриминантных признаков из сейсмограмм Классификация сейсмических сигналов на основе нейросетевых технологий - реферат и следующей систематизации векторов признаков при помощи статистических решающих правил.[8]

3.1 Выделение информационных признаков из сейсмограмм.

Начальные данные представлены в виде сейсмограмм (рис. 3.1) – это временное отображение колебаний земной поверхности.


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

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

1. Из всей сейсмограммы выделяется часть («временное окно»), которое содержит информацию о некий отдельной составляющей сейсмического действия, к примеру, только о Классификация сейсмических сигналов на основе нейросетевых технологий - реферат P-волне.

2. Для выделенных данных поочередно применяется такие процедуры как:

а) Резвое (дискретное) преобразование Фурье (БПФ);

б) Потом накладываются свойства определенного фильтра, к примеру, фильтра Гаусса.

в) Оборотное преобразование Фурье (ОБПФ), для того чтоб получить отфильтрованный сигнал.

Дальше, используются разные методы для формирования определенного признака. А именно, можно просто отыскать наивысшую Классификация сейсмических сигналов на основе нейросетевых технологий - реферат амплитуду колебания сигнала, характеристику определяемую выражением max{peakMax – peakMin }. Определив данный параметр для частоты f1 допустим для P волны, также для частоты f2 для S волны можно отыскать их отношение P(f1 )/S(f2 ), и использовать его в качестве дискриминационного признака.

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

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

3.2 Отбор более информативных признаков для идентификации.

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

Ниже представлена процедура отбора более информативных дискриминантных признаков, осуществляемая на основании обучающих реализаций землетрясений и взрывов из Классификация сейсмических сигналов на основе нейросетевых технологий - реферат данного региона.[8]

Сначала каждый вектор x sj = (x(i) sj , i Î 1,p) ; где s Î 1,2 - номер класса (s=1 - землетрясения s=2 - взрывы), j Î 1,ns , ns -число обучающих векторов данного класса состоит из p признаков, избранных из эвристических суждений как предположительно полезные для данной задачи определения. При всем этом число p может быть довольно Классификация сейсмических сигналов на основе нейросетевых технологий - реферат велико и даже превосходить число имеющихся обучающих векторов в каждом из классов, но для стойкости вычислений должно производиться условие p < n1 +n2 . Процедура отбора признаков - итерационная и состоит из p шагов на каждом из которых число отобранных признаков возрастает на единицу. На каждом промежном k -м шаге процедура Классификация сейсмических сигналов на основе нейросетевых технологий - реферат работает с n1+n2 k -мерными векторами x sj (k) (k £ p) , сформированных из k-1 признаков, отобранных в итоге первых k-1 шагов и некого нового признака из числа оставшихся. Отбор признаков основан на оценивании по векторам, состоящим из разных признаков, стохастического расстояния Кульбака-Махаланобиса D(k) меж рассредотачиваниями Классификация сейсмических сигналов на основе нейросетевых технологий - реферат вероятностей векторов x sj (k):

D(k)= (m (k,1) - m (k,2))T S-1 n1+n2 (k) (m (k,1) - m (k,2)), (6)

где: m (k,1), m (k,2) k - мерные векторы выборочных средних, вычисленные по k -мерным векторам x 1j (k) j Î 1,n1 и x 2j (k) j Î 1,n2 первого и второго классов; S Классификация сейсмических сигналов на основе нейросетевых технологий - реферат- 1 n1+n2 (k) есть (k ´ k) - мерная оборотная выборочная матрица ковариаций, вычисленная с внедрением всего набора k - мерных векторов x 1j (k) j Î 1,n1 и x 2j (k) j Î 1,n2

На первом шаге процедуры отбора значения функционала D(1) рассчитываются для каждого из p признаков. Максимум из этих Классификация сейсмических сигналов на основе нейросетевых технологий - реферат p значений достигается на каком то из признаков, который таким макаром отбирается как 1-ый информативный. На втором шаге значения функционала D(2) рассчитываются уже для векторов, состоящих из пар признаков. 1-ый элемент в каждой паре - это признак, отобранный на прошлом шаге, 2-ой элемент пары - один их оставшихся признаков. Таким макаром получаются Классификация сейсмических сигналов на основе нейросетевых технологий - реферат p-1 значения функционала D(2). 2-ой информативный признак отбирается из условия, что на нем достигается максимум функционала D(2). Дальше процедура длится аналогично, и на k -м шаге процедуры отбора рассчитываются значения функционала D(k) по обучающим векторам, состоящим из k признаков. 1-ые k-1 компонент этих векторов есть информативные Классификация сейсмических сигналов на основе нейросетевых технологий - реферат признаки, отобранные на прошлых k-1 шагах, последняя компонента - один из оставшихся признаков. В качестве k -го информативного признака отбирается тот признак, для которого функционал D(k) -максимален.

Описанная процедура ранжирует порядок следования признаков в обучающих векторах так, чтоб обеспечить очень вероятную скорость возрастания расстояния Махаланобиса (6) с ростом номера признака. Для Классификация сейсмических сигналов на основе нейросетевых технологий - реферат селекции огромного количества более информативных признаков на каждом шаге k=1,2,...,p описанной чуть повыше итерационной процедуры ранжирования признаков по информативности сохраняются номер j(k) в начальной таблице признаков и имя избранного признака, также рассчитывается теоретическое значение полной вероятности ошибки систематизации P(k) по формуле Колмогорова-Деева [12].

P(k Классификация сейсмических сигналов на основе нейросетевых технологий - реферат) = (1/2)[1 - Tk (D(k)/ s (k)) + Tk (-D(k)/ s (k))],

где k - число применяемых признаков

s 2 (k) = [(t+1)/t][r1 +r2 +D(k)]; t = [(r1 +r2 )/r1 r2 ]-1; r1 =k/n1 ; r2 =k/n2 (7)

Tk (z) = F(z) + (1/(k-1) ) (a1 - a2 H1 (z) + a3 H2 (z) - a4 H3 (z)) f Классификация сейсмических сигналов на основе нейросетевых технологий - реферат(z),

F(z) - функция стандартного Гауссовского рассредотачивания вероятностей; f(z) - плотность этого рассредотачивания; Hi (z) - полином Эрмита степени i , i=1,2,3; aj , j=1,...,4 - некие коэффициенты, зависящие от k, n1 , n2 и D(k) [12]. Эта формула, как было показано в разных исследовательских работах, имеет неплохую точность при размерах выборок порядка сотки и rs <0.3, s Классификация сейсмических сигналов на основе нейросетевых технологий - реферат=1,2.

Функция D(k), получаемая в итоге процедуры ранжирования признаков, растет с ростом k , но, на практике ее рост, обычно, значительно замедляется при k ® p. В данном случае функция P(k) на каком то шаге k0 меж 1 и p имеет минимум. В качестве набора более информативных признаков и принимается Классификация сейсмических сигналов на основе нейросетевых технологий - реферат совокупа признаков, отобранных на шагах 1 ,...,k0 описанной чуть повыше процедуры. Конкретно они обеспечивают наименьшую полную возможность неверной систематизации, которая может быть получена при данных обучающих наблюдениях.

3.3 Процедура статистической идентификации.

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

Линейная дискриминантная функция описывается последующей формулой

. (8)

где k - число отобранных более информативных признаков, x (k) - классифицируемый вектор, m (k,1), m (k,2) - k - мерные векторы выборочных средних, вычисленные по k -мерным векторам Классификация сейсмических сигналов на основе нейросетевых технологий - реферат x 1j (k) j Î 1,n1 и x 2j (k) j Î 1,n2 1го и 2-го классов, S- 1 n1+n2 (k) - (k ´ k) - мерная оборотная выборочная матрица ковариаций, вычисленная с внедрением всего набора k - мерных векторов x 1j (k) j Î 1,n1 и x 2j (k) j Î 1,n2 . Если LDF > 0, то принимается Классификация сейсмических сигналов на основе нейросетевых технологий - реферат, что вектор x (k) принадлежит первому классу - (землетрясение); в обратном случае он принадлежит второму класс (взрыв).

Квадратичная дискриминационная функция описывается последующей формулой

(9)

где , s=1,2 - оборотные матрицы ковариаций обучающих выборок 1 -го и 2 -го классов, вычисленные по обучающим векторам x 1j (k) j Î 1,n1 и x 2j (k) j Î 1,n2 , соответственно Классификация сейсмических сигналов на основе нейросетевых технологий - реферат.

3.4 Оценка вероятности неверной систематизации способом скользящего экзамена.

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

Из теории определения образов понятно, что более четкой и универсальной оценкой вероятности ошибок систематизации является оценка, обеспечиваемая процедурой “скользящего экзамена”(“cross-validation”) [11].

В способе скользящего экзамена на каждом шаге один из обучающих векторов x sj , j Î 1,ns , s Î 1,2, исключается из обучающей Классификация сейсмических сигналов на основе нейросетевых технологий - реферат подборки. Оставшиеся векторы употребляются для адаптации (обучения) LDF либо QDF либо хоть какого другого дискриминатора. Исключенный вектор потом классифицируется при помощи дискриминатора, обученного без его роли. Если этот вектор классифицируется некорректно, т.е. относится к классу 2 заместо класса 1 либо напротив, надлежащие “счетчики” n 12 либо n 21 растут на 1. Исключенный Классификация сейсмических сигналов на основе нейросетевых технологий - реферат вектор потом ворачивается в обучающую подборку, а изымается уже другой вектор x s(j+1) . Процедура повторяется для всех nl +n2 обучающих векторов. Вычисляемая в итоге величина

p0 =( n 12 + n 21 )/( nl +n2 )

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


4. Обзор разных архитектур нейронных сетей, созданных для задач систематизации.

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

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

4.1 Нейрон – классификатор.

Простым устройством определения образов в нейроинформатике является одиночный нейрон (рис. 4.1), превращающий входной вектор признаков в скалярный ответ, зависящий от линейной композиции входных переменных [1-5, 7,10]:


Скалярный выход нейрона можно использовать в качестве т.н Классификация сейсмических сигналов на основе нейросетевых технологий - реферат. дискриминантной функции . Этим термином именуют индикатор принадлежности входного вектора к одному из данных классов, а нейрон соответственно – линейным дискриминатором . Так, если входные вектора могут принадлежать одному из 2-ух классов, можно различить тип входа, к примеру, последующим образом: если f(x) ³ 0 , входной вектор принадлежит первому классу, в неприятном случае Классификация сейсмических сигналов на основе нейросетевых технологий - реферат – второму. Разглядим метод обучения схожей структуры, приняв f(x) º x.

Итак, в p-мерном пространстве задана обучающая подборка x1 ,…,xn (1-ый класс) и y1 ,…,ym (2-ой класс). Требуется отыскать такие p+1- мерный вектор w , что для всех i=1,…,n и j=1,…,m w0 +(xi ,w)>0 и Классификация сейсмических сигналов на основе нейросетевых технологий - реферат w0 +(yj ,w)<0.

Переформулируем задачку, сведя ее к отделению нуля от конечного огромного количества векторов в p+1 - мерном пространстве. Для этого разглядим p+1 – мерные векторы zl (l=0, 1,…., n+m):


В этих обозначениях условия разделения преобразуются в систему n+m однотипных неравенств:


В качестве нулевого приближения можно избрать хоть какой вектор Классификация сейсмических сигналов на основе нейросетевых технологий - реферат w, к примеру, w=0 , либо w Í R[-0.5,0.5]. Цикл метода заключается в том, что для всех l = 1,…,n+m проверяется неравенство (zl ,w) > 0 . Если для данного l £ n+m оно выполнено, перебегаем к последующем l (или при l=n+m заканчиваем цикл), если же не выполнено, то модифицируем w по Классификация сейсмических сигналов на основе нейросетевых технологий - реферат правилу w=w+zl , либо w=w+hT zl , где T – номер модификации, а , к примеру.

Когда за весь цикл нет ни одной ошибки ( т.е. модификации w ), то решение w найдено, в случае же ошибок полагаем l=1 и опять проходим цикл.

В неких простых случаях линейный дискриминатор – лучший из Классификация сейсмических сигналов на основе нейросетевых технологий - реферат вероятных, а конкретно когда оба класса можно точно поделить одной гиперплоскостью, набросок 4.2 показывает эту ситуацию для плоскости, когда p=2 .


4.2 Мультислойный персептрон.

Способности линейного дискриминатора очень ограничены. Для решения более сложных классификационных задач нужно усложнить сеть вводя дополнительные (сокрытые) слои нейронов, производящих промежную предобработку входных данных, таким макаром, чтоб выходной Классификация сейсмических сигналов на основе нейросетевых технологий - реферат нейрон-классификатор получал на свои входы уже линейно-разделимые огромного количества. Такие структуры носят заглавие мультислойные персептроны [1-4,7,10] (рис. 1.3).

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

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

Разглядим какие методы обучения мультислойных сетей разработаны и используются в текущее время.[7,10]. В главном все методы можно разбить на две категории:

· Градиентные методы;

· Стохастические методы.

К первой группе относятся те, которые основаны на вычислении производной функции ошибки и корректировке весов в согласовании со значением отысканной Классификация сейсмических сигналов на основе нейросетевых технологий - реферат производной. Каждый предстоящий шаг ориентирован в сторону антиградиента функции ошибки. Базу всех этих алгоритмов составляет отлично узнаваемый метод оборотного распространения ошибки (back propagation error).[1-5,7,10].

,где функция ошибки

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

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

2. Автономный градиентный метод (Обучение с автоматическим конфигурацией длины шага h ). [10]

3. RPROP (от resilient –эластичный), в каком каждый вес имеет собственный адаптивно настраиваемый темп обучения.[4]

4. Способы второго порядка, которые употребляют не только лишь информацию Классификация сейсмических сигналов на основе нейросетевых технологий - реферат о градиенте функции ошибки, да и информацию о вторых производных .[3,4,7].

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

1. Метод поиска в случайном направлении.[10]

2. Больцмановское обучение либо (метод имитации отжига). [1]

3. Обучение Коши, как дополнение к Классификация сейсмических сигналов на основе нейросетевых технологий - реферат Больцмановскому обучению.[1]

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

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

4.3 Сети Ворда.

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


4.2 Сети Кохонена.

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

Сеть состоит из M нейронов, образующих, обычно одномерную либо двумерную карту (рис. 4.2). Элементы входных сигналов {xi } подаются на входы всех нейронов сети. В процессе функционирования (самоорганизации Классификация сейсмических сигналов на основе нейросетевых технологий - реферат) на выходе слоя Кохонена формируются кластеры (группа активных нейронов определённой размерности, выход которых отличен от нуля), характеризующие определённые категории входных векторов (группы входных векторов, надлежащие одной входной ситуации). [9]


Метод Кохонена формирования карт признаков.

Шаг 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.


2-ой уровень нейросети употребляется для кодировки инфы. Весовые коэффициенты 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. Способы подготовительной обработки данных.

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

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

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 либо незначительно больше. Для разбиения начальных данных на два класса на выходе сети довольно 1-го нейрона. Меж входным и сокрытым слоями, также меж сокрытым и выходным слоями использовалась полносвязная структура.

С учетом этих дополнений опишем принятые на рисунке 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 Метод обучения и способы его оптимизации.

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

Обучение нейронных сетей как минимизация функции ошибки.

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

, либо , что то же самое : ,

тут h t - темп обучения на шаге t . В теории оптимизации этот способ известен как способ наискорейшего спуска .[]

Способ оборотного распространения ошибки.

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

Разберем этот способ на примере двухслойного персептрона с одним нейроном на выходе Классификация сейсмических сигналов на основе нейросетевых технологий - реферат.(рис 6.1) Для этого воспользуемся введенными ранее обозначениями. Итак,

-Функция ошибки (13)

-необходимая корректировка весов корректировка весов (14)

для выходного слоя D v записывается последующим образом.

Корректировка весов меж входным и сокрытым слоями делается по формуле:

(15)

Подставляя одно выражение в другое получаем

(16)

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

Конкретно метод обучения состоит из последующих шагов:

1. Избрать очередной вектор из обучающего огромного количества и подать его на вход сети.

2. Вычислить выход сети y(x) по формуле (12).

3. Вычислить разность меж выходом сети и требуемым значением для данного вектора (13).

4. Если была допущена ошибка при систематизации избранного Классификация сейсмических сигналов на основе нейросетевых технологий - реферат вектора, то подкорректировать поочередно веса сети поначалу меж выходным и сокрытым слоями (15), потом меж сокрытым и входным (16).

5. Повторять шаги с 1 по 4 для каждого вектора обучающего огромного количества до того времени, пока ошибка на всем огромном количестве не достигнет применимого уровня.

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

Многостраничное обучение.

С математической точки зрения обучение нейронных сетей (НС) – это многопараметрическая задачка нелинейной оптимизации. В традиционном способе оборотного распространения ошибки (single-режим Классификация сейсмических сигналов на основе нейросетевых технологий - реферат) обучение НС рассматривается как набор однокритериальных задач оптимизации. Аспект для каждой задачки - качество решения 1-го примера из обучающей подборки. На каждой итерации метода оборотного распространения характеристики НС (синаптические веса и смещения) модифицируются так, чтоб сделать лучше решение 1-го примера. Таким макаром, в процессе обучения циклически решаются Классификация сейсмических сигналов на основе нейросетевых технологий - реферат однокритериальные задачки оптимизации.

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

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

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

где,

k - номер обучающей пары в обучающей выборке, k=1,2,…,n1 +n2

n Классификация сейсмических сигналов на основе нейросетевых технологий - реферат1 - количество векторов первого класса;

n2 - число векторов второго класса.

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

Автоматическая корректировка шага обучения.

В качестве еще 1-го расширения обычного метода обучения предлагается использовать так именуемый градиентный метод с автоматическим определением длины шага h Классификация сейсмических сигналов на основе нейросетевых технологий - реферат. Для его описания нужно найти последующий набор характеристик:

· изначальное значение шагаh0 ;

· количество итераций, через которое происходит запоминание данных сети (синоптических весов и смещений);

· величина (в процентах) роста шага после запоминания данных сети, и величина уменьшения шага в случае роста функции ошибки.

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

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

Эффект переобучения.

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

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

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

· Ранешняя остановка обучения;

· Прореживание связей (способ от огромного к малому);

· Поэтапное наращивание сети ( от малого к большенному).

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


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

Два других подхода для контроля переобучения предугадывают постепенное изменение структуры сети. Исключительно в одном случае происходит действенное вымывание малых весов (weight elimination) ,т.е. прореживание незначительных связей, а во 2-м, напротив Классификация сейсмических сигналов на основе нейросетевых технологий - реферат, поэтапное наращивание трудности сети. [3,4,5].

6.6 Формирование обучающей подборки и оценка эффективности обученной нейросетевой модели.

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

Обычно, употребляют последующую Классификация сейсмических сигналов на основе нейросетевых технологий - реферат методику: из всей совокупы данных случайным образом выбирают около 90% векторов для обучения, а на оставшихся 10% тестируют сеть. Но, в критериях малого количества примеров эта процедура становится неэффективной исходя из убеждений оценивания вероятности ошибки систематизации. В разделе 4.4 был описан другой, более четкий способ расчета ошибки систематизации. Это, так именуемый, способ скользящего Классификация сейсмических сигналов на основе нейросетевых технологий - реферат экзамена (синонимы: cross-validation, “plug-in”-метод).[7,9].

В определениях нейронных сетей основную идею способа можно выразить так: выбирается один вектор из всей совокупы данных, а другие употребляются для обучения НС. Дальше, когда процесс обучения будет завершен, предъявляется этот избранный вектор и проверяется верно сеть распознала его Классификация сейсмических сигналов на основе нейросетевых технологий - реферат либо нет. После проверки избранный вектор ворачивается в начальную подборку. Потом выбирается другой вектор, на оставшихся сеть вновь учится, и этот новый вектор тестируется. Так повторяется ровно n1 +n2 раз, где n1 –количество векторов первого класса, а n2 - второго.

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

, где

N= n1 +n2 - общее число примеров;

E– число неверных векторов (сеть некорректно распознала предъявляемый пример).

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

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


7. Программная реализация.

При Классификация сейсмических сигналов на основе нейросетевых технологий - реферат выборе программного обеспечения для решения определенной задачки при помощи нейронных сетей вероятны два подхода: внедрение готовых решений в виде коммерческих пакетов либо реализация главных мыслях в виде своей программки.

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

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

Конкретно такие требования и были выдвинуты на исходном шаге исследовательских работ. Поточнее, нужно было создать программку, созданную Классификация сейсмических сигналов на основе нейросетевых технологий - реферат для систематизации сейсмических данных с помощью нейросетевых технологий, также работающую под операционной системой Unix (Linux и Sun Solaris SystemV 4.2). В итоге была разработана программка, реализующая главные идеи нейроинформатики, изложенные в разделе 6.

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

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

7.1 Многофункциональные способности программки.

В программке “nvclass.с” – (нейро Классификация сейсмических сигналов на основе нейросетевых технологий - реферат-классификатор векторов данных) реализована модель двухслойного персептрона, представленная в разделе 6. Эта программка создана для соотнесения тестируемого вектора признаков сейсмической инфы к одному из 2-ух классов. Входные данные представляют собой предысторию сейсмических явлений определенного региона, также тестируемый вектор признаков, соответственный сейсмическому событию, не включенному в предысторию. Эти данные считываются из соответственных файлов в Классификация сейсмических сигналов на основе нейросетевых технологий - реферат виде набора векторов признаков данной размерности. Автоматом, зависимо от размерности входных векторов, определяется конфигурация нейронной сети т.е. по дефлоту для данной размерности входных данных выбирается определенное (рекомендуемое по результатам подготовительных тестов) число нейронов в входном и сокрытом слоях, хотя при желании эти характеристики просто изменяются.

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

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

· Разные процедуры исходной инициализации весовых коэффициентов;

· Пакетный режим обучения;

· Метод корректировки шага обучения;

· Процедуры подготовительной обработки данных;

· Метод оценки эффективности – cross-validation.

· Процедура неоднократного обучения.

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

В Классификация сейсмических сигналов на основе нейросетевых технологий - реферат программке “nvclass” предусмотрены последующие режимы функционирования:

· «Внешний» режим – идентификации тестового входного вектора признаков;

· «Внутренний» режим – идентификация вектора признаков из набора векторов предыстории.

«Внешний» режим предназначен для систематизации вновь поступивших сейсмических данных и может быть использовать в последующих случаях

· Систематизация на нейронных сетях, уже обученных на данных из определенных регионов регионов Классификация сейсмических сигналов на основе нейросетевых технологий - реферат,

· Систематизация с повторным обучением нейронной сети.

«Внутренний» режим служит для оценки вероятности ошибки идентификации сети и включает два подрежима – проверки корректности идентификации 1-го из векторов набора предыстории и поочередной проверки всех данных векторов (“cross-validation”).

Режим работы программки устанавливается в файле опций.

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

7.2 Общие сведения.

1. Программный пакет созданный для идентификации типа сейсмического действия включает последующие модули:

· Начальный код программки “nvclass.c” и “nvclass.h”;

· Файл с опциями режима работы программки “nvclass.inp”;

· Файл с обучающей подборкой векторов “vector.txt Классификация сейсмических сигналов на основе нейросетевых технологий - реферат”;

· Файл с векторами для тестирования сети “vector.tst”;

· Файл, содержащий описание определенной конфигурации сети и весовые коэффициенты этой уже обученной сети “nor18.net”.

· Файл автоматической компиляции “Makefile” (Только для версии под Unix).

· Файл отчета о результатах работы программки “Report.txt”.

2. В реальный момент создано две версии программки. Одна работает Классификация сейсмических сигналов на основе нейросетевых технологий - реферат под операционной системой Dos 6.2 и выше, а другая под Unix (Linux, Solaris V4.2).

3. Нужное средство компиляции:

· Для Dos (Windows) – хоть какой компилятор Си. К примеру, Borland C++ 3.1 либо выше.

· Для Unix стандартный компилятор cc, входящий в состав базисной комплектации хоть какой операционной системы семейства Unix.

7.3 Описание входного файла Классификация сейсмических сигналов на основе нейросетевых технологий - реферат с начальными данными.

В качестве начальных данных употребляется отформатированный текстовый файл, в каком хранится информация о размерности векторов, их количестве и сами вектора данных. Файл обязан иметь форму числовой матрицы. Любая строчка матрицы соответствует одному вектору признаков. Количество признаков должно совпадать с параметром NDATA . Количество столбцов равно количеству Классификация сейсмических сигналов на основе нейросетевых технологий - реферат признаков плюс два. 1-ый столбец содержит порядковый номер вектора в общей совокупы данных (соответствует последовательности 1, 2, 3,...,NPATTERN ), а в последнем столбце записаны значения указателя классификатора: 1- для вектора из первого класса, 0 – для вектора из второго класса. Все числовые характеристики делятся пробелами и записываются в кодах ASCII. Пример файла приведен в приложении 2.

7.4 Описание Классификация сейсмических сигналов на основе нейросетевых технологий - реферат файла опций.

Характеристики опции программки содержаться во входном файле “nvclass.inp”. Пример файла приведен в приложении 3. Для опции употребляются последующие переменные:

TYPE - РЕЖИМ РАБОТЫ Программки

TYPE=1_1

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

1. NDATA –Размерность входных данных

2. TESTVECTOR – Название файла с тестируемым вектором

3. NETWORKFILE – Название файла с матрицами весов за ранее обученной сети

TYPE=1_2

Это значение соответствует наружному режиму функционирования программки с обучением нейронной сети и тестированием на ней данного вектора. Нужно задать последующие характеристики:

1. NDATA –Размерность входных данных

2. NPATTERN – Количество векторов признаков

3. PATTERNFILE Классификация сейсмических сигналов на основе нейросетевых технологий - реферат- Название файла с набором векторов признаков

4. TESTVECTOR – Название файла с тестируемым вектором;

5. RESNETFNAME- Имя выходного файла с матрицами весов обученной сети.

TYPE=2_1

Данное значение соответствует внутреннему режиму с проверкой 1-го из векторов из представленной подборки. Для функционирования программки нужно задать последующие характеристики:

1. NDATA –Размерность входных данных

2. NPATTERN – Количество векторов Классификация сейсмических сигналов на основе нейросетевых технологий - реферат признаков

3. PATTERNFILE - Название файла с набором векторов признаков

4. NUMBERVECTOR - Номер тестового вектора признаков из данной подборки

TYPE=2_2

При данном значении параметра программка будет работать во внутреннем режиме с поочередной проверкой всех векторов (“cross_validation”). Нужно задать последующие характеристики :

1. NDATA - Размерность входных данных

2. NPATTERN – Количество векторов признаков

3. PATTERNFILE - Название файла с набором векторов Классификация сейсмических сигналов на основе нейросетевых технологий - реферат признаков

NDATA РАЗМЕРНОСТЬ ВЕКТОРОВ ПРИЗНАКОВ

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

NPATTERN КОЛИЧЕСТВО ВЕКТОРОВ ПРИЗНАКОВ

Этот числовой параметр охарактеризовывает объем обучающей подборки и соответствует количеству строк во входном файле PATTERNFILE .

PATTERNFILE Название файла Классификация сейсмических сигналов на основе нейросетевых технологий - реферат С НАБОРОМ ВЕКТОРОВ ПРИЗНАКОВ

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

TESTVECTOR Название файла С ТЕСТИРУЕМЫМ ВЕКТОРОМ ПРИЗНАКОВ.

Название файла, содержащего вектор признаков, который нужно идентифицировать. Файл обязан иметь форму строчки (числа делятся пробелами). Количество признаков должно соответствовать переменной NDATA .

NETWORKFILE Название файла С Классификация сейсмических сигналов на основе нейросетевых технологий - реферат МАТРИЦАМИ ВЕСОВ За ранее ОБУЧЕННОЙ СЕТИ.

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

RESNETFNAME ИМЯ ВЫХОДНОГО ФАЙЛА С МАТРИЦАМИ ВЕСОВ ОБУЧЕННОЙ СЕТИ

Название файла, содержащего характеристики спроектированной и обученной нейронной сети в данном сеансе эксплуатации программки. В названии файла непременно следует указывать символьную абревиатуру региона, из которого получена сейсмическая информация Классификация сейсмических сигналов на основе нейросетевых технологий - реферат и размерность векторов признаков NDATA обрабатываемой инфы, чтоб избежать неурядицы в интерпретации различных моделей. (К примеру, norv18.net либо isrl9.net).

NUMBERVECTOR ПОРЯДКОВЫЙ НОМЕР ВЕКТОРА ПРИЗНАКОВ

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

REPORTFNAME Название файла ОТЧЕТА

Название файла с плодами работы программки.

InitWeigthFunc ФУНКЦИЯ ИНИЦИАЛИЗАЦИИ Исходных ВЕСОВЫХ КОЭФФИЦИЕНТОВ СЕТИ.

InitWeigthFunc=Gauss

Исходные матрицы весовых коэффициентов будут выбраны как нормально распределенные Классификация сейсмических сигналов на основе нейросетевых технологий - реферат случайные величины с математическим ожиданием Alfa и среднеквадратическом отклонении Sigma ( N[Alfa,Sigma]).

InitWeigthFunc=Random

Исходные матрицы весовых коэффициентов будут выбраны как умеренно распределенные случайные величины в спектре [-Constant,Constant].

(Значение по дефлоту – InitWeigthFunc= RandomDistribution[-3,3], т.е. Constant=3)

Constant Спектр Умеренно РАСПРЕДЕЛЕННЫХ СЛУЧАЙНЫХ ВЕЛИЧИН

Смотри InitWeigthFunc …

Sigma СРЕДНЕКВАДРАТИЧЕСКОЕ ОТКЛОНЕНИЕ НОРМАЛЬНО Классификация сейсмических сигналов на основе нейросетевых технологий - реферат РАСПРЕДЕЛЕН-НЫХ СЛУЧАЙНЫХ ВЕЛИЧИН

Смотри InitWeigthFunc …

Alfa МАТЕМАТИЧЕСКОЕ ОЖИДАНИЕ НОРМАЛЬНО РАСПРЕДЕЛЕННЫХ СЛУЧАЙНЫХ ВЕЛИЧИН

Смотри InitWeigthFunc …

WidrowInit NGUYEN-WIDROW ИНИЦИАЛИЗАЦИЯ .

Параметр позволяет сформировать исходные весовые коэффициенты по методике предложенной Nguyen и Widrow. Вероятные варианты: “Yes” – провести подобающую инициализацию. “No”- не использовать эту функцию.(Значение по дефлоту – “No”)

Shuffle Смешивание ВЕКТОРОВ ПРИЗНАКОВ Классификация сейсмических сигналов на основе нейросетевых технологий - реферат

При значении параметра “Yes” – входные вектора будут за ранее перемешаны. При “No” – вектора будут подаваться на вход сети в той последовательности, в какой они размещены во входном файле (PATTERNFILE). ( Значение по дефлоту – “Yes”).

Scaling Подготовительная ОБРАБОТКА ВЕКТОРОВ ПРИЗНАКОВ.

Этот параметр служит для использования в рамках программки “nvclass” процедуры масштабирования входных Классификация сейсмических сигналов на основе нейросетевых технологий - реферат данных. Эта процедура позволяет существенно ускорить процесс обучения нейронной сети, также отменно улучшает результаты тестирования. Вероятные значения параметра: “Yes”,”No”. (Значение по дефлоту – “Yes”).

LearnToleranse ТОЧНОСТЬ ОБУЧЕНИЯ.

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

Eta КОЭФФИЦИЕНТ ОБУЧЕНИЯ НЕЙРОННОЙ СЕТИ .

Значение коэффициента задает скорость и качество обучения нейронной сети. Употребляется для метода оборотного распространения ошибки. (Значение по дефлоту–1.0)

MaxLearnCycles Наибольшее КОЛИЧЕСТВО ИТЕРАЦИЙ ОБУЧЕНИЯ

Параметр задает количество итераций после которых процесс обучения будет автоматом завершен Классификация сейсмических сигналов на основе нейросетевых технологий - реферат. (Величина по умолчанию- 2000)

Loop КОЛИЧЕСТВО ПОВТОРОВ ОБУЧЕНИЯ.

Параметр задает величину полных циклов функционирования программки (целое нечетное число). В каждом цикле формируются исходные матрицы весов делается обучение сети и осуществляется систематизация тестового вектора. Результаты всех циклов обрабатываются, и формируется итоговое заключение . (Значение по дефлоту=1).

7.5 Метод работы программки.

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

1. Инициализация сети;

2. Настройка;

3. Проверка тестовых векторов.

Инициализация

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

Настройка.

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

Проверка тестовых векторов.

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

7.6 Эксплуатация программного продукта Классификация сейсмических сигналов на основе нейросетевых технологий - реферат.

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

Для корректной работы в предстоящем лучше придерживаться определенной последовательности действий:

1. Приготовить начальные данные согласно принятом формату.

2. Поменять в Классификация сейсмических сигналов на основе нейросетевых технологий - реферат согласовании с требованиями определенные поля в файле опций.

3. Запустить программку.

4. Проанализировать итог, записанный в соответственном файле.

7.7 Итог работы программки.

Для исследовательских работ способностей разработанного программного обеспечения были проведены разные опыты, основная цель которых - подобрать значения характеристик опции программки, при которых итоговые результаты ее работы содержали меньшее количество ошибок идентификации. Методика, по которой Классификация сейсмических сигналов на основе нейросетевых технологий - реферат оценивалась ошибка систематизации, базирована на подходе “cross-validation”.

Опыты проводились на данных, приобретенных из сейсмограмм, записанных в Норвежской сейсмологической сети. В начальной выборке насчитывалось 86 событий из различных классов, из их соответственно 50 – землетрясений и 36 – взрывов. Исследования проводились для различного числа признаков идентификации, а конкретно для 18 и 9 размерных векторов Классификация сейсмических сигналов на основе нейросетевых технологий - реферат признаков.

1-ая серия тестов была проведена на 18 размерных векторах. Структура нейронной сети соответствовала , где 18 – количество нейронов во входном слое, 9- число нейронов на первом сокрытом слое , 1-размерность выхода сети. Повышение нейронов на сокрытом слое не приводило к улучшению результатов, а при уменьшении появлялись дополнительные ошибки, в следствии чего такая Классификация сейсмических сигналов на основе нейросетевых технологий - реферат структура предлагается в качестве хорошей.

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

В качестве исходной конфигурации использовались последующие значения настраиваемых характеристик в файле “nvclass.inp”:

TYPE=2_2

NDATA=18

NPATTERN=86

PatternFile=norv18.pat

NetStructure=[18,9,1]

WidrowInit=No

Shuffle=Yes

Scaling=Yes

Eta=0.7

MaxLearnCycles=1950

Loop=5

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

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


Отметим, что более постоянные результаты получаются в случае инициализации весов с помощью нормально распределенных величин. Можно достигнуть всего только 4-5 ошибок из 86, что соответствует Классификация сейсмических сигналов на основе нейросетевых технологий - реферат ошибке идентификации равной 5-6 процентов.

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

В качестве примера приведем исследования подобные тем, которые описаны выше.(Рис. 7.3, 7.4).


Последнюю диаграмму можно представить в виде.


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

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

8. Заключение

Проведенные исследования подтвердили эффективность внедрения нейросетевых технологий для идентификации типа источника сейсмических действия. При определенных настройках нейронной сети можно достигнуть результатов, когда возможность правильного определения составляет 96.5%. Ошибки появляются лишь на 3 векторах из 86. Если ассоциировать приобретенные результаты с теми, которые можно Классификация сейсмических сигналов на основе нейросетевых технологий - реферат достигнуть при использовании стандартных способов систематизации, один из вариантов которых приведен в разделе 4, то они фактически повторяют друг дружку. И статистика и нейронные сети ошибаются однообразное количество раз, при этом на одних и тех же векторах. Из 86 событий статистические способы ошибаются на 3 векторах (1–землетрясение и 2-взрыва), и Классификация сейсмических сигналов на основе нейросетевых технологий - реферат нейросетевой классификатор также ошибается конкретно на этих векторах. Соответственно пока нельзя гласить о каком-то приемуществе 1-го способа над другим.

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

Итак, подводя результат всему выше произнесенному, выделим главные результаты проведенных исследовательских работ:

1. Нейронные сети позволяют удачно решать делему определения типа источника сейсмического действия.

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

3. Вероятны улучшения технических черт нейросетевого Классификация сейсмических сигналов на основе нейросетевых технологий - реферат решения.

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

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

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

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


Перечень литературы.

1. Уоссермен Ф. “Нейрокомпьютерная техника” - М.: Мир,1992.

2. Горбань А.Н., Дубинин-БарковскийВ.Л., Кирдин А.Н. “Нейроинформатика” СП “Наука” РАН 1998.

3. Горбань А.Н., Россиев Д.А. “Нейронные сети на компьютере” СП “Наука” РАН 1996.

4. Ежов А Классификация сейсмических сигналов на основе нейросетевых технологий - реферат.А., Шумский С.А. “Нейрокомпьютинг и его применение в экономике и бизнесе”.1998.

5. Bishop C.M. “Neural Networks and Pattern Recognition.” Oxford Press. 1995.

6. Goldberg D. “Genetic Algorithms in Machine Learning, Optimization, and Search.” – Addison-Wesley,1988.

7. Fausett L.V. “Fundamentals of Neural Networks: Architectures, Algorithms and Applications”, Prentice Hall, 1994.

8. Kohonen T Классификация сейсмических сигналов на основе нейросетевых технологий - реферат. “Self-organization and Associative Memory”, Berlin: Springer- Verlag, 1989.

9. Kushnir A.F., Haikin L.M., Troitsky E.V. “Physics of the earth and planetary interiors” 1998.

10.Копосов А.И., Щербаков И.Б., Кисленко Н.А., Кисленко О.П., Варивода Ю.В. Отчет по научно-исследовательской работе "Создание аналитического обзора информационных источников по Классификация сейсмических сигналов на основе нейросетевых технологий - реферат применению нейронных сетей для задач газовой технологии"; и др., ВНИИГАЗ, 1995, www.neuralbench.ru

11.Fukunaga K., Kessel D.L., “Estimation of classification error”, IEEE Trans. Comp. C 20, 136-143. 1971.

12.Деев А.Д., “Применение статистического дискриминационного анализа и его ассимптотического расширения для сопоставления разных размерностей места.”, РАН 195, 759-762. 1970.


Приложение.

1. Пример подборки сейсмограмм.

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


2. Пример файла с векторами признаков.

Представлена подборка из файла 9_Norv.txt , содержащего 9 размерные вектора признаков.

NumOfPattern: 86

PatternDimens: 9

1 -14.3104 -13.2561 -13.4705 -13.4306 -14.1015 -13.3503 -13.3805 -13.7369 -0.3494 0

2 -14.6881 -13.6349 -12.9050 -13.4323 -14.2279 -13.4720 -13.2117 -13.5791 -1.2801 0

3 -14.4036 -14.1745 -13.8014 -12.7209 -14.6283 -13.9589 -13.4649 -12.9716 -0.8250 0

55 -14.3693 -13.4362 -11.4072 -12.3129 -14.8612 -13.3480 -12.8517 -13.4014 -0.7738 0

56 -14.2856 -12.6858 -13.8215 -13.4282 -14.0982 -13.1587 -13.2792 -13.7852 -1.3442 0

57 -14.4822 -13.1141 -13.7787 -13.4466 -13.6761 -13.2969 -13.6033 -13.9252 -0.6642 1

58 -13.5522 -13.1302 -13.5444 -14.1471 -13.2994 -13.2368 -13.9776 -14.4295 -0.9973 1

59 -14.8524 -11.9846 -13.7231 -14.2496 -13.4809 -13.0515 -13.8950 -14.3923 -1.8284 1

85 -14.5994 -13.6920 -12.8539 -13.7629 -14.1699 -13.2075 -13.3422 -13.6788 -11.9537 1

86 -14.3821 -13.6093 -12.8677 -13.7788 -14.1260 -13.3246 -13.2966 -13.6453 -11.4304 1

3. Файл с опциями программки

#

# Common parameters for programm "NVCLASS"

#

# # # # # # # # # # # # # # # # # # # #

# 1_1 - OnlyTest mode , 1_2 - TestAfterLearn mode,

# 2_1 - CheckOneVector , 2_2 - CrossValidation mode.

#

TYPE=2_2

NDATA=9

NPATTERN=86

PatternFile=9_Norv.txt

NTEST=10

TestVector=vector.tst

NetworkFile Классификация сейсмических сигналов на основе нейросетевых технологий - реферат=9.net

ResNetFname=9.net

NumberVector=57

ReportFile=Report.txt

Debug=Yes

#

# Next parameters was define in result experiments and if you will

# change it, the any characteristics of Neural Net may be not optimal

# (since may be better then optimal).

#

# # # # # # # # # # #

# 'NetStructure' must be: [NDATA,NUNIT1,1] (NOUT=1 always)

# value 'AUTO'-'NetStructure' will be define the programm.(See help Классификация сейсмических сигналов на основе нейросетевых технологий - реферат).

# example : [18,9,1], or [18,18,1], or [9,9,5,1]

NetStructure=[18,12,1]

# may be: [Gauss] or [Random]

InitWeigthFunc=Gauss

Constant=3

Alfa=0

Sigma=1.5

Widrow=No

Shuffle=Yes

Scaling=Yes

LearnTolerance=0.1

Eta=1

MaxLearnCycles=50

Loop=3

#end of list

4. Пример файла отчета.

NVCLASS report - Wed Jun 02 15:58:02 1999

Type = 1_2

Neural Net -

PatternFile - vect.txt

Test Vector(s) - vector.tst

ResNetFname - 12.net

LearnTolerance = 0.10

InitialWeigthFunc = Gauss[ 0.0, 1.5]

Learning cycle result:

NumIter = 5

NumLE = 3

Error Классификация сейсмических сигналов на основе нейросетевых технологий - реферат vector(s): 58, 59, 63,

+-----+------+--------+------+

| N | ID | Result |Target|

+-----+------+--------+------+

| 1 | 24 | 0.1064 | 0 |

| 2 | 25 | 0.9158 | 1 |

| 3 | 26 | 0.0452 | 0 |

| 4 | 27 | 0.0602 | 0 |

| 5 | 28 | 0.0348 | 0 |

| 6 | 29 | 0.0844 | 0 |

| 7 | 30 | 0.1091 | 0 |

| 8 | 31 | 0.0821 | 0 |

| 9 | 32 | 0.0298 | 0 |

| 10 | 33 | 0.2210 | 0 |

+-----+------+--------+------+

Learning cycle result:

NumIter = 5

NumLE = 5

Error vector(s): 33, 34, 55, 58, 63,

+-----+------+--------+------+

| N | ID | Result |Target|

+-----+------+--------+------+

| 1 | 24 | 0.1279 | 0 |

| 2 | 25 | 0.9929 | 1 |

| 3 | 26 | 0.0960 | 0 |

| 4 | 27 | 0.1463 | 0 |

| 5 | 28 | 0.1238 | 0 |

| 6 | 29 | 0.1320 | 0 |

| 7 | 30 | 0.1478 | 0 |

| 8 | 31 | 0.1235 | 0 |

| 9 | 32 | 0.0740 | 0 |

| 10 | 33 | 0.5140 | 1 |

+-----+------+--------+------+

5. Файл описания функций, типов переменных и применяемых библиотек “nvclass.h”.

/*

* --- Neuro classificator---

*

* Common defines

*/

#include

#include

#include

#include

#include

#include

#include

//#include

//#include

#include

#define DefName "nvclass.inp"

#define MAXDEF 100

#define MAXLINE 256

#define Классификация сейсмических сигналов на основе нейросетевых технологий - реферат NMAXPAT 100

#define NMXINP 20

#define NMXUNIT 20

#define CONT 0

#define EXIT_OK 1

#define EXIT_CNT 2

#define RESTART 911

#define MAXEXP 700 /* Max arg exp(arg) without error 'OVERFLOW' */

#define Random 10

#define Gauss 20

#define OK 0

#define Error 1

#define Yes 77

#define No 78

#define Min 0 /* Find_MinMax(...) */

#define Max 1

#define TYPE_ONE 21

#define Классификация сейсмических сигналов на основе нейросетевых технологий - реферат TYPE_TWO 22

#define TYPE_THREE 23

#define TYPE_FOUR 24

int NDATA = 0;

int NUNIT1 = 0;

int NUNIT2 = 0;

int NUNIT3 = 0;

int NOUT = 1;

int NPATTERN = 0; /* Number of input pattern*/

int NWORK = 0; /* Number of work pattern*/

int NTEST= 0; /* Number of test pattern*/

int result;

int STOP = 0;

int NumOut = 250; /* Number of itteration, after which show result in debugfile. */

int Классификация сейсмических сигналов на основе нейросетевых технологий - реферат Num_Iter=10;/* The parameters requred in the procecc of */

float Percent=0.25; /* dinamic lerning with change 'eta' */

float LearnTolerance = 0.10;

float TestTolerance = 0.5;

float MAX_ERR=0.00001; /* min error */

float eta = 1.0; /* learning coefficient*/

float MIN_ETA=0.000001;

float **Array_MinMax;

int *Cur_Number;

float W1[NMXINP][NMXUNIT];

float W2[NMXUNIT];

float PromW1[NMXINP Классификация сейсмических сигналов на основе нейросетевых технологий - реферат][NMXUNIT];

float PromW2[NMXUNIT];

float PromW1_OLD[NMXINP][NMXUNIT];

float PromW2_OLD[NMXUNIT];

float Err1[NMXUNIT];

float Err2;

float OLD_ERROR;

float GL_Error=0.0;

float Out1[NMXUNIT];

float Out2;

char NetStr[20]="Auto"; /* String with pattern of Net Structure*/

int Type = TYPE_THREE; /* Enter the mode of work of Классификация сейсмических сигналов на основе нейросетевых технологий - реферат programm */

int InitFunc = Random; /* Random [=10] weigth will RandomDistribution Gauss [=20] - ... GaussianDistributon */

float Constant = 1; /* RandomDistribution [-Constant,Constant]*/

float Alfa = 0; /* GaussianDistribution [Alfa,Sigma]*/

float Sigma = 1; /* ... */

int Widrow = No; /* Nguyen-Widrow initialization start weigth*/

int Loop = 1; /* Number repeat of Learning cycle */

char *PatternFile; /* File with input patterns*/

char *TestVector;

char *ReportFile="report.txt Классификация сейсмических сигналов на основе нейросетевых технологий - реферат"; /* name of report file */

char *NetworkFile; /* Name of input NetConfig file */

char *ResNetFname; /* Name of output NetConfig file */

int DEBUG = Yes; /* if 'Yes' then debug info in the DebugFile */

char *DebugFile="Logfile.log"; /* Name of the debug file*/

int NumberVector = 0; /* Number of TEST vector */

int Shuffle = Yes; /* Flag - shuffle the input Классификация сейсмических сигналов на основе нейросетевых технологий - реферат vectors*/

int Scaling = Yes; /* Scaling input vector */

int MaxLearnCycles = 1999; /* Max number of learning iteration */

FILE *Dfp; /* Debug file pointer */

FILE *Rfp; /* Report file pointer*/

typedef struct Pattern {

int ID; /* ID number this vector in all set of pattern */

float *A; /* pattern (vector) A={a[0],a[1],...,a[NDATA]} */

float Классификация сейсмических сигналов на основе нейросетевых технологий - реферат Target; /* class which this vector is present*/

} PAT;

PAT *Input;

PAT *Work;

PAT *Test;

/* lines in defaults file are in the form "NAME=value" */

typedef struct Default {

char *name; /* name of the default */

char *value; /* value of the default */

} DEF;

/* structure of statistics info about one test vector */

typedef struct Классификация сейсмических сигналов на основе нейросетевых технологий - реферат Statistic {

int ID; /* Primery number from input file */

float Target;

float TotalRes; /* Total propability */

int Flag; /* Flag = 1, if vector was error and = 0

in over case */

float *result; /* Result of testing vector on current

iteration */

int *TmpFlag; /* analog 'Flag' on current itteration */

int *NumIter; /* Number iteration of learning on which

Learning Классификация сейсмических сигналов на основе нейросетевых технологий - реферат cycle STOPED */

int **NumLE; /* Error vectors after cycle of learning

was test*/

} STAT;

/* structure of the some result of learning cycle */

typedef struct ResLearning {

int NumIter;

int LearnError[NMAXPAT+1]; /* A[0]-count of error,

A[1]-ID1,

A[2]-ID2,...

A[NMAXRL]-ID?.*/

} RL;

/* function prototypes */

void OnlyTestVector(void);

void TestAfterLearn (void);

void Классификация сейсмических сигналов на основе нейросетевых технологий - реферат CheckOneVector ( void );

void CrossValidation ( void );

DEF **defbuild(char *filename);

DEF *defread(FILE *fp);

FILE *defopen (char *filename);

char *defvalue(DEF **deflist, const char *name);

int defclose(FILE *fp);

void defdestroy(DEF **, int);

void getvalues(void);

void Debug (char *fmt, ...);

void Report (char *fmt, ...);

void Widrow_Init(void);

int Init_W Классификация сейсмических сигналов на основе нейросетевых технологий - реферат( void );

float RavnRaspr(float A, float B);

float NormRaspr(float B,float A);

void ShufflePat(int *INP,int Koll_El);

float F_Act(float x);

float Forward (PAT src);

int LearnFunc (void);

int Reset (float ResErr, int Cnt, int N_Err);

void Update_Last (int n, float Total_Out Классификация сейсмических сигналов на основе нейросетевых технологий - реферат);

void Update_Prom1 (int n);

void Prom_to_W (void);

void Update_All_W (int num, float err_cur );

void Init_PromW(void);

void Prom_to_OLD(void);

int CheckVector(float Res, PAT src);

int *TestLearn(int *src);

RL FurtherLearning(int NumIteration,

float StartLearnTolerans,

float EndLearnTolerans,

RL Классификация сейсмических сигналов на основе нейросетевых технологий - реферат src);

STAT *definestat (PAT src);

STAT **DefineAllStat (PAT *src,int Num);

void FillStatForm (STAT *st, int iteration, float res, RL lr);

void FillSimpleStatForm (STAT *st, float res);

void destroystat ( STAT *st, int param);

void DestroyAllStat (STAT **st, int Num);

void PrintStatHeader(void);

void printstat(STAT *st);

void PrintStatLearn(RL src);

void Классификация сейсмических сигналов на основе нейросетевых технологий - реферат PrintTestStat(STAT **st, int len);

void PrintErrorStat (STAT **st,int Len);

int DefineNetStructure (char *ptr);

void getStructure(char buf[20]);

PAT patcpy (PAT dest, PAT src);

PAT* LocPatMemory(int num);

void ReadPattern (PAT *input, char *name,int Len);

void FreePatMemory(PAT* src, int num);

void ShowPattern (char *fname, PAT Классификация сейсмических сигналов на основе нейросетевых технологий - реферат *src, int len);

void ShowVector(char *fname,PAT src);

float getPatTarget (float res);

PAT* DataOrder (PAT* src,int Len, int Ubit, PAT* dest, PAT* test);

void FindMinMax (PAT *src,int Dimens, int Num_elem, float **Out_Array);

void ConvX_AB_01(PAT src);

int *DefineCN (int len);

int Классификация сейсмических сигналов на основе нейросетевых технологий - реферат getPosition (int Num, int *src, int Len);

void DestroyCN (int *src);

void ShowCurN (int LEN);

float **LocateMemAMM(void);

void FreeAMM (float **src);

void WriteHeaderNet(char *fname, float **src);

void WriteNet (char *fname,int It);

void ReadHeaderNet(char *fname, float **src);

int ReadNet (char *fname, int It);

FILE *OpenFile(char *name);

int CloseFile Классификация сейсмических сигналов на основе нейросетевых технологий - реферат(FILE *fp);

/* End of common file */

6. Файл автоматической компиляции программки под Unix -“Makefile”.

CC= cc

LIBS= -lm

OBJ= nvclass.o

nvclass: $(OBJ)

$(CC) -o nvclass $(LIBS) $(OBJ)

nvclass.o: nvclass.c

7. Основной модуль - “nvclass.с”

/*

* Neuron Classificator ver 1.0

*/

#include "common.h"

/* =========================

* MAIN MODULE

* =========================

*/

void main (int argc, char *argv[])

{ int i;

char buf Классификация сейсмических сигналов на основе нейросетевых технологий - реферат[MAXLINE], PrName[20], *ptr;

time_t tim;

time(&tim);

/* UNIX Module */

Dfp = OpenFile(DebugFile);

strcpy(buf,argv[0]);

ptr = strrchr(buf,'/');

ptr++;

strcpy(PrName,ptr);

Debug ("\n\n'%s' - Started %s",PrName,ctime(&tim));

getvalues();

Rfp = OpenFile(ReportFile);

DefineNetStructure(NetStr); /* NetStr string from input file */

getStructure(buf);

Debug ("\nNeyral net %s Классификация сейсмических сигналов на основе нейросетевых технологий - реферат",buf);

Input = LocPatMemory(NPATTERN);

Work = LocPatMemory(NPATTERN);

Array_MinMax = LocateMemAMM();

Cur_Number = DefineCN (NPATTERN);

printf("\nMetka - 1");

if (Type == TYPE_ONE)

OnlyTestVector ();

if (Type == TYPE_TWO)

TestAfterLearn ();

if (Type == TYPE_THREE)

CheckOneVector ();

if (Type == TYPE_FOUR)

CrossValidation();

time(&tim);

Debug ("\n\n%s - Normal Stoped %s",PrName,ctime Классификация сейсмических сигналов на основе нейросетевых технологий - реферат(&tim));

CloseFile(Dfp);

CloseFile(Rfp);

FreeAMM (Array_MinMax);

DestroyCN (Cur_Number);

FreePatMemory(Input,NPATTERN);

FreePatMemory(Work, NPATTERN);

}

/*

* ^OnlyTestVectors - read net from (NetworkFile) and test the TestVector(s)

*/

void OnlyTestVector(void)

{ char buf[MAXLINE+1];

STAT **st, *stat;

int i,j;

float Res;

Debug ("\nOnlyTestVector proc start");

Debug ("\n NPATTERN = %d",NPATTERN);

Debug Классификация сейсмических сигналов на основе нейросетевых технологий - реферат ("\n NTEST = %d",NTEST);

Test = LocPatMemory(NTEST);

ReadPattern(Test,TestVector, NTEST);

/* ShowPattern ("1.tst",Test,NTEST);*/

PrintStatHeader();

st = DefineAllStat (Test,NTEST);

ReadHeaderNet(NetworkFile,Array_MinMax);

if (Scaling == Yes)

{ for (i=0;i

ConvX_AB_01(Test[i]);

}

for (i=0; i < Loop ; i++)

{ Debug("\n----/ STEP = %d /-----",i+1);

Report("\n ",i+1);

ReadNet Классификация сейсмических сигналов на основе нейросетевых технологий - реферат(NetworkFile,i+1);

for (j=0;j

{ Res=Forward(Test[j]);

CheckVector(Res,Test[j]);

FillSimpleStatForm(st[j],Res);

}

PrintTestStat(st,NTEST);

}

DestroyAllStat (st,1);

FreePatMemory(Test,NTEST);

}

/* ---------------------------------

* Debug to LOG_FILE and to CONSOLE

*/

/* debug for UNIX */

void Debug (char *fmt, ...)

{ va_list argptr;

int cnt=0;

if ((Dfp != NULL) && (DEBUG == Yes))

{

va Классификация сейсмических сигналов на основе нейросетевых технологий - реферат_start(argptr, fmt);

vfprintf(Dfp, fmt, argptr);

fflush (Dfp);

va_end(argptr);

}

}

void Report (char *fmt, ...)

{ va_list argptr;

int cnt=0;

if (Rfp != NULL)

{

va_start(argptr, fmt);

vprintf (fmt,argptr);

vfprintf(Rfp, fmt, argptr);

fflush (Rfp);

va_end(argptr);

}

}

/* debug for DOS */

/*

void Debug (char Классификация сейсмических сигналов на основе нейросетевых технологий - реферат *fmt, ...)

{ FILE *file;

va_list argptr;

if (DEBUG == Yes)

{ if ((file = fopen(DebugFile,"a+"))==NULL)

{ fprintf(stderr, "\nCannot open DEBUG file.\n");

exit(1);

}

va_start(argptr, fmt);

vfprintf(file, fmt, argptr);

va_end(argptr);

fclose (file);

}

}

void Report (char *fmt, ...)

{ FILE *file;

va_list argptr;

if ((file = fopen(ReportFile,"a+"))==NULL Классификация сейсмических сигналов на основе нейросетевых технологий - реферат)

{ fprintf(stderr, "Cannot open REPORT file.\n");

exit(1);

}

va_start(argptr, fmt);

vfprintf(file, fmt, argptr);

vprintf(fmt,argptr);

va_end(argptr);

fclose (file);

}

*/

/*

* ^ReadPattern

*/

void ReadPattern (PAT *input, char *name, int Len)

{ int i=0, j=0, id, TmpNp=0, TmpNd=0, Flag=0;

char *buf1="NumOfPattern:";

char *buf2="PatternDimens:";

char str Классификация сейсмических сигналов на основе нейросетевых технологий - реферат[40],str1[10];

PAT Ptr;

FILE *DataFile;

float tmp;

Debug ("\nReadPattern(%s,%d) - started",name,Len);

Ptr.A =(float*) malloc (NDATA * sizeof(float));

if ((DataFile = fopen(name,"r")) == NULL )

{ Debug("\nCan't read the data file (%s)",name);

fclose(DataFile);

exit (1);

}

if ((strcmp(name,TestVector)) == 0) /* if read TestVector, then read */

Flag Классификация сейсмических сигналов на основе нейросетевых технологий - реферат = 1; /* only ID and A[i]. (NO Target) */

fscanf(DataFile,"%s %s",str,str1);

if ((strcmp(str,buf1))==0)

TmpNp = atoi (str1);

Debug("\nNumOfPattern = %d",TmpNp);

fscanf(DataFile,"%s %s",str,str1);

if ((strcmp(str,buf2))==0)

TmpNd = atoi (str1);

Debug("\nPatternDimens = %d",TmpNd);

if (TmpNp != Len)

Debug ("\n\tWARNING! - NumOfPattern NOT Классификация сейсмических сигналов на основе нейросетевых технологий - реферат EQUAL Param (%d != %d)",TmpNp,Len);

if (TmpNd != NDATA)

Debug ("\n\tWARNING! - PatternDimens NOT EQUAL NDATA (%d != %d)",TmpNd,NDATA);

for (i = 0; i < Len; i++)

{fscanf(DataFile,"%d",&id);

Ptr.ID = id;

for (j=0; j < NDATA; j++)

{ fscanf (DataFile,"%f",&tmp);

Ptr.A[j]=tmp;

}

if ( Flag )

tmp = -1;

else

fscanf(DataFile,"%f",&tmp Классификация сейсмических сигналов на основе нейросетевых технологий - реферат);

Ptr.Target = tmp;

input[i]=patcpy(input[i],Ptr);

}

fclose(DataFile);

}

/*

* ^LocPatMemory - locate memory for (PAT *)

*/

PAT* LocPatMemory(int num)

{ int i;

PAT *src;

src = (PAT *) malloc (num * sizeof(PAT));

for (i=0; i< num; i++)

{src[i].ID = -1;

src[i].A = (float*) malloc (NDATA * sizeof(float));

src[i Классификация сейсмических сигналов на основе нейросетевых технологий - реферат].Target = -1.0;

}

return (src);

}

void FreePatMemory( PAT* src, int num )

{ int i;

for (i=0;i

free (src[i].A);

free (src);

}

/*

* Copies pattern src to dest.

* Return dest.

*/

PAT patcpy (PAT dest, PAT src)

{ int i;

dest.ID = src.ID;

for (i=0;i

dest.A[i] = src.A[i];

dest Классификация сейсмических сигналов на основе нейросетевых технологий - реферат.Target = src.Target;

return dest;

}

…..

/* Random distribution value

* rand() return x from [0,32767] -> x/32768

* -> x from [0,1]

*/

float RavnRaspr(float A, float B)

{float x;

x = (B-A)*rand()/(RAND_MAX+1.0) + A;

return x;

}

float NormRaspr(float A,float B)

{ float mat_ogidanie=A, Sigma=B;

float Sumx=0.0, x;

int Классификация сейсмических сигналов на основе нейросетевых технологий - реферат i;

for (i=0;i<12;i++)

Sumx = Sumx + RavnRaspr(0,1); /* from R[0,1] -> N[a,sigma]*/

x = Sigma*(Sumx-6) + mat_ogidanie;

return x;

}

int Init_W ( void )

{ int i,j;

float A, B;

time_t t,t1;

t = time(NULL);

t1=t;

/* restart random generator*/

while (t==t1)

srand((unsigned) time(&t));

if (InitFunc == Random Классификация сейсмических сигналов на основе нейросетевых технологий - реферат)

{ A = -Constant;

B = Constant;

Debug ("\nInit_W () --- Start (%ld))",t);

Debug ("\n InitFunc=Random[%4.2f,%4.2f]",A,B);

for(i=0; i<=NDATA; i++)

for(j=0; j

W1[i][j]=RavnRaspr(A,B);

for(j=0; j <= NUNIT1; j++)

W2[j]=RavnRaspr(A,B);

}

if (InitFunc == Gauss)

{ A Классификация сейсмических сигналов на основе нейросетевых технологий - реферат = Alfa;

B = Sigma;

Debug ("\nInit_W () --- Start (%ld))",t);

Debug ("\n InitFunc=Gauss[%4.2f,%4.2f]",A,B);

for(i=0; i<=NDATA; i++)

for(j=0; j

W1[i][j] = NormRaspr(A,B);

for(j=0; j <= NUNIT1; j++)

W2[j] = NormRaspr(A,B);

}

if ( Widrow == Yes )

Widrow_Init();

Debug ("\nInit_W - sucsefull ");

return Классификация сейсмических сигналов на основе нейросетевых технологий - реферат OK;

}

/* LearnFunc */

int LearnFunc (void)

{ int i, j, n, K, NumErr=0;

int num=0;

float err_cur=0.0, Res=0;

time_t tim;

float ep[NMAXPAT];

GL_Error=1.0;

time(&tim);

Debug ("\nLearnFunc () --- Started");

Debug ("\n eta = %4.2f",eta);

Debug ("\n LearnTolerance = %4.2f",LearnTolerance);

Init_PromW();

do

{ num++;

err_cur = 0.0;

NumErr = 0;

for (n = 0; n < NWORK Классификация сейсмических сигналов на основе нейросетевых технологий - реферат; n++)

{ K = Cur_Number[n];

Res=Forward(Work[K]);

ep[n]=fabs(Res-Work[K].Target);

if (ep[n] > LearnTolerance)

{ NumErr++;

Init_PromW();

Update_Last(K, Res);

Update_Prom1(K);

Prom_to_W();

}

err_cur = err_cur + (ep[n]*ep[n]);

}

err_cur=0.5*(err_cur/NWORK);

result = Reset(err Классификация сейсмических сигналов на основе нейросетевых технологий - реферат_cur, num, NumErr);

if ((num % NumOut)==0)

Debug("\nStep :%d NumErr :%d Error:%6.4f",num,NumErr,err_cur);

} while (result == CONT || result == RESTART);

Debug("\nStep :%d NumErr :%d Error:%6.4f",num,NumErr,err_cur);

return num;

}



klassifikaciya-strahovaniya.html
klassifikaciya-stroenie-i-funkcii-nejronov-nejrogliya.html
klassifikaciya-stroitelnih-materialov-shpargalka.html