Нейронные сети и нейроконтроллеры. Бураков М.В. - 210 стр.

UptoLike

Составители: 

210
Линейный слой соответствует S
2
классам (где S
2
S
1
). При этом
к одному классу могут принадлежать несколько кластеров.
Создание LVQ-сети происходит с помощью команды
net = newlvq(PR, S1, PC, LR, LF),
где PR массив R×2 минимальных и максимальных значений для
R элементов вектора входа; S
1
число нейронов конкурирующего
слоя; PC вектор с S
2
элементами, определяющими процентную
долю принадлежности входных векторов к известному классу; LR
– параметр скорости настройки; LF – имя функции настройки.
Поскольку заранее известно, как кластеры 1-го слоя соотносят-
ся с целевыми классами 2-го слоя, это позволяет заранее задать
элементы матрицы весов последнего. Однако, чтобы найти пра-
вильный кластер для каждого вектора обучающего множества, не-
обходимо выполнить процедуру обучения сети.
Обучение LVQ-сети происходит на основе обучающей последова-
тельности, в которой каждый целевой вектор имеет единственный
элемент, равный единице, а остальные элементы равны нулю:
{p
1
, t
1
}, {p
2
, t
2
}, …, {p
N
, t
N
}.
Пример 7.8. Даны десять векторов (точек на плоскости). Требует-
ся разделить их на два класса в соответствии с целевым вектором T:
>> P = [–3 –2 –2 0 0 0 0 2 2 3; 0 1 –1 2 1 –1 –2 1 –1 0];
>> Tc = [1 1 1 2 2 2 2 1 1 1]; % индексы классов;
>> I1 = find(Tc==1); % вектор индексов первого класса
>> I2 = find(Tc==2); % вектор индексов второго класса
>> figure(1), clf, axis([–4,4,–3,3]), hold on
>> plot(P(1,I1),P(2,I1),'+r')
Рис. 7.15. Структура LVQ-сети
a
2
= y
a
2
= purelin( LW
2,1
a
1
)
n
i
1
= –
i
IW
1,1
p
a
1
=
compet( n
1
)
p
R × 1
1,1
n
2
S
2
× 1
IW
ndist
S
1
R
Input Competitive Layer Linear Layer
2,1
IW
S
2
× 1
S
2
S
1
× 1
a
1
S
1
× 1
C
n
1
S
2
× S
1
S
1
× R
1