Вейвлет-сетевая функция для нелинейных моделей ARX и Hammerstein-Wiener
A wavenet объект реализует вейвлет-сетевую функцию и является нелинейной функцией отображения для оценки нелинейных моделей ARX и Hammerstein-Weiner. Функция отображения, которая также называется нелинейностью, использует комбинацию линейных весов, смещения и нелинейной функции для вычисления ее выходного сигнала. Нелинейная функция содержит функции вейвлет-единиц, которые работают на радиальной комбинации входов.
![]()
Математически волновая сеть - это функция, которая отображает m входов X (t) = [x (t1), x2 (t),..., xm (t)] T в скалярный выход y (t), используя следующее соотношение:
+S (Χ (t))
Здесь:
X (t) является вектором m-на-1 входных данных, или регрессоров, со средними («» «»).
y0 - выходной сдвиг, скаляр.
P - проекционная матрица m-by-p, где m - число регрессоров, а p - число линейных весов. m должно быть больше или равно p.
L - вектор весов p-by-1.
W (X) и S (X) вместе составляют нелинейную функцию вейвлет-сети. W (X) представляет собой сумму расширенных и преобразованных вейвлетов, в то время как S (X) представляет собой сумму расширенных и преобразованных функций масштабирования (также известных как скаллеты). Общее количество функций ds вейвлета и масштабирования называется количеством блоков сети.
Определения термина вейвлет-функции W (X) и термина масштабирования-функции S (X) см. в разделе Подробнее.
Использовать wavenet как значение OutputFcn свойство idnlarx модель или InputNonlinearity и OutputLinearity свойства idnlhw объект. Например, укажите wavenet при оценке idnlarx с помощью следующей команды.
sys = nlarx(data,regressors,wavenet)
nlarx оценивает модель, по существу оценивает параметры wavenet функция.
Вы можете настроить wavenet для отключения компонентов и фиксации параметров. Чтобы опустить линейный компонент, задайте LinearFcn.Use кому false. Чтобы опустить смещение, задайте Offset.Use кому false. Чтобы задать известные значения для линейной функции и смещения, задайте их Value атрибуты непосредственно и установите соответствующие Free атрибуты для False. Использовать evaluate вычисляют выходной сигнал функции для данного вектора входных сигналов.
создает W = wavenetwavenet объект W, для которого функция автоматически вычисляет количество единиц во время оценки модели.
определяет количество единиц W = wavenet(numUnits)numUnits. Этот синтаксис включает опцию, позволяющую интерактивно оценивать взаимосвязь между количеством единиц и необъяснимой дисперсией.
указывает, использует ли функция линейную функцию в качестве подкомпонента.W = wavenet(numUnits,UseLinearFcn)
указывает, использует ли функция элемент смещения.W = wavenet(numUnits,UseLinearFcn,UseOffset)
Вы можете использовать wavenet как в нелинейных моделях ARX, так и в моделях Хаммерштейна-Винера. Алгоритмы оценки wavenet параметры зависят от модели, которую вы оцениваете.
В нелинейной модели ARX wavenet использует либо неидеративный, либо итеративный метод для прогнозирования параметров, в зависимости от настроек опций в nlarxOptions.
Если Focus параметр имеет значение 'prediction', то wavenet использует быстрый неидертеративный метод оценки параметров [1]. Последовательные уточнения после первой оценки используют итеративный алгоритм.
Если Focus параметр имеет значение 'simulation', то wavenet для оценки параметров используется итеративный метод.
Чтобы всегда использовать итеративный или неидеративный алгоритм, укажите IterativeWavenet имущество nlarxOptions как 'on' или 'off'соответственно.
В модели Хаммерстайна-Винера wavenet использует итеративную минимизацию для определения параметров.
[1] Цинхуа Чжан. «Использование вейвлет-сети в непараметрической оценке». Сделки IEEE по нейронным сетям 8, № 2 (март 1997 года): 227-36. https://doi.org/10.1109/72.557660.
customnet | deadzone | evaluate | idnlarx | idnlhw | linear | neuralnet | nlarx | nlhw | poly1d | pwlinear | saturation | sigmoidnet | treepartition | unitgain