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

Для дополнительной настройки нейронной сети в программе реализован ряд процедур, описанных в разделе 6. Из них можно выделить следующие:
. Различные процедуры начальной инициализации весовых коэффициентов;
. Пакетный режим обучения;
. Алгоритм коррекции шага обучения;
. Процедуры предварительной обработки данных;
. Алгоритм оценки эффективности – cross-validation.
. Процедура многократного обучения.

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

В программе “nvclass” предусмотрены следующие режимы функционирования:
. «Внешний» режим – идентификации тестового входного вектора признаков;
. «Внутренний» режим – идентификация вектора признаков из набора векторов предыстории.

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

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

«Внутренний» режим служит для оценки вероятности ошибки идентификации сети и включает два подрежима – проверки правильности идентификации одного из векторов набора предыстории и последовательной проверки всех заданных векторов (“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, 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. 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)

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10



2012 © Все права защищены
При использовании материалов активная ссылка на источник обязательна.