Main Content

fpe

推定されたモデルの赤池の最終予測誤差

説明

value = fpe(model) は、推定されたモデルの最終予測誤差 (FPE) 値を返します。

value = fpe(model1,...,modeln) は、複数の推定されたモデルの FPE 値を返します。

すべて折りたたむ

伝達関数モデルを推定します。

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

最終予測誤差 (FPE) 値を計算します。

value = fpe(sys)
value = 1.7252

あるいは、モデルの Report プロパティを使用して値にアクセスします。

sys.Report.Fit.FPE
ans = 1.7252

複数の出力誤差 (OE) モデルを推定し、赤池の最終予測誤差 (FPE) の値を使用して精度と複雑度のトレードオフが最適なものを選択します。

推定データを読み込みます。

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 = fpe(models{:});
[Vmin, I] = min(V);

AIC の値が最も小さい最適なモデルを返します。

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                    
 

入力引数

すべて折りたたむ

同定されたモデル。次のモデル オブジェクトのいずれかとして指定します。

出力引数

すべて折りたたむ

最終予測誤差 (FPE) 値。スカラーまたはベクトルとして返されます。複数モデルの場合、valuevalue(k)k 番目の推定モデル modelk に対応する行ベクトルになります。

詳細

すべて折りたたむ

赤池の最終予測誤差 (FPE)

赤池の最終予測誤差 (FPE) 基準は、異なるデータ セットでモデルをテストする状況をシミュレートすることでモデルの品質を示す尺度です。複数の異なるモデルを計算した後、この基準を使用してそれらを比較できます。赤池の理論では、精度が最も高いモデルの FPE が最も小さくなります。

モデルの推定と検証の両方に同じデータ セットを使用する場合、モデル次数を増やすほどモデル構造の柔軟性が高まり、常に適合度が向上します。

赤池の最終予測誤差 (FPE) は、次の方程式で定義されます。

FPE=det(1N1Ne(t,θ^N)(e(t,θ^N))T)(1+dN1dN)

ここで、

  • "N" は推定データ セット内の値の数です。

  • e(t) は予測誤差の "ny" 行 1 列のベクトルです。

  • θN は推定されたパラメーターを表します。

  • "d" は推定されたパラメーターの数です。

パラメーターの数がサンプルの数を超える場合、モデルの推定が実行されるときに FPE は計算されません (model.Report.FPE は空です)。fpe コマンドは NaN を返します。

ヒント

  • FPE 値は、モデルの推定時に計算されて格納されます。この値にアクセスする場合は、モデルの Report.Fit.FPE プロパティを参照してください。

参照

[1] Ljung, L. System Identification: Theory for the User, Upper Saddle River, NJ, Prentice-Hall PTR, 1999. See sections 7.4 and 16.4.

バージョン履歴

R2006a より前に導入