Научная статья на тему 'Применение нейросетевого подхода при построении моделей анализа систем высокой размерности'

Применение нейросетевого подхода при построении моделей анализа систем высокой размерности Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
89
22
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ИДЕНТИФИКАЦИОННЫЙ ПРИЗНАК / НЕЙРОННАЯ СЕТЬ / ПРОСТРАНСТВО ИДЕНТИФИКАЦИИ / ФУНКЦИИ АКТИВАЦИИ / СИНАПТИЧЕСКАЯ СВЯЗЬ / IDENTIFICATION ATTRIBUTE / NEURAL NETWORK / SPACE OF IDENTIFICATION / FUNCTION OF ACTIVATION / SYNAPTIC CONNECTIONS

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Пюкке Г. А., Стрельников Д. С.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Пюкке Г. А., Стрельников Д. С.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Neural Network Approach to construct models of high-dimensional systems analysis

The method offered in the given work is based on the use of neural network approach and allows to create the conditions of the general solution of complex poorly formalized problems of identification of states of high dimensionality systems, while the procedure for the formation of the algorithm succession of actions is difficult. In such cases the effectiveness of neural network approach is shown in full measure and can be successfully used to solve the problems of the analysis of complex systems. The problem of identification of models, data clustering and pattern recognition are carried out.

Текст научной работы на тему «Применение нейросетевого подхода при построении моделей анализа систем высокой размерности»

УДК 519.8

ПРИМЕНЕНИЕ НЕЙРОСЕТЕВОГО ПОДХОДА ПРИ ПОСТРОЕНИИ МОДЕЛЕЙ АНАЛИЗА СИСТЕМ ВЫСОКОЙ РАЗМЕРНОСТИ

Г.А. Пюкке, Д.С. Стрельников

Камчатский государственный технический университет, Петропавловск-Камчатский,683003

e-mail: diestrel@gmail. com

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

Ключевые слова: идентификационный признак, нейронная сеть, пространство идентификации, функции активации, синаптическая связь.

Neural Network Approach to construct models of high-dimensional systems analysis. G.A. Pjukke, D.S. Strelnikov (Kamchatka State Technical University, Petropavlovsk-Kamchatsky, 683003)

The method offered in the given work is based on the use of neural network approach and allows to create the conditions of the general solution of complex poorly formalized problems of identification of states of high dimensionality systems, while the procedure for the formation of the algorithm succession of actions is difficult. In such cases the effectiveness of neural network approach is shown in full measure and can be successfully used to solve the problems of the analysis of complex systems. The problem of identification of models, data clustering and pattern recognition are carried out.

Key words: identification attribute, neural network, space of identification, function of activation, synaptic connections.

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

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

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

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

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

Выберем для решения задач идентификации однонаправленные двухслойные сети, дающие хорошие результаты сходимости и точности решений. Задача формирования обучающей выборки, определение ее объема решается исходя из конкретного условия поставленной задачи. Выберем множество пар входных и выходных векторов {Xk,Yk}, k = 1, N, где N - размер обучающей выборки. Нейронную сеть считаем однородной с последовательными связями и сигмоидальными передаточными функциями. Для определения количества нейронов, необходимого числа синаптических связей и их весов Lw в работе [2] приведено соотношение (1):

MN/(1 + log N)< ^ <M[(N/M+ M +1)+ M, (1)

где М = 2m - размерность входного сигнала; m - количество двухполюсных компонент схемы замещения ОД; п - размерность входного сигнала. При решении задач идентификации методом исключения варьируемого параметра [1] пространство наблюдений состоит из двух диагностических признаков, то есть п = 2. Для определения количества синаптических связей при рассмотрении схемы, содержащей 20 составляющих компонент, зададимся следующими параметрами: N = 512; п = 2; М = 106 и получим: 2-105 < Lw < 1012. Количество нейронов определим из соотношения (2) [3]:

L = Lw /(n + M),

тогда L = 100. Построение такой сети реально.

Наиболее эффективным в данном случае является алгоритм обратного распространения (back propagation), и если функция активации нейрона дважды дифференцируема, то согласно теореме «о полноте» любая непрерывная функция на замкнутом ограниченном множестве может быть равномерно приближена функциями,

вычисляемыми нейронными сетями. Рассмотрим двухслойную сеть с нейронами скрытого слоя (рис. 1).

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

(2)

Рис. 1. Нейронная сеть с корректировкой весов

Ok = 1/(1 + exp(- wTok))

(3)

где ^ - вектор весов выходного нейрона; элементами, определяется по выражению (4):

а" -

вектор выходов нейронов скрытого слоя с

ok =

1/(1 + exp(- wTxk)),

(4)

где Wi - вектор весов, связанных с 7-м скрытым нейроном, 7 = 1, Ь. Градиантная корректировка весов выполняется на основе минимизации квадратичной функции ошибки посредством соотношений:

W := W - r[dEk (W, w)/ dW], W := W - r[dEk (W, w)/cwt ],

(5)

(6)

где n = const - коэффициент скорости обучения (0 < n < 1). Тогда для сигмоидальной функции активации получим (7):

5Ek(W,w)/8W = 0,55/8w[yk -1/(1 + exp(-wTok))f =-(yk -Ok)ok(1 -Ok)ok.

Подставляя в исходное выражение, получим в скалярной форме (8):

Ж := Ж + ^5,ок, (8)

где 8к определяется как (9):

8к=(ук -Ок)ок(1 -Ок). (9)

Аналогично для второго выражения в скалярной форме получим (10):

w,= Ч+ФМо? (1-ок , (10)

где . = 1, Ь ; у = 1, п .

Алгоритм обучения нейросети, представленный на рис. 2, используется для построения и процедуры оценки состояния объектов идентификации.

^ Начало 1

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

П, Етах, .

Задание к = 1, Е = 0.

к := к + 1

Ввод пары (Хк, Гк) и вычисление величины выхода сети: Ок = 1/(1 + ехр (- м>ток )), ок = 1/(1 + ехр (- w,.V ))

Корректировка значений функции ошибки: Е := Е + 0,5 (у - о)2

Корректировка весов выходного нейрона: Ж := Ж +Л8ко,.к

Корректировка весов не wij = wij + пМ йронов скрытого слоя: Ло,к (1 - ок )*/

Рис. 2. Алгоритм обучения нейросети

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

Каждый нейрон] задает значениями весов своих входов уравнение гиперплоскости (11):

2

3

4

5

6

7

9

n(j)

a0, (11)

где п(/) - количество входов нейрона у; ц - величина порога функции активации, у е {1, 2, ..., Щ, где N - количество нейронов. В работе [3] показано, что двухуровневая нейронная сеть способна аппроксимировать любую непрерывную функцию, определенную на ограниченном множестве {хь хп}, с любой заданной точностью е > 0 (12):

( ( ( "(1) ^

f(x„..., xn) = JVi 1/ 1 + exp -JW

i=1

' 'jXj

V V V i=1 yyy

(12)

где N - количество нейронов первого слоя; W- - вес j-го входа i-го нейрона первого слоя с сигмоидальной функцией активации, i = 1, L ; j = 1, n . В двумерном пространстве основных диагностических признаков можно выполнить разбиение области идентификации по областям с реализацией распределенного коллективного запоминания нейронами при обучении. При этом выделение области работоспособности и областей одиночных и кратных отклонений наиболее эффективно проводится гиперплоскостями. Анализ области идентификации технических систем показал возможность использования нейросети для автоматизации диагностических процедур.

Обучение нейронной сети выполняется на основе построения входного вектора Рвх (две строки, соответствующие двум координатам Кь К2 пространства идентификационных признаков и N столбцов, задающих объем обучающей выборки) и выходного вектора Твых (в качестве эталонной обучающей последовательности). Выполним кодировку состояния системы следующим образом: каждой строке вектора Твых поставим в соответствие состояние системы:

- первой строке вектора Твых - работоспособное состояние системы (если система работоспособна, то значение компоненты вектора Твых( 1,1 : N) = 1, в противном случае 0;

- второй строке вектора Твых - дефект одного или нескольких элементов ОД (если работоспособность потеряна, то значение компоненты вектора Твых(2,1 : N) = 1, в противном случае 0);

- третьей строке вектора Твых - выход из строя всех элементов системы (если недопустимое состояние, то Твых (3,1 : N) = 1, в противном случае 0).

Количество столбцов вектора Твых зададим равным N - общему объему обучающей выборки.

При кодировании состояний системы по координатам пространства основных идентификационных признаков (К К2), определяемых по (13) и (14), строится конфигурация соответствующих областей (рис. 4). На плоскости Кь К2 введем полярную систему координат с центром в точке (0,5; 0,5):

K = R cosF + 0,5 ; (13)

K = R sin F + 0,5. (14)

Изменяя R0 и F¡, переберем все точки пространства идентификации и построим векторы обучающей последовательности Р и Т. Одновременно, задав точки тестирования внутри рассматриваемых областей, дадим оценку качества обучения.

В работе [3] показано, что для решения задач кластеризации, выделения и классификации областей состояний системы наиболее эффективно использовать сети с радиусными базисными функциями. В пакете Neural Networks Toolbox их три - newrbe, newpnn и negrnn, отличающихся структурой и видом функции активации нейронов. Выбор нейросети можно осуществить, создав алгоритм и программу тестового опробования в соответствии с изложенной методикой.

Тестовая обучающая последовательность построена на основе кластеризации, то есть разбиении пространства идентификационных признаков К1, К2 на области состояний системы. Для выбранной сети Кохонена критерий подстройки весов выражается соотношением (15):

||x - wj = mim x - wt\ |, (15)

где r - нейрон-победитель, соответствующий вектору весов wr , ||w,.|| = 1, i = 1, m. На выходе нейрона-победителя устанавливается 1. При этом на выходе остальных нейронов устанавливается 0. Веса входов корректируются из расчета минимума квадрата рассогласования: min|x- wj}2. Согласно градиентному методу будем иметь (16-20):

i=1

T II II2 1

W: W: = \W,\\ = 1,

IX - wr| |}2 = xTx - 2wiTx +1;

T T

wr = maxw x;

wr := wr -цыи - w,

(d||x - wr||2 / dwr);

d||x - wr 112 / dw = -2(x - wr).

Начало

Задание векторов wi, i = 1,2, ..m

выполняются

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Да

Конец

—► Задание вектора входов x

Корректировка весов и задание единичного выхода: wr := wr + 2-q(x - wr); or = 1

Нормализация вектора: wr := wr wr||

Задание значений для совокупности нейронов: w := w ; or = 1; i Ф r

Нет Условия завершениЯ""""--.

Тогда получим выражение корректировки (21):

wr := wr + 2^(x - wr).

(17)

(18)

(19)

(20) для

(21)

Рис. 3. Алгоритм Кохонена

На основании полученных соотношений построим алгоритм Кохонена (рис. 3).

Сначала задаются нормализованные по длине случайные векторы. Далее начинается цикл обучения с ввода очередного вектора входов. Выявляется нейрон-победитель и выполняется корректировка вектора его весов. Задается единичный выход и выполняется нормализация полученного вектора. Задаются значения для остальных нейронов, и выполняется проверка правила останова. Алгоритм заканчивается, если условия останова выполняются, в противном случае все повторяется со второго шага. В результате выполнения процедуры коррекций получаются векторы весов и центры кластеров входных образов. После кластеризации предъявленных векторов входов выполняется выделение центров кластеров входов. После кластеризации состояний на приведенном примере при наблюдениях по методу исключения варьируемого параметра [1] можно решить задачу автоматического выделения центров кластеров. Ниже приведена программа выделения центров и опроса сети:

1

2

3

4

5

6

7

8

clusters=12; 'Задание параметров для моделирования исходных данных'

points=10;

std_dev=0.01;

Х=[0 1;0 1]; 'Задание пространства положения центров кластеров' P=nngenc(X, clusters, points, std_dev); 'Моделирование исходных данных' h=news([0 1;0 1],64,1); 'Создание слоя Кохонена' h.trainParam.epochs=500; 'Задание количества циклов обучения' h=init(h); 'Инициализация сети' h=train(h,P); 'Обучение сети' w=h.IW{1};

plot(P(1,:),P(2,:),'+'); 'Вывод исходных данных'

hold on; plot(W (1,:),W(2,:)/o~); 'Вывод центров заданных кластеров'

xlabelfpUn;

ylabel('p(2)');

p=[0.55;0.2]; 'задание вектора предъявления D' y=sim(h,p); 'Опрос сети'

у= (5,1) 1 Результаты опроса сети'

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

Рис. 4. Локализация дефекта по результатам опроса нейросети

Таким образом, при решении основных задач идентификации по локализации дефектов и

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

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

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

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

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

быть использованы нейросети, в составе

Рис. 5. Алгоритм построения нейросети для решения задач диагностики

идентификации. Для объектов средней и большой размерности эта задача может быть решена в вероятностной постановке.

Литература

1. Пюкке Г.А., Портнягин Н.Н., Кузнецов С.Е. Диагностирование электрических цепей методом изовар // Изв. вузов. Электромеханика. - 1998. - № 1. - С. 35-40.

2. Эйкхофф П. Основы идентификации систем управления. - М.: Мир, 1975. - 648 с.

3. Демирчян К.С., Бутырин П.А. Моделирование и машинный расчет электрических цепей. -М.: Высшая школа, 1988. - 335 с.

4. Синтез линейных электрических и электронных цепей / П.А. Ионкин, Н.Г. Максимович, В.Г. Миронов, Ю.С. Перфильев, П.Г. Стахив. - Львов: Высшая школа. Изд-во при Львовском университете, 1982. - 312 с.

i Надоели баннеры? Вы всегда можете отключить рекламу.