idFeedforwardNetwork
(Not recommended) Multilayer feedforward neural network mapping function for nonlinear ARX models (requires Deep Learning Toolbox)
idFeedforwardNetwork
is not recommended. Use idNeuralNetwork
instead to create mapping objects based on neural networks. For more information, see Version History.
Description
An idFeedforwardNetwork
object implements a neural network
function, and is a nonlinear mapping object for estimating nonlinear ARX models. This mapping
object lets you use network
(Deep Learning Toolbox) objects that are created using
Deep Learning Toolbox™ in nonlinear ARX models.
Mathematically, idFeedforwardNetwork
is a function that maps
m inputs X(t) =
[x(t1),x2(t),…,xm(t)]T
to a scalar output y(t), using a multilayer feedforward
(static) neural network, as defined in Deep Learning Toolbox.
You create multi-layer feedforward neural networks by using commands such as feedforwardnet
(Deep Learning Toolbox), cascadeforwardnet
(Deep Learning Toolbox) and linearlayer
(Deep Learning Toolbox). When you create the network,
Designate the input and output sizes to be unknown by leaving them at the default value of zero (recommended method). When estimating a nonlinear ARX model using the
nlarx
command, the software automatically determines the input and output sizes of the network.Initialize the sizes manually by setting input and output ranges to m-by-2 and 1-by-2 matrices, respectively, where m is the number of nonlinear ARX model regressors and the range values are minimum and maximum values of regressors and output data, respectively.
See Examples for more information.
Use evaluate(net_estimator,x)
to compute the value of the function
defined by the idFeedforwardNetwork
object
net_estimator
at input value x. When used for
nonlinear ARX model estimation, x represents the model regressors for the
output for which the idFeedforwardNetwork
object is assigned as the
nonlinearity estimator.
You cannot use idFeedforwardNetwork
when the Focus
option in nlarxOptions
is 'simulation'
because the underlying network
object is considered to be nondifferentiable
for estimation. Minimization of simulation error requires differentiable nonlinear
functions.
Use idFeedforwardNetwork
as the value of the
OutputFcn
property of an idnlarx
model. For example, specify idFeedforwardNetwork
when you
estimate an idnlarx
model with the following
command.
sys = nlarx(data,regressors,idFeedforwardNetwork)
nlarx
estimates the model, it essentially estimates the parameters
of the idFeedforwardNetwork
function.
Creation
Description
creates a feedforward neural network mapping object that is based on the feedforward
(static) network object net_estimator
= idFeedforwardNetwork(Network
)Network
that has been created using one of
the neural network commands feedforwardnet
,
cascadeforwardnet
, or linearlayer
.
Network
must represent a static mapping between the inputs and
output without I/O delays or feedback. The number of outputs of the network, if assigned,
must be set to one. For a multiple-output nonlinear ARX models, create a separate
idFeedforwardNetwork
object for each output—that is, each element
of the output function must represent a single-output network object.
Properties
Examples
Algorithms
The nlarx
command uses the train
method of the network
object, defined in the Deep Learning Toolbox software, to compute the network parameter values.
Version History
Introduced in R2007aSee Also
nlarx
| idnlarx
| evaluate
| network
(Deep Learning Toolbox) | feedforwardnet
(Deep Learning Toolbox) | cascadeforwardnet
(Deep Learning Toolbox) | linearlayer
(Deep Learning Toolbox)