
- •№1 Зертханалық жұмыс Тақырыбы. Биологиялық және жасанды нейрон.
- •1 Кесте – Нейрондарды активациялау функцияларының тiзiмi
- •№ 2 Зертханалық жұмыс
- •2.2 Персептрондар
- •2.3 Зерттелетін функциялар. Нейрондық желісін жасау функциясы.
- •Введём переменную значения ошибки запустим функцию адаптации персептрона в цикле, пока ошибка не
- •Вариант 1 Вариант 2
- •№ 3 Зертханалық жұмыс
- •3.2 Алгоритм обратного распространения ошибки
- •3.2 Нейрожелілік әдістің негізінде есепті шешу кезеңдері.
- •3.6 Характеристики нс
- •3.10.2. Создание сети
- •3.10.3. Обучение сети
- •3.10.5. Моделирование сети (использование сети для решения задачи)
- •4 Лабораторная работа № 4 нс с радиальными базисными функциями
- •4.2 Сеть с радиальными базисными функциями
- •4.3 Изучаемые функции
- •(Сети с радиальными базисными функциями обучаются в процессе создания).
- •4.4 Характеристики нс
- •4.5 Порядок выполнения работы
- •Вариант 1
- •Вариант 2
- •Вариант 3
- •Вариант 4
- •Вариант 5
- •Вариант 6
- •Вариант 7
- •Вариант 8
- •Вариант 9
- •Вариант 10
- •5.2 Изучаемая функция
- •Вариант 1
- •Вариант 2
- •Вариант 3
- •Вариант 4
- •Вариант 5
- •Вариант 6
- •Вариант 7
- •Вариант 8
- •Вариант 9
- •Вариант 10
- •Контрольные вопросы
- •6 Лабораторная работа № 6
- •6.2 Вероятностная нейронная сеть
- •6.3 Изучаемые функции Функция создания вероятностной нс
- •Вспомогательные векторно-матричные функции
- •Контрольные вопросы
- •7 Лабораторная работа № 7
- •7.2 Задача кластеризации и поиска зависимостей
- •7.5 Самоорганизующаяся карта признаков
- •7.6 Изучаемые функции . Функции создания нс
- •Вспомогательные функции
- •7.7 Порядок выполнения работы
- •2. Пример создания самоорганизующейся карты.
- •Контрольные вопросы
- •Лабораторная работа № 8 Сеть Хопфилда
- •Цель работы
- •Краткие теоретические сведения
- •Пример решения типовой задачи
- •Отчёт о выполнении работы
Введём переменную значения ошибки запустим функцию адаптации персептрона в цикле, пока ошибка не
обратится в 0:
>> while (sse(E))
[net,Y,E]=adapt(net,P,T);
linehandle = plotpc(net.IW{1},net.b{1}); drawnow;
end;
Линию решения, разделяющую на класса точек, см. на рисунке 5 (линии, полученные в процессе обучения, не показаны).
Рисунок 5 – Линия решения
Проверяем работу адаптированной сети на тестовом множестве P1:
>> P1=[0.2 0.4 0.4 0.5 0.7;
2 0.5 3 0.5 0.5]
P1 = 0.2000 0.4000 0.4000 0.5000 0.7000
2.0000 0.5000 3.0000 0.5000 0.5000
>> sim(net,P1)
ans = 0 1 0 1 1
% Сеть справилась с задачей классификации новых данных успешно.
3. Поработайте с функциями ошибки, графическими и др. приведенными в лабораторной работе, но не использованными в контрольном примере функциями самостоятельно.
Әдебиет нег. 8 [8--14], қос. 15 [1-62]
Бақылау сұрақтары
Персептрон дегеніміз не? Сызық бойынша бөліп алатын есеп нені білдіреді?
Персептронды құруға, адаптациялауға және қолдануға арналған Matlab функцияларын келтіріңіз.
Matlab-та нейрожелiнiң жұмыс сапасын қалай бағалауға болады?
Matlab-та нейрожелілермен жұмыс істеу үшін қандай графикалық функциялары бар?
Вариант 1 Вариант 2
Вариант 3 Вариант 4
Вариант 5 Вариант 6
Вариант 7 Вариант 8
Вариант 9 Вариант 10
№ 3 Зертханалық жұмыс
Тақырыбы. Көпқабатты нейрондық желі
3.1 Жұмыс мақсаты: Matlab Neural Networks пакеттегі функциялар көмегімен қөпқабатты нейрондық желіні құруға, оқытуға және пайдалануға үйрену.
3.2 Алгоритм обратного распространения ошибки
Алгоритм обратного распространения используется для обучения многослойных сетей с последовательными связями (см. схему многослойной нейронной сети на рисунке 6)
Алгоритм
действует циклически (итеративно), и
его циклы пртинято называть эпохами.
На каждой эпохе на вход сети поочередно
подаются все обучающие наблюдения,
затем выходные знчения сети сравниваются
с целевыми значениями и вычисляется
ошибка. Значение ошибки, а также градиента
поверхности ошибок используется для
корректировки весов, после чего все
действия повторяются.
Начальная конфигурации сети выбирается случайным образом, и процесс обучения прекращается либо когда пройдено определенное количество эпох, либо когда ошибка достигает некоторого определенного уровня малости, либо когда ошибка перестанет уменьшаться.
Рисунок 6 – Многослойная нейронная сеть
Әдiстемелiк ұсыныстар.
3.2 Нейрожелілік әдістің негізінде есепті шешу кезеңдері.
Нақты есептiң шешiмiн алу үшiн нейрожелілік әдістің негізгі кезеңдері келесідей болады:
Желiнi (жаттығу ) үйрету үшiн мәлiметтердi әзiрлеу . 2. Желіні жасау. 3. Желіні үйрету. 4. Желіні тестілеу. 5. Желіні модельдеу (Қойылған есептiң шешiмiн алу үшiн құрылған желіні пайдалану.)
Көпқабатты нейрожеліні (НЖ) құру функциялары.
net = newff(PR, [S1 S2…SNI], {TF1 TF2…TFNI}, BTF, BLF, PF) қателерді кері бағытпен тарату әдісі бойынша "классикалық" көпқабатты нейрожелісін құру,
PR– R - кіріс элементтердiң ең төменгi және максимал мәндерiнен тұратын R х 2 матрицасы,
Si – Ni қабаттар үшін i-ші жасырын қабаттын өлшемі,
Tfi – i-ші қабаттағы нейрондарды ақтивациялау үшін функция, үнсіз бойынша 'tansig',
BTF –желіні үйрету функциясы , үнсіз бойынша 'traingd',
BLF – салмақтар мен ауытқуны баптау функциясы, үнсіз бойынша 'learngdm',
PF – қатенiң функциясы, үнсіз бойынша 'mse'.
Нейрожеліні оқыту функциялары
[net, tr] = train(net, P, T) – net.trainFcn және net.trainParamнiң қойылымдарына сәйкес НЖ үйренуін жүзеге асыратын функция. tr – үйрету үрдісі орындалғаны туралы алынатын ақпарат (циклдер саны және оқытудың қателіктері). P – енгізілетін деректер массиві, T –шығарылатын мақсаттық мәндердің массиві.
Қолданушы тiлегi бойынша берілген конфигурациямен НЖ-ні үйрететін алгоритмін орнатуға мүмкiндiк беретін қосалқы функциялар, мысалы:
[net, tr] = traingd(net, …) – қателiктi керi бағытпен тарату алгоритмін орындайтын функция.
[net, tr] = trainbfg(net, …) – қателiктi керi бағытпен тарату квазиньютононның алгоритмін орындайтын оқыту функциясы.
[net, tr] = trainrp(net, …) – қателiктi керi бағытпен тарату серпiмдi алгоритмін iске асыратын функция.
[net, tr] = trainlm(net, …) – Левенберг-Марквардтаның ықшамдау алгоритмін пайдаланып НЖ –нің салмақтарын және ауытқуларын қайтаратын функция.