fitnet

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

Синтаксис

net = fitnet(hiddenSizes)
net = fitnet(hiddenSizes,trainFcn)

Описание

пример

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.3310e-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'

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

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

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

свернуть все

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

Советы

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

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