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

  • 'AICc' - Малый корректируемый AIC размера выборки

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

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

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

свернуть все

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

Подробнее о

свернуть все

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

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

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

  • Raw AIC, заданный как:

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

    где:

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

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

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

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

    • ny - количество выходов модели

  • Малый корректируемый AIC размера выборки, определяемый как:

    AICc=AIC+2np*np+1Nnp1

  • Нормализованный АПК, заданный как:

    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)

Совет

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

Ссылки

[1] Ljung, L. System Identification: Theory for the User, Upper Saddle River, NJ, Prentice-Hall PTR, 1999. Смотрите разделы о статистической среде для оценки параметра и метода максимального правдоподобия и сравнения структур модели.

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