wavenet

Создайте объект средства оценки нелинейности сети вейвлета

Синтаксис

NL = wavenet
NL = wavenet(Name,Value)

Описание

NL = wavenet создает объект средства оценки нелинейности сети вейвлета по умолчанию для оценки нелинейного ARX и моделей Хаммерстайна-Винера. Используйте запись через точку, чтобы настроить свойства объектов в случае необходимости.

NL = wavenet(Name,Value) создает объект средства оценки нелинейности сети вейвлета со свойствами, заданными одним или несколькими Name,Value парные аргументы. Свойства, которые вы не задаете, сохраняют свое значение по умолчанию.

Описание объекта

wavenet объект, который хранит средство оценки нелинейности сети вейвлета для оценки нелинейного ARX и моделей Хаммерстайна-Винера.

Использование wavenet задавать нелинейную функцию y=F(x,θ), где y является скаляром, x является m- размерный вектор-строка из регрессоров и θ представляют параметры в расширении вейвлета. Функция сети вейвлета основана на следующем функциональном расширении:

F(x,θ)=(xr)PL+as_1f(bs_1((xr)Qcs_1))+                          +as_nsf(bs_ns((xr)Qcs_ns))                          +aw_1g(bw_1((xr)Qcw_1))+                          +aw_nwg(bw_nw((xr)Qcw_nw))+d

f(z)=e-0.5zzT

g(z) = (m-zzT)e-0.5zzT

Здесь,

  • f(z) является радиальной функцией, вызвал масштабирующуюся функцию, и z является входом к масштабирующейся функции. z является 1 q вектором-строкой. q является количеством компонентов x используемый в масштабировании и функциях вейвлета.

  • g(z) является радиальной функцией, вызвал функцию вейвлета, и z является входом к функции вейвлета.

  • θ представляет следующие параметры средства оценки нелинейности:

    • P и Q — Матрицы проекции размера m- p и m- q, соответственно.

      P и Q определяются анализом главных компонентов данных об оценке. Обычно, p = m. Если компоненты x в данных об оценке линейно зависимы, то p<m. Количеством столбцов Q является qQ количество компонентов x, используемого в функции вейвлета и масштабировании.

      Когда используется в нелинейной модели ARX, q равно размеру NonlinearRegressors свойство idnlarx объект. Когда используется в модели Хаммерстайна-Винера, m=q=1 и Q является скаляром.

    • r Среднее значение вектора регрессора вычисляется из данных об оценке в виде 1 m вектор.

    • as, bs, aw и bw — Масштабирование и параметры вейвлета в виде скаляров. Параметры с индексом s являются масштабными коэффициентами, и параметры с индексом w являются параметрами вейвлета.

    • L Заданный как p- 1 вектор.

    • cs и cw – Заданный как 1 q векторы.

    • d Выведите смещение в виде скаляра.

Значение F(x) вычисляется evaluate(NL,x), где NL объект wavenet.

Для wavenet свойства объектов, смотрите Свойства.

Примеры

свернуть все

NL = wavenet;

Исключите линейный член из расширения вейвлета.

NL.LinearTerm = 'off';

Загрузите данные об оценке.

load twotankdata;

Создайте iddata объект из данных об оценке.

z = iddata(y,u,0.2);

Создайте средство оценки нелинейности сети вейвлета с 5 модулями.

NL = wavenet('NumberOfUnits',5);

Оцените нелинейную модель ARX.

sys = nlarx(z,[4 4 1],NL);

Загрузите данные об оценке.

load motorizedcamera;

Создайте iddata объект.

z = iddata(y,u,0.02,'Name','Motorized Camera','TimeUnit','s');

z iddata объект с 6 входными параметрами и 2 выходными параметрами.

Задайте порядки модели.

Orders = [ones(2,2),2*ones(2,6),ones(2,6)];

Задайте различные средства оценки нелинейности для каждого выходного канала.

NL = [wavenet('NumberOfUnits',2),linear];

Оцените нелинейную модель ARX.

sys = nlarx(z,Orders,NL);

Загрузите данные об оценке.

load motorizedcamera;

Создайте iddata объект.

z = iddata(y,u,0.02,'Name','Motorized Camera','TimeUnit','s');

z iddata объект с 6 входными параметрами и 2 выходными параметрами.

Задайте порядки модели и задержки.

Orders = [ones(2,6),ones(2,6),ones(2,6)];

Задайте то же средство оценки нелинейности для каждого входного канала.

InputNL = saturation;

Задайте различные средства оценки нелинейности для каждого выходного канала.

 OutputNL = [deadzone,wavenet];

Оцените модель Хаммерстайна-Винера.

sys = nlhw(z,Orders,InputNL,OutputNL);

Чтобы видеть форму предполагаемой нелинейности ввода и вывода, постройте нелинейность.

plot(sys)

Нажмите на блоки нелинейности ввода и вывода на верхней части графика видеть нелинейность.

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

Аргументы в виде пар имя-значение

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Используйте Name,Value аргументы, чтобы задать дополнительные свойства wavenet нелинейность. Например, NL= wavenet('NumberofUnits',5) создает объект средства оценки нелинейности вейвлета с пятью модулями нелинейности в расширении вейвлета.

Свойства

NumberofUnits

Количество модулей нелинейности в расширении вейвлета в виде положительного целого числа или одного из следующих значений:

  • 'Auto' — Количество модулей автоматически определяется из данных об оценке.

  • 'Interactive' — Количество модулей определяется во время оценки модели.

Значение по умолчанию: 'Auto'

LinearTerm

Включение линейного члена в виде одного из следующих значений:

  • 'on' — Линейный член, (xr)PL, включен в расширение вейвлета.

  • 'off' — Линейный член в не включенный в расширение вейвлета.

Значение по умолчанию: 'on'

Parameters

Параметры в расширении вейвлета в виде структуры со следующими полями:

Имя поляОписаниеЗначение по умолчанию
RegressorMean

Средние значения регрессоров, r в виде 1 m вектором. m является количеством регрессоров, x.

Поскольку Хаммерстайн-Винер моделирует, m = 1.

[]
NonLinearSubspace

Матрица проекции, Q в виде m-by-q матрица.

[]
LinearSubspace

Матрица проекции, P в виде m-by-p матрица.

[]
LinearCoef

Линейные коэффициенты, L в виде p-by-1 вектор.

[]
ScalingDilation

Масштабируя функциональное расширение, bs_ns в виде ns-by-1 матрица.

[]
WaveletDilation

Расширение функции вейвлета, bw_nw в виде nw-by-1 матрица.

[]
ScalingTranslation

Масштабируя функциональный перевод, cs_ns в виде ns-by-q матрица.

[]
WaveletTranslation

Перевод функции вейвлета, cw_nw в виде nw-by-q матрица.

[]
ScalingCoef

Масштабируя функциональные коэффициенты, as_ns в виде ns-by-1 вектор.

[]
WaveletCoef

Коэффициенты функции вейвлета, aw_nw в виде nw-by-1 вектор.

[]
OutputOffset

Выведите смещение, dВ виде скаляра.

[]

Параметры обычно не присваиваются непосредственно. Они оцениваются идентификационным алгоритмом (nlarx или nlhwкогда wavenet используется в Нелинейном ARX (idnlarx) или Хаммерстайн-Винер (idnlhw) модель.

Options

Опции, задающие начальную структуру нелинейности вейвлета в виде структуры со следующими полями:

Имя поляОписаниеЗначение по умолчанию
FinestCell

Минимальное количество точек данных в самой маленькой ячейке в виде целого числа или вектора символов. Ячейка является областью, покрытой значительно ненулевым фрагментом вейвлета.

'auto' — Вычислите значение из данных.
MinCells

Минимальное количество ячеек в разделе в виде целого числа.

16
MaxCells

Максимальное количество ячеек в разделе в виде целого числа.

128
MaxLevels

Максимальное количество уровней вейвлета в виде целого числа.

10
DilationStep

Размер шага расширения в виде действительного скаляра.

2
TranslationStep

Размер шага перевода в виде действительного скаляра.

1

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

свернуть все

Объект средства оценки нелинейности вейвлета, возвращенный как wavenet объект.

Алгоритмы

wavenet может использоваться и в Нелинейном ARX и в моделях Хаммерстайна-Винера.

  • Когда используется в модели Nonlinear ARX:

    • Если Focus опция оценки (см., nlarxOptions) 'prediction', wavenet использует быстрый, неитеративный метод для оценки параметров [1]. Последовательные улучшения после первого использования оценки итеративный алгоритм.

    • Если Focus 'simulation', wavenet использует итеративный метод для оценки параметров.

    Чтобы всегда использовать неитеративный или итеративный алгоритм, задайте IterativeWavenet опция nlarxOptions.

  • Когда используется в модели Хаммерстайна-Винера, wavenet параметры определяются итеративной минимизацией.

Ссылки

[1] Чжан, Q. “Используя сеть вейвлета по непараметрической оценке”. Сделка IEEE на Нейронных сетях, Издании 8, Номере 2, март 1997, стр 227-236.

Смотрите также

|

Представленный в R2007a