外れ値の識別と削除によるモデル改良
モデル誤差(モデル予測を基準とした測定値の偏差)が大きい測定ポイントを「外れ値」と呼びます。
プロット上で視覚的に評価する(図8参照)こともできますが、条件を定量的に解釈することもできます。残差が 3-4 x RMSE より大きければ外れ値の可能性があります。
視覚的評価は、「モデル予測に対する測定値」の表示(Model > Error (<method>) > Measured vs. Predicted、<method> = Leave-One-Out / Test Data / Training Data)を利用して行います。
下図では、エンジンの測定データをモデル予測に重ねて表示しています。マークされたポイントは、ASCMO-STATICによって外れ値として識別されたものです。
図8: Measured vs. Predicted ディスプレイ内の外れ値
このような偏差が発生する原因としては、測定装置の不具合などに起因する単純な測定誤差があります。また、エンジンの運転限界付近の不安定な領域で測定が行われたためにモデルによるマッピングができなかった可能性も考えられます。
このような測定ポイントはモデルに悪影響を与えます。図9の緑色のグラフは青色のポイントに基づくモデリングから得られるものですが、赤色の外れ値も使用してモデルトレーニングを行うと、測定データから逸脱したグラフ(赤色)になってしまいます。
図9: 外れ値を含めるモデリング(赤色)と削除するモデリング(緑色)
以下に、外れ値を識別して削除する方法について説明します。
-
Model > Error (Leave-One-Out) > Measured vs. Predicted を選択します。
実際の測定値と、モデルによって予測された出力値が表示されます。
-
Extras > Set Outlier Threshold を選択します。
このメニューエントリは、Advanced Settingsがオンになっている場合にのみ使用できます。このオプションは、メインウィンドウの File > Options で設定できます。
スライダ(Outlier Threshold:)と入力フィールド(Sigma)が表示されます。
-
Sigma を 4 のままにし、有意水準を高くします。
有意水準が高いほど、外れ値の数が多くなります(赤色の部分)。
外れ値は、以下のように絶対誤差または相対誤差も表示できるようにしたりデータを正規確率プロットで表示したりすることにより、さらに明確になります。
-
以下のいずれかを選択します。
- Model > Error (Leave-One-Out) > Error vs. Output を選択します。
- Model > Error (Leave-One-Out) > Probability Plot を選択します。
-
選択したメニューコマンドに応じて、以下のいずれかのウィンドウが開きます。
図10: "Error vs. Predicted":モデル予測に対する絶対誤差
図11: "Probability Plot":正規確率プロット
各ポイントを識別するには、ポイントを右クリックします。
外れ値を1 つ、または複数まとめて削除するには、以下のように操作してください。
-
Model > Error (Leave-One-Out) > * で表示したプロット内で、マウスの左ボタンを押し下げたまま、選択したいポイントを囲むように四角形を描いて、1 個または複数個のポイントを選択します。
選択したポイントがカラーで強調表示されます。
- 必要に応じて、別の四角形を描いてさらにポイントを選択します。
-
四角形内のポイントを外れ値としてマークするには、四角形の端を右クリックし、ショートカットメニューから Mark as Outlier in Selected/All Outputs を選択します。
この操作を取り消すには、ショートカットメニューから Unmark in Selected Output を選択します。
-
選択した測定ポイントをトレーニングデータセットから削除するには、Extras > Delete Marked Points and Retrain を選択します。
-
データを削除した後には、出力用にモデルのトレーニングが再度行われます。