feedforwardnet

Сгенерируйте нейронную сеть с feedforward

Описание

пример

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

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

Можно использовать сети прямого распространения для любого вида входа для вывода отображения. Сеть прямого распространения с одним скрытым слоем и достаточным количеством нейронов в скрытых слоях может соответствовать любой конечной задаче отображения ввода-вывода.

Специализированные версии сети прямого распространения включают в себя подборы кривой и распознавания шаблонов. Для получения дополнительной информации смотрите fitnet и patternnet функций.

Изменение на сеть прямого распространения является каскадная прямая сеть, которая имеет дополнительные соединения от входа к каждому слою и от каждого слоя ко всем следующим слоям. Для получения дополнительной информации о каскадных передних сетях смотрите cascadeforwardnet функция.

Примеры

свернуть все

Этот пример показывает, как использовать нейронную сеть с feedforward для решения простой задачи.

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

[x,t] = simplefit_dataset;

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

Создайте сеть прямого распространения с одним скрытым слоем размером 10.

net = feedforwardnet(10);

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

net = train(net,x,t);

Просмотрите обученную сеть.

view(net)

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

y = net(x);

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

perf = perform(net,y,t)
perf = 1.4639e-04

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

свернуть все

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

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

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

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

Имя функции обучения, заданное как одно из следующих.

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

Левенберг-Марквардт

'trainbr'

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

'trainbfg'

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

'trainrp'

Упругое обратное распространение

'trainscg'

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

'traincgb'

Сопряженный градиент с перезапусками Powell/Beale

'traincgf'

Сопряженный градиент Флетчера-Пауэлла

'traincgp'

Сопряженный градиент Полак-Рибьер

'trainoss'

Одношаговый секант

'traingdx'

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

'traingdm'

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

'traingd'

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

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

Для получения дополнительной информации о функциях обучения смотрите Train и Применение Многослойных Неглубоких Нейронных Сетей и Выберите Многослойную Функцию Обучения Нейронной Сети.

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

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

свернуть все

Нейронная сеть с feedforward, возвращенная как network объект.

Введенный в R2010b