Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
2015_for_stud_Практика_С.doc
Скачиваний:
16
Добавлен:
17.03.2016
Размер:
1.69 Mб
Скачать

Подбор параметров радиальной функции для каждого радиального нейрона (центр с и параметр ширины b)

Задается вектор с:

c=p;

Определяется параметр ширины:

b = ones(size(c));

Задается количество нейронов:

n=S1;

Ортогонализация по методу наименьших квадратов:

[W1,b1,W2,b2,mf,of,indf] = rb_ols(p,t,c,b,n,0);

Определяется количество нейронов:

S1=length(W1);

Определяется длинна диапазона:

total = range(2)-range(1);

Нахождение длинны вектора р:

Q = length(p);

Формируется матрица по вектору р с количеством строк = S1, и 1 столбца:

pp = repmat(p,S1,1);

Работа первого и второго слоев:

Задаются значения выходов на основании количества нейронов:

if S1==0 %если количество нейронов=0

n1=0;

a1=0;

a2=0;

else %если количество нейронов>0

n1 = abs(pp-W1*ones(1,Q)).*(b1*ones(1,Q));

a1 = exp(-n1.^2);

a2 = W2*a1 + b2*ones(1,Q);

end

Задается вектор р2:

p2 = range(1):(total/1000):range(2);

Нахождение длинны вектора р2:

Q2 = length(p2);

Формируется матрица по вектору р2 с количеством строк = S1, и 1 столбца:

pp2 = repmat(p2,S1,1);

Адаптация нелинейных параметров радиальных функций всех нейронов первого слоя сети:

Задаются значения выходов на основании количества нейронов:

if S1==0 %если количество нейронов=0

n12=0;

a12=0;

a22=0;

else %если количество нейронов>0

n12 = abs(pp2-W1*ones(1,Q2)).*(b1*ones(1,Q2));

a12 = exp(-n12.^2);

a22 = W2*a12 + b2*ones(1,Q2);

end

Вычисление значений вектора t:

t_exact = sin(2*pi*(freq*p2 + phase/360))+1;

Нахождение значений temp в зависимости от количества нейронов:

if S1==0 %если количество нейронов=0

temp=0;

else %если количество нейронов>0

temp=[(W2'*ones(1,Q2)).*a12; b2*ones(1,Q2)];

end

Нахождение квадратической ошибки (sse = sumsqr(t-a2)):

sse = sum(sum((t-a2).*(t-a2)));

F1 = figure(1);

Вывод на график:

subplot(2,1,1)

fa_plot = plot(p,t,'*k','LineWidth',2); Черные кружочки

hold on

fa_plot2 = plot(p2,temp,'--k'); Черная штриховая линия

fa_plot3 = plot(p2,t_exact,'b','LineWidth',2); Синяя сплошная линия

fa_plot4 = plot(p2,a22,'r','LineWidth',1); Красная сплошная линия

title('Function Approximation - Linear Least Squares');

ylabel('a2');

xlabel('p');

hold off

subplot(2,1,2);

fb_plot = plot(p2,a12,'k', 'LineWidth',2); Черная сплошная линия

ylabel('a1');

xlabel('p');

8.Мережа з використанням га

Мета роботи: ознайомитися з принципами функціонування ГА та та навчання НМ на основі ГА.Об’єкт дослідження: мережа з використанням ГА.

1. Порядок виконання практичної роботи

1. Вивчити теоретичне введення.

2. Послідовно виконати всі завдання до практичної роботи.

3. Відповісти на контрольні запитання

2. Задання до практичної роботи

1. Спроектувати мережу, що моделює оператор відношення вхід-вихід.

3. Зміст звіту по практичній роботі

1. Назва та мета роботи.

2. Завдання.

3. Приклад розв’язання задачі.

4. Контрольні запитання та завдання

1. Опишіть алгоритм функціонування адаптивної нейро-нечіткої системи виводу.

Варіанти завдань:

Реалізація навчання НМ на основі ГА (розв’язання задачі класифікації)

Аудиторна робота

1– реалізація бінарного ГА (визначення точки оптимуму),

2 – реалізація десяткового ГА (визначення точки оптимуму),

9.ANFIS-адаптована система нейро-нечіткого виведення

Мета роботи: ознайомитися з принципами функціонування та навчання систем нейронечіткого виведення;розв’язання задачі екстраполяції (прогнозування) даних з використанням НМ. Об’єкт дослідження: нейронечіткі мережі TSK, Ванга-Менделя.

1. Порядок виконання практичної роботи

1. Вивчити теоретичне введення.

2. Послідовно виконати всі завдання до практичної роботи.

3. Відповісти на контрольні запитання

2. Задання до практичної роботи

1. Спроектувати мережу, що моделює оператор відношення вхід-вихід.

Написати програму (m-файл), яка використовує ANFIS-систему.

2. Продемонструвати та пояснити роботу програми на прикладах.

3. Зміст звіту по практичній роботі

1. Назва та мета роботи.

2. Завдання.

3. Приклад розв’язання задачі.

4. Контрольні запитання та завдання

1. Назвіть основні складові системи нейро-нечіткого виведення.

2. Що таке ANFIS-адаптована система нейро-нечіткого виведення? Опишіть алгоритм функціонування адаптивної нейро-нечіткої системи виводу.

Варіанти завдань: задача екстраполяції даних на основі апроксимації відображення вхід-вихід

Аудиторна робота

1.Аппроксимацию нелинейной функции от трех переменных,описываемой зависимостьюпри диапазоне изменения входных переменных(i = 1, 2, 3) от 1 до 6. Для восстановления этой функции применялась нечеткая сеть TSK с функцией принадлежности

В сети использовались восемь нечетких правил, а начальные значения всех параметров выбирались случайным образом. Общее количество параметров сети было равно 50, из которых 18 – это параметры нелинейной части условий, а остальные 32 – линейные веса . Сеть обучалась по гибридному алгоритму, основанному на декомпозиции SVD. После обработки 200 обучающих выборок, равномерно распределенных в пространстве параметров, погрешность MSE уменьшилась с 57,19 в начале обучения до 1,61. Это соответствует примерно 0,7% относительной погрешности, приходящейся на одну выборку. Наиболее интенсивно погрешность уменьшалась в начальной фазе обучения. На рис. 12.8 иллюстрируется процесс последовательного итерационного уточнения нелинейных параметров,и функции принадлежности. По графикам видно, что изменения происходили в широком диапазоне значений.

На рис. 9.1 представлены результаты аппроксимации кривой

нечеткой сетью с самоорганизацией при использовании адаптивного алго­ритма обучения. Рис. 9.1.а иллюстрирует результаты, полученные при величине порога r= 0,2, а рис. 9.бсоответствует порогуr= 0,05. Пунк­тирная линия обозначает ожидаемые значения, а непрерывная линия – фактические значения, сгенерированные нейронной моделью. Алгоритм сам подбирал количество нейронов, отвечающее установленному значению порогаr. В первом случае зафиксированное алгоритмом количество ней­ронов было равно 12, а во втором – 19. Для обучения использовались только 500 первых реализаций сигнала. Оставшиеся 500 значений приме­нялись исключительно для тестирования.

Рис. 9.1. Пример отображения данных нечеткой сетью с самоорганизацией при использовании адаптивного алгоритма обучения:а) порогr= 0,2;б) порогr= 0,05

2.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]