Notebook "нейронные сети" Глава 2
Вид материала | Документы |
C358. traincgp C361. traincgb C363. trainscg C365. trainbfg |
- Программа дисциплины «Теория нечетких множеств и нейронные сети» Для специальности, 567.45kb.
- Самостоятельная работа по прогнозированию экономических процессов на тему: нейронные, 148.65kb.
- Лекция 2 Лекция «Нейронные сети» Начнем с определения: Искусственные нейронные сети, 131.57kb.
- "Нейроновые сети ", 374.46kb.
- Нейронные сети как механизм представления лексико-семантической информации, 376.06kb.
- Программа, 39.37kb.
- Нейронные сети: алгоритм обратного распространения, 336.15kb.
- Предупреждение. Спасение. Помощь, 3059.76kb.
- Нейрокомпьютерная обработка сигналов и изображений, 184.71kb.
- Нейронные сети: основы теории / А. И. Галушкин. М. Горячая линия Телеком, 2010., 585.42kb.
C358. TRAINCGP
Заданы следующие обучающие последовательности входов P и целей T:
P = [0 1 2 3 4 5]; T = [0 0 0 1 1 1];
Поскольку соответствие между входом и целью носит явно выраженный нелинейный характер, то будем использовать нейронную сеть с нелинейными сигмоидальными функциями активации. Выберем двухслойную нейронную сеть с прямой передачей сигнала; в первом слое используем 2 нейрона с функцией активации tansig, а во втором - 1 нейрон с функцией активации logsig. Для обучения сети применим функцию traincgp.
Формирование сети:
net = newff([0 5],[2 1],{'tansig','logsig'},'traincgp');
Обучение сети:
net.trainParam.epochs = 50; net.trainParam.show = 10;
net.trainParam.goal = 0.001;
[net,TR] = train(net,P,T); grid on
TRAINCGP-srchcha, Epoch 0/50, MSE 0.394041/0.001, Gradient 0.721591/1e-006
TRAINCGP-srchcha, Epoch 4/50, MSE 0.00026955/0.001, Gradient 0.00334169/1e-006
TRAINCGP, Performance goal met.
Выполним моделирование сети:
Y = sim(net,P)
Y =
Columns 1 through 4
0.0062 0.0051 0.0374 0.9912
Columns 5 through 6
0.9938 0.9938
C361. TRAINCGB
Заданы следующие обучающие последовательности входов P и целей T:
P = [0 1 2 3 4 5]; T = [0 0 0 1 1 1];
Поскольку соответствие между входом и целью носит явно выраженный нелинейный характер, то будем использовать нейронную сеть с нелинейными сигмоидальными функциями активации. Выберем двухслойную нейронную сеть с прямой передачей сигнала; в первом слое используем 2 нейрона с функцией активации tansig, а во втором - 1 нейрон с функцией активации logsig. Для обучения сети применим функцию traincgb.
Формирование сети:
net = newff([0 5],[2 1],{'tansig','logsig'},'traincgb');
Обучение сети:
net.trainParam.epochs = 50; net.trainParam.show = 10;
net.trainParam.goal = 0.001;
[net,TR] = train(net,P,T); grid on
TRAINCGB-srchcha, Epoch 0/50, MSE 0.42501/0.001, Gradient 0.558356/1e-006
TRAINCGB-srchcha, Epoch 4/50, MSE 0.00025582/0.001, Gradient 0.00131645/1e-006
TRAINCGB, Performance goal met.
Выполним моделирование сети:
Y = sim(net,P)
Y =
Columns 1 through 4
0.0151 0.0150 0.0323 0.9950
Columns 5 through 6
0.9977 0.9977
C363. TRAINSCG
Заданы следующие обучающие последовательности входов P и целей T:
P = [0 1 2 3 4 5]; T = [0 0 0 1 1 1];
Поскольку соответствие между входом и целью носит явно выраженный нелинейный характер, то будем использовать нейронную сеть с нелинейными сигмоидальными функциями активации. Выберем двухслойную нейронную сеть с прямой передачей сигнала; в первом слое используем 2 нейрона с функцией активации tansig, а во втором - 1 нейрон с функцией активации logsig. Для обучения сети применим функцию trainscg.
Формирование сети:
net = newff([0 5],[2 1],{'tansig','logsig'},'trainscg');
Обучение сети:
net.trainParam.epochs = 50; net.trainParam.show = 10;
net.trainParam.goal = 0.001;
[net,TR] = train(net,P,T); grid on
TRAINSCG, Epoch 0/50, MSE 0.184004/0.001, Gradient 0.345587/1e-006
TRAINSCG, Epoch 10/50, MSE 0.00179225/0.001, Gradient 0.00384079/1e-006
TRAINSCG, Epoch 12/50, MSE 0.000755243/0.001, Gradient 0.00273395/1e-006
TRAINSCG, Performance goal met.
Выполним моделирование сети:
Y = sim(net,P)
Y =
Columns 1 through 4
0.0077 0.0129 0.0381 0.9526
Columns 5 through 6
0.9820 0.9830
Квазиньютоновы алгоритмы обучения
C365. TRAINBFG
Заданы следующие обучающие последовательности входов P и целей T:
P = [0 1 2 3 4 5]; T = [0 0 0 1 1 1];
Поскольку соответствие между входом и целью носит явно выраженный нелинейный характер, то будем использовать нейронную сеть с нелинейными сигмоидальными функциями активации. Выберем двухслойную нейронную сеть с прямой передачей сигнала; в первом слое используем 2 нейрона с функцией активации tansig, а во втором - 1 нейрон с функцией активации logsig. Для обучения сети применим функцию trainbfg.
Формирование сети:
net = newff([0 5],[2 1],{'tansig','logsig'},'trainbfg');
Обучение сети:
net.trainParam.epochs = 50; net.trainParam.show = 10;
net.trainParam.goal = 0.0001;
[net,TR] = train(net,P,T); grid on
TRAINBFG-srchbac, Epoch 0/50, MSE 0.475987/0.0001, Gradient 0.339126/1e-006
TRAINBFG-srchbac, Epoch 10/50, MSE 0.00426485/0.0001, Gradient 0.0770971/1e-006
TRAINBFG-srchbac, Epoch 13/50, MSE 5.71314e-006/0.0001, Gradient 0.000107212/1e-006
TRAINBFG, Performance goal met.
Выполним моделирование сети:
Y = sim(net,P)
Y =
Columns 1 through 4
0.0000 0.0000 0.0006 0.9944
Columns 5 through 6
0.9989 0.9990