Class representing neural network nonlinearity estimator for nonlinear ARX models
net_estimator = neuralnet(Network)
neuralnet
is the class that encapsulates
the neural network nonlinearity estimator. A neuralnet
object
lets you use networks, created using Deep Learning Toolbox™ software,
in nonlinear ARX models.
The neural network nonlinearity estimator defines a nonlinear
function , where F is
a multilayer feed-forward (static) neural network, as defined in the Deep Learning Toolbox software. y is
a scalar and x is an m
-dimensional
row vector.
You create multi-layer feed-forward neural networks using Deep Learning Toolbox 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-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 neuralnet
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 neuralnet
object is
assigned as the nonlinearity estimator.
You cannot use neuralnet
when the Focus
option
in nlarxOptions
is 'simulation'
because
this nonlinearity estimator is considered to be nondifferentiable
for estimation. Minimization of simulation error requires differentiable
nonlinear functions.
creates
a neural network nonlinearity estimator based on the feed-forward
(static) network object net_estimator
= neuralnet(Network
)Network
created using Deep Learning Toolbox commands feedforwardnet
, cascadeforwardnet
,
and 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 one. For a multiple-output nonlinear ARX models, create a
separate neuralnet
object for each output—that
is, each estimator must represent a single-output network object.
Network | Neural network object, typically created using the Deep Learning Toolbox commands feedforwardnet , cascadeforwardnet ,
and linearlayer . |
After creating the object, you can use get
or
dot notation to access the object property values. For example:
% List Network property value get(n) n.Network
You can also use the set
function to set
the value of particular properties. For example:
set(d, 'Network', net_obj)
set
must be the name of a MATLAB® variable.The nlarx
command uses
the train
method of the network
object,
defined in the Deep Learning Toolbox software, to compute the
network parameter values.
customnet
| nlarx
| sigmoidnet
| treepartition
| wavenet
| cascadeforwardnet
(Deep Learning Toolbox) | feedforwardnet
(Deep Learning Toolbox) | linearlayer
(Deep Learning Toolbox)