fitnet

Функция, соответствующая нейронной сети

Описание

пример

net = fitnet(hiddenSizes) возвращает функцию, соответствующую нейронной сети размером скрытого слоя hiddenSizes.

пример

net = fitnet(hiddenSizes,trainFcn) возвращает функцию, соответствующую нейронной сети размером скрытого слоя hiddenSizes и учебная функция, заданная trainFcn.

Примеры

свернуть все

Загрузите обучающие данные.

[x,t] = simplefit_dataset;

1 94 матричный x содержит входные значения и 1 94 матричный t содержит связанные целевые выходные значения.

Создайте функцию, соответствующую нейронной сети одним скрытым слоем размера 10.

net = fitnet(10);

Просмотрите сеть.

view(net)

Размеры ввода и вывода являются нулем. Программное обеспечение настраивает размеры их во время обучения согласно обучающим данным.

Обучите сеть net использование обучающих данных.

net = train(net,x,t);

Просмотрите обучивший сеть.

view(net)

Вы видите, что размеры ввода и вывода равняются 1.

Оцените цели с помощью обучившего сеть.

y = net(x);

Оцените эффективность обучившего сеть. Функция эффективности по умолчанию является среднеквадратической ошибкой.

perf = perform(net,y,t)
perf =

   1.4639e-04

Алгоритм настройки по умолчанию для функции подходящая сеть является Levenberg-Marquardt ('trainlm' ). Используйте Байесов алгоритм настройки регуляризации и сравните результаты эффективности.

net = fitnet(10,'trainbr');
net = train(net,x,t);
y = net(x);
perf = perform(net,y,t)
perf =

   3.3038e-10

Байесов алгоритм настройки регуляризации улучшает производительность сети в терминах оценки целевых значений.

Входные параметры

свернуть все

Размер скрытых слоев в сети в виде вектора-строки. Длина вектора определяет количество скрытых слоев в сети.

Пример: Например, можно задать сеть с 3 скрытыми слоями, где первый размер скрытого слоя равняется 10, второе равняется 8, и третье равняется 5 можно следующим образом: [10,8,5]

Размеры ввода и вывода обнуляются. Программное обеспечение настраивает размеры их во время обучения согласно обучающим данным.

Типы данных: single | double

Учебное имя функции в виде одного из следующих.

Учебная функцияАлгоритм
'trainlm'

Levenberg-Marquardt

'trainbr'

Байесова регуляризация

'trainbfg'

Квазиньютон BFGS

'trainrp'

Устойчивая обратная связь

'trainscg'

Масштабированный метод сопряженных градиентов

'traincgb'

Метод сопряженных градиентов с Перезапусками Powell/Beale

'traincgf'

Метод сопряженных градиентов Флетчера-Пауэлла

'traincgp'

Метод сопряженных градиентов Полака-Рибиера

'trainoss'

Один секанс шага

'traingdx'

Переменный градиентный спуск скорости обучения

'traingdm'

Градиентный спуск с импульсом

'traingd'

Градиентный спуск

Пример: Например, можно задать переменный алгоритм градиентного спуска скорости обучения как алгоритм настройки можно следующим образом: 'traingdx'

Для получения дополнительной информации об учебных функциях смотрите, Обучают и Применяют Многоуровневые Мелкие Нейронные сети и Выбирают Multilayer Neural Network Training Function.

Типы данных: char

Выходные аргументы

свернуть все

Функция подходящая сеть, возвращенная как network объект.

Советы

  • Функциональный подбор кривой является процессом обучения нейронной сети на наборе входных параметров для того, чтобы произвести связанный набор целевых выходных параметров. После того, как вы создадите сеть с желаемыми скрытыми слоями и алгоритмом настройки, необходимо обучить его с помощью набора обучающих данных. Если нейронная сеть имеет подгонку данные, это формирует обобщение отношения ввода - вывода. Можно затем использовать обучивший сеть, чтобы сгенерировать выходные параметры для входных параметров, на которых это не было обучено.

Представленный в R2010b