Классификация сейсмических сигналов на основе нейросетевых технологийРефераты >> Кибернетика >> Классификация сейсмических сигналов на основе нейросетевых технологий
На вход сети подается p-мерный вектор признаков {xi, i=1,2,…,p}. Для определенности будем рассматривать случай, когда p=9, хотя исследования проводились и для p=5, p=18. Оптимальное количество нейронов на скрытом слое H подбиралось экспериментально для разных p. Соответственно при p = 9 достаточно брать H равным также 9 или немного больше. Для разбиения исходных данных на два класса на выходе сети достаточно одного нейрона. Между входным и скрытым слоями, а также между скрытым и выходным слоями использовалась полносвязная структура.
С учетом этих дополнений опишем принятые на рисунке 7.1 обозначения:
p – размерность исходных данных (количество признаков используемых для классификации);
H – число нейронов на скрытом слое;
xi – компонента входного вектора признаков, i = 1,…,p;
x0 º 1 – постоянное воздействие используемое для работы нейронной сети;
wji – весовые коэффициенты между входным и скрытым слоями, i = 0,1,…,p , j = 1,…,H;
vk - весовые коэффициенты между скрытым и выходным слоями, k = 0,1,…,H.
zj – значение выхода j-го нейрона скрытого слоя; z0 º 1, j = 1,…,H;
y – значение выходного нейрона сети (выход сети)
(12)
f1(x) –функция активации нейронов скрытого слоя;
f2(x) –функция активации нейрона выходного слоя.
В качестве функции активации f1(x) для нейронов скрытого слоя и f2(x) для единственного нейрона на выходе сети предлагается использовать одну и ту же функцию, а именно сигмоидную функцию активации, для краткости будем обозначать ее как f(x):
,
с производной в виде
.
Вид такой функции представлен на рис.6.2
Т.к. значения функции f(x) ограничены в диапазоне [0, 1], результат сети y(x) может принимать любые действительные значения из этого же диапазона, в следствии чего логично интерпретировать выходы сети следующим образом: если y(x) > 0.5, то вектор принадлежит к одному классу (взрывы), в противном случае к другому (землетрясения).
6.2 Исходные данные.
На вход нейронной сети предлагается подавать вектора признаков составленные из сейсмограмм. О том, какие признаки были использованы для этой задачи и как они получены, было рассказано ранее в разделе 3.1. Стоит отметить, что проблема формирования векторов признаков – это исключительно проблема сейсмологии. Поэтому для исследования эффективности применения нейронных сетей в качестве исходных данных были использованы уже готовые выборки векторов, которые содержали в себе примеры и землетрясений и взрывов.
Размерность векторов признаков p=9, хотя , как было отмечено в предыдущем разделе, проводились эксперименты и с другим количеством признаков.
Для работы с нейросетью рекомендуется использовать исходные данные не в первоначальном виде, а после предварительной обработки при помощи процедуры индивидуальной нормировки по отдельному признаку, описанной в разделе 5.2. Это преобразование состоит в следующем:
где
xi – исходное значение вектора признаков, точнее его i-я компонента;
xi,min – минимальное значение по i-му признаку, найденное из всей совокупности исходных данных, включающей оба класса событий;
xi,max – максимальное значение по i-му признаку …
Выбор именно этой нормировки, а не более универсальных, которые описаны в разделе 5, в настоящих исследованиях продиктованы тем обстоятельством, что непосредственно признаки измеренные по сейсмограммам, подвергаются последовательно двум нелинейным преобразованиям в соответствии с функциями
y=Ln(x) и z=(1/7)(y1/7-1),
и уже из этих значений формируются обучающие вектора. Такие преобразования приводят к большей кластеризации точек в многомерном пространстве, однако диапазон изменения каждого из признаков не нормирован относительно интервала [-1, 1], а выбранная нормировка позволяет без потери информации перенести все входные значения в нужный диапазон.
6.3 Определение критерия качества системы и функционала его оптимизации.
Если через обозначить желаемый выход сети (указание учителя), то ошибка системы для заданного входного сигнала (рассогласование реального и желаемого выходного сигнала) можно записать в следующем виде:
, где
k — номер обучающей пары в обучающей выборке, k=1,2,…,n1+n2
n1 - количество векторов первого класса;
n2 - число векторов второго класса.
В качестве функционала оптимизации будем использовать критерий минимума среднеквадратической функции ошибки:
6.4 Выбор начальных весовых коэффициентов.
Перед тем, как приступить к обучению нейронной сети, необходимо задать ее начальное состояние. От того насколько удачно будут выбраны начальные значения весовых коэффициентов зависит, как долго сеть за счет обучения и подстройки будет искать их оптимальное величины и найдет ли она их.
Как правило, всем весам на этом этапе присваиваются случайные величины равномерно распределенные в диапазоне [-A,A], например [-1,1], или [-3,3]. Однако, как показали эксперименты, данное решение не является наилучшим и в качестве альтернативы предлагается использовать другие виды начальной инициализации, а именно:
1. Присваивать весам случайные величины, заданные не равномерным распределением, а нормальным распределением с параметрами N[a,s], где выборочное среднее a=0, а дисперсия s = 2, или любой другой небольшой положительной величине. Для формирования нормально распределенной величины можно использовать следующий алгоритм:
Шаг 1. Задать 12 случайных чисел x1, x2, …,x12 равномерно распределенных в диапазоне [0,1]. xi Í R[0,1].
Шаг 2. Для искомых параметров a и s величина , полученная по формуле:
будет принадлежать нормальному распределению с параметрами N[a,s].
2. Можно производить начальную инициализацию весов в соответствии с методикой, предложенной Nguyen и Widrow [7]. Для этой методики используются следующие переменные
число нейронов текущего слоя
количество нейронов последующего слоя