aic

Информационный Критерий Акэйка предполагаемой модели

Описание

пример

value = aic(model) возвращает нормированное значение Информационного критерия Акэйка (AIC) для предполагаемой модели.

value = aic(model1,...,modeln) возвращает нормированные значения AIC для нескольких предполагаемых моделей.

пример

value = aic(___,measure) задает тип AIC.

Примеры

свернуть все

Оцените модель передаточной функции.

load iddata1 z1;
np = 2;
sys = tfest(z1,np);

Вычислите информационное значение Критерия нормированного Акэйка.

value = aic(sys)
value = 0.5453

Значение также вычисляется во время оценки модели. В качестве альтернативы используйте Report свойство модели получить доступ к этому значению.

sys.Report.Fit.nAIC
ans = 0.5453

Оцените модель передаточной функции.

load iddata1 z1;
np = 2;
sys = tfest(z1,np);

Вычислите нормированное значение Информационного критерия Акэйка (AIC). Этот синтаксис эквивалентен aic_raw = aic(sys).

aic_raw = aic(sys,'nAIC')
aic_raw = 0.5453

Вычислите необработанное значение AIC.

aic_raw = aic(sys,'aic')
aic_raw = 1.0150e+03

Вычислите откорректированное значение AIC объема выборки.

aic_c = aic(sys,'AICc')
aic_c = 1.0153e+03

Вычислите значение Байесовых информационных критериев (BIC).

bic = aic(sys,'BIC')
bic = 1.0372e+03

Эти значения также вычисляются во время оценки модели. В качестве альтернативы используйте Report.Fit свойство модели получить доступ к этим значениям.

sys.Report.Fit
ans = struct with fields:
    FitPercent: 70.7720
       LossFcn: 1.6575
           MSE: 1.6575
           FPE: 1.7252
           AIC: 1.0150e+03
          AICc: 1.0153e+03
          nAIC: 0.5453
           BIC: 1.0372e+03

Оцените несколько моделей Output-Error (OE) и используйте информационный Критерий откорректированного Акэйка маленького объема выборки (AICc) значение, чтобы выбрать то с оптимальным компромиссом между точностью и сложностью.

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

load iddata2

Задайте порядки модели, варьирующиеся по 1:4 область значений.

nf = 1:4;
nb = 1:4;
nk = 0:4;

Оцените модели OE со всеми возможными комбинациями выбранных областей значений порядка.

NN = struc(nf,nb,nk); 
models = cell(size(NN,1),1);
for ct = 1:size(NN,1)
   models{ct} = oe(z2, NN(ct,:));
end

Вычислите откорректированные значения AIC маленького объема выборки для моделей и возвратите наименьшее значение.

V = aic(models{:},'AICc');
[Vmin,I] = min(V);

Возвратите оптимальную модель, которая имеет наименьшее значение AICc.

models{I}
ans =
Discrete-time OE model: y(t) = [B(z)/F(z)]u(t) + e(t)
  B(z) = 1.067 z^-2                                  
                                                     
  F(z) = 1 - 1.824 z^-1 + 1.195 z^-2 - 0.2307 z^-3   
                                                     
Sample time: 0.1 seconds
  
Parameterization:
   Polynomial orders:   nb=1   nf=3   nk=2
   Number of free coefficients: 4
   Use "polydata", "getpvec", "getcov" for parameters and their uncertainties.

Status:                                     
Estimated using OE on time domain data "z2".
Fit to estimation data: 86.53%              
FPE: 0.9809, MSE: 0.9615                    

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

свернуть все

Идентифицированная модель в виде одного из следующих объектов модели:

  • idtf

  • idgrey

  • idpoly

  • idproc

  • idss

  • idnlarx, кроме нелинейной модели ARX, которая включает двоичное дерево или средство оценки нелинейности нейронной сети

  • idnlhw

  • idnlgrey

Тип AIC в виде одного из следующих значений:

  • 'nAIC' — Нормированный AIC

  • 'aic' — Необработанный AIC

  • 'AICc' — Маленький объем выборки откорректировал AIC

  • 'BIC' — Байесовы информационные критерии

Смотрите Информационный критерий Акэйка (AIC) для получения дополнительной информации.

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

свернуть все

Значение качественной меры, возвращенной как скаляр или вектор. Для многоуровневых моделей, value вектор-строка где value(k) соответствует kth оценил модель modelk.

Больше о

свернуть все

Информационный критерий Акэйка (AIC)

Информационный критерий Акэйка (AIC) обеспечивает меру качества модели, полученного путем симуляции ситуации, где модель тестируется на различном наборе данных. После вычисления нескольких различных моделей можно сравнить их использующий этот критерий. Согласно теории Акэйка, самая точная модель имеет самый маленький AIC. Если вы используете тот же набор данных и в оценке модели и в валидации, подгонка всегда улучшается, когда вы увеличиваете порядок модели и, поэтому, гибкость структуры модели.

Информационный критерий Акэйка (AIC) включает следующие метрики качества:

  • Необработанный AIC, заданный как:

    AIC=N*log(det(1N1Nε(t,θ^N)(ε(t,θ^N))T))+2np+N*(ny*(log(2π)+1))

    где:

    • N является количеством значений в наборе данных оценки

    • ε (t) является ny-by-1 вектор ошибок предсказания

    • θN представляет предполагаемые параметры

    • np является количеством предполагаемых параметров

    • ny является количеством выходных параметров модели

  • Маленький объем выборки откорректировал AIC, заданный как:

    AICc=AIC+2np*np+1Nnp1

  • Нормированный AIC, заданный как:

    nAIC=log(det(1N1Nε(t,θ^N)(ε(t,θ^N))T))+2npN

  • Байесовы информационные Критерии, заданные как:

    BIC=N*log(det(1N1Nε(t,θ^N)(ε(t,θ^N))T))+N*(ny*log(2π)+1)+np*log(N)

Советы

  • Программное обеспечение вычисляет и хранит все типы информационных метрик Критерия Акэйка во время оценки модели. Если вы хотите получить доступ к этим значениям, смотрите Report.Fit свойство модели.

Ссылки

[1] Ljung, L. System Identification: Теория для Пользователя, Верхнего Сэддл-Ривер, NJ, PTR Prentice Hall, 1999. Смотрите разделы о статистической среде для метода оценки параметра и метода максимального правдоподобия и сравнения структур модели.

Представлено до R2006a