Функция пользовательской сети для нелинейных моделей ARX и Гаммерштейна-Винера
A customnet объект реализует пользовательскую сетевую функцию и является нелинейной отображающей функцией для оценки нелинейных моделей ARX и нелинейных Гаммерштейна-Вайнера. Функция отображения, которая также упоминается как nonlinearity, использует комбинацию линейных весов, смещения и нелинейной функции, чтобы вычислить ее выход. Нелинейная функция содержит пользовательские единичные функции, которые работают на хребтовой комбинации (взвешенная линейная сумма) входов.
![]()
Математически customnet сеть является функцией, которая отображает m входы X (t) = [x (t 1), x 2 (t),..., xm (t)]T к скаляру выходному y (t) с помощью следующей зависимости:
Здесь:
X (t) является вектором m -by-1 входов или regressors со средним.
y0 - выход смещение, скаляр.
P - m -by - p проекционная матрица, где m - количество регрессоров и p - количество линейных весов. m должно быть больше или равно p.
L является вектором весов p -by-1.
S (X) является суммой расширенных и переведенных пользовательских единичных функций. Общее количество модуля функций называется number of units n сети.
Для определения термина единичной функции S (X) смотрите Подробнее о.
Использование customnet как значение OutputFcn свойство idnlarx модель или InputNonlinearity и OutputLinearity свойства idnlhw объект. Для примера задайте customnet когда вы оцениваете idnlarx модель с помощью следующей команды.
sys = nlarx(data,regressors,customnet)
nlarx оценивает модель, она по существу оценивает параметры customnet функция.
Можно сконфигурировать customnet функция для отключения компонентов и фиксации параметров. Чтобы опустить линейный компонент, установите LinearFcn.Use на false. Чтобы опустить смещение, установите Offset.Use на false. Чтобы задать известные значения для линейной функции и смещения, установите их Value атрибуты непосредственно и установите соответствующие Free атрибуты False. Использовать evaluate вычислить выход функции для заданного вектора входов.
создает объект нелинейного отображения с пользовательской единичной функцией с помощью указателя на функцию C = customnet(H)H. H должен указывать на функцию формы [f,g,a] = function_name(x), где f - значение функции, g = df/dx, и a указывает активную область значений единичной функции [-a a] где g значительно ненулевое. Модели Гаммерштейна-Винера требуют, чтобы ваша пользовательская функция имела только один вход и один выход.
определяет, использует ли функция линейную функцию в качестве подкомпонента.S = customnet(H,numUnits,UseLinearFcn)
определяет, использует ли функция параметр offset term y0.S = customnet(H,numUnits,UseLinearFcn,UseOffset)
customnet использует итерационный метод поиска для оценки параметров.
deadzone | evaluate | idnlarx | idnlhw | linear | linearRegressor | neuralnet | nlarx | nlhw | poly1d | pwlinear | saturation | sigmoidnet | treepartition | unitgain | wavenet