Особенности сооружения опор в сложных условиях: Сооружение ВЛ в районах с суровыми климатическими и тяжелыми геологическими условиями...
Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьшения длины пробега и улучшения маневрирования ВС при...
Топ:
Когда производится ограждение поезда, остановившегося на перегоне: Во всех случаях немедленно должно быть ограждено место препятствия для движения поездов на смежном пути двухпутного...
Оценка эффективности инструментов коммуникационной политики: Внешние коммуникации - обмен информацией между организацией и её внешней средой...
Комплексной системы оценки состояния охраны труда на производственном объекте (КСОТ-П): Цели и задачи Комплексной системы оценки состояния охраны труда и определению факторов рисков по охране труда...
Интересное:
Уполаживание и террасирование склонов: Если глубина оврага более 5 м необходимо устройство берм. Варианты использования оврагов для градостроительных целей...
Наиболее распространенные виды рака: Раковая опухоль — это самостоятельное новообразование, которое может возникнуть и от повышенного давления...
Что нужно делать при лейкемии: Прежде всего, необходимо выяснить, не страдаете ли вы каким-либо душевным недугом...
Дисциплины:
2024-02-15 | 31 |
5.00
из
|
Заказать работу |
|
|
net=newc(PR, S, KLR, CLR) – функция создания слоя Кохонена. Функция использует аргументы: PR – Rх2 матрица минимальных и максимальных значений для R входных элементов, S – число нейронов, KLR – коэффициент обучения Кохонена (по умолчанию 0,01), CLR – коэффициент "справедливости" (по умолчанию 0,001).
net=newsom(PR, [D1, D2,…], TFCN, DFCN, OLR, OSTEPS, TLR, TND) – функция создания самоорганизующейся карты с аргументами: PR – Rх2 матрица минимальных и максимальных значений для R входных элементов, Di – размеры i-го слоя, по умолчанию [5 8], TFCN – топологическая функция, по умолчанию 'hextop', DFCN – функция расстояния, по умолчанию 'linkdist',
OLR – коэффициент обучения фазы упорядочивания, по умолчанию 0,9, OSTEPS – число шагов фазы упорядочивания, по умолчанию 1000, TLR – коэффициент упорядочивания фазы настройки, по умолчанию 0,02, TND – расстояние для фазы настройки (по умолчанию 1).
Вспомогательные функции
hextop( dim1, dim2,…, dimN) – функция размещения нейронов в узлах гексагональной (шестиугольной) решетки. Возвращает матрицу, содержащую N строк и (dim1 х dim2 х…х dimN) столбцов с координатами нейронов
plotsom( pos) – функция возвращает графическое представление расположения нейронов в самоорганизующихся картах.
Пример: pos = hextop(3,4)
pos =
0 1.0000 2.0000 0.5000 1.5000 2.5000 0 1.0000 2.0000 0.5000 1.5000 2.5000
0 0 0 0.8660 0.8660 0.8660 1.7321 1.7321 1.7321 2.5981 2.5981 2.5981
>> plotsom(pos) % Результат см. на рисунке 20
Рисунок 20 – Результат выполнения функции plotsom
Порядок выполнения работы
1. Кластеризация данных. Исходные данные приведены в таблице 3.
Таблица 3 – Исходные данные для кластеризации
x | 0.09 | 0.1 | 0.15 | 0.3 | 0.35 | 0.32 | 0.25 | 0.7 | 0.7 | 0.8 | 0.75 | 0.79 |
y | 0.48 | 0.41 | 0.55 | 0.3 | 0.4 | 0.35 | 0.50 | 0.7 | 0.75 | 0.65 | 0.9 | 1 |
% Нанесем данные на график, установим размеры осей:
|
>> plot(P(1,:),P(2,:),'+r');
>> axis([0 1 0 1.5]);
>> hold on;
% На графике видны три кластера. Создадим слой Кохонена, состоящий из 3-х нейронов:
>> net=newc([0 1;0 1],3,0.1);
% Установим количество эпох обучения:
>> net.trainParam.epochs=10;
% запишем в массив w веса слоя Кохонена
>> w=net.IW{1};
% Нанесем их на график. Сеть еще не обучена, поэтому все веса изображены в виде одной точки посредине исследуемой области
>> h=plot(w(:,1),w(:,2),'ob');
% Запустим обучение сети. Сеть обучается самостоятельно (без учителя). Задание целевых векторов не требуется
>> net=train(net,P);
TRAINR, Epoch 0/10
TRAINR, Epoch 10/10
TRAINR, Maximum epoch reached.
% Запишем веса в массив w:
>> w=net.IW{1};
% Удалим точку, изображавшую веса необученного слоя Кохонена:
>> delete(h);
% Нанесем на график веса обученных нейронов (см. рисунок 21). Теперь веса нейронов слоя Кохонена соответствуют центрам кластеров опытных данных
>> h=plot(w(:,1),w(:,2),'ob');
% Подпишем классы в соответствии с решением сети:
>> W=w';
>> for i=1:3, text(w(i,1)+0.01,w(i,2), sprintf('k %g',vec2ind(sim(net,W(:,i))))),end
% Проверим способность сети к классификации на данных, как входящих в обучающую выборку, так и новых:
>> p=[0.25;0.5];
>> a=sim(net,p)
a =
(3,1) 1
>> plot(p(1),p(2),'k*');
>> p=[0.2;0.5];
a=sim(net,p)
a = (2,1) 1
>> plot(p(1),p(2),'k*');
Рисунок 21 – Выявленные сетью центры кластеров (о)
>> p=[0.4;0.5];
a=sim(net,p)
a =
(3,1) 1
>> plot(p(1),p(2),'k*');
>> p=[0.8;0.75];
a=sim(net,p)
a = (1,1) 1
>> plot(p(1),p(2),'k*');
% По желанию можно преобразовывать разреженную матрицу решения сети в натуральный индекс при помощи функции vec2ind.
Пример создания самоорганизующейся карты.
% Сгенерируем тестовые данные - 1000 случайных точек в диапазоне координат (-1,1) и нанесем их на график:
>> P=rands(2,1000);
>> plot(P(1,:),P(2,:),'+r')
% Создадим самоорганизующуюся карту размером 5 х 6 нейронов:
>> net=newsom([0 1;0 1],[5 6]);
% Нанесем веса нейронов на график. Карта еще не обучилась, поэтому все веса изображены в виде единственной точки
>> plotsom(net.iw{1,1},net.layers{1}.distances)
% Установим количество эпох обучения = 1. Так как данных много, достаточно 1 эпохи обучения. В более сложных ситуациях количество эпох для полной организации карты может составлять 100-200
|
>> net.trainParam.epochs=1;
% Запустим механизм самообучения
>> net=train(net,P);
TRAINR, Epoch 1/1; TRAINR, Maximum epoch reached.
% Изобразим полученную в результате обучения карту на графике (см. рисунок 22)
>> plotsom(net.iw{1,1},net.layers{1}.distances)
% Теперь если мы сформируем произвольный вектор входа, то самоорганизующаяся карта Кохонена должна указать его принадлежность тому или иному кластеру (классу):
>> p=[0.5;0.3];
>> a=sim(net,p)
a = (16,1) 1
Указанный вектор принадлежит шестнадцатому кластеру.
1 Создайте слой Кохонена для кластеризации входных данных:
Вариант |
Вариант |
Вариант |
Вариант |
Вариант | |||||
x | y | x | y | x | y | x | y | x | y |
1 | 1 | 7,5 | 1 | 1,5 | 1 | 1,5 | 1 | 1,5 | 1 |
2 | 2 | 8 | 2 | 2,5 | 2 | 2,5 | 2 | 2,5 | 2 |
3 | 1 | 8,5 | 1 | 2,5 | 1 | 2 | 3 | 2 | 3 |
1,5 | 10 | 4,5 | 4,5 | 5,5 | 4,5 | 5,5 | 4,5 | 7 | 1,5 |
5 | 5 | 3,5 | 5 | 4,5 | 4,5 | 4,5 | 4,5 | 6,5 | 2 |
6 | 4,5 | 5 | 5,5 | 5 | 5,5 | 5 | 5,5 | 6 | 1,5 |
5,5 | 6 | 3,5 | 6 | 6 | 6 | 6 | 6 | 6 | 9 |
8 | 10 | 8 | 10 | 8,5 | 10 | 2 | 10 | 2 | 10 |
9 | 9 | 9 | 9 | 1,5 | 9 | 5 | 6,5 | 5,5 | 8,5 |
1 | 10 | 7,5 | 9 | 7,5 | 9 | 1,5 | 9 | 5,5 | 9,5 |
2 | 11 | 8,5 | 8 | 1 | 8 | 1 | 8 | 1 | 8 |
3 | 10 | 7,5 | 10 | 7,5 | 10 | 1 | 10 | 1 | 10 |
Вариант |
Вариант |
Вариант |
Вариант |
Вариант | |||||
x | y | x | y | x | y | x | y | x | y |
1,5 | 3 | 1,5 | 1 | 1,5 | 7,5 | 2 | 6 | 1,5 | 1,5 |
1 | 4,5 | 2,5 | 2 | 2,5 | 1,5 | 2 | 7 | 1 | 6,5 |
2 | 5 | 2,5 | 1 | 6,5 | 4 | 5,5 | 5 | 4 | 2,5 |
7 | 1,5 | 5,5 | 4,5 | 2 | 6 | 8 | 1 | 8 | 4 |
6,5 | 2 | 4,5 | 4,5 | 3 | 7,5 | 3 | 8 | 3,5 | 1,5 |
4,5 | 8 | 5 | 5,5 | 2 | 9 | 1 | 1 | 1,5 | 7 |
6 | 9 | 6 | 6 | 9 | 2,5 | 5 | 3,5 | 7 | 3,5 |
5 | 10,5 | 8,5 | 10 | 8 | 3 | 8 | 2 | 7,5 | 5 |
5,5 | 8,5 | 1,5 | 9 | 2,5 | 3 | 4,5 | 4,5 | 2,5 | 2 |
5,5 | 9,5 | 7,5 | 9 | 9 | 4 | 1,5 | 2 | 2 | 6 |
1 | 6 | 1 | 8 | 3 | 2,5 | 2 | 1 | 8,5 | 5 |
4,5 | 9,5 | 7,5 | 10 | 7,5 | 5 | 9 | 2,5 | 2,5 | 1 |
2 Создайте самообучающуюся карту признаков для кластеризации данных. Тестовые данные сгенерируйте случайным образом в квадрате (-1,1)´(-1,1) в количестве:
1 вариант | 2 вариант | 3 вариант | 4 вариант | 5 вариант |
50 | 100 | 150 | 200 | 250 |
6 вариант | 7 вариант | 8 вариант | 9 вариант | 10 вариант |
300 | 350 | 400 | 450 | 500 |
Контрольные вопросы
|
1. В чем суть задачи кластеризации образцов?
2. Что из себя представляет слой Кохонена, самоорганизующаяся карта признаков? Как они обучаются?
3. Приведите функции Matlab для работы со слоем Кохонена, самоорганизующейся картой признаков.
Лабораторная работа № 8
Сеть Хопфилда
Цель работы
Научиться работать с сетью Хопфилда newhop, исследовать устойчивость сети и её сходимость.
|
|
Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначенные для поддерживания проводов на необходимой высоте над землей, водой...
Особенности сооружения опор в сложных условиях: Сооружение ВЛ в районах с суровыми климатическими и тяжелыми геологическими условиями...
Поперечные профили набережных и береговой полосы: На городских территориях берегоукрепление проектируют с учетом технических и экономических требований, но особое значение придают эстетическим...
Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!