概要:モデルタイプの説明

モデリングメソッド

モデル/セルのタイプ

説明

使用条件

長所

短所

静的モデリング

(内部ステートを持たない、時間非依存、定常状態)

ASC GP

(ASCMO Gaussian Process ー ASCMOガウスプロセス)

  • ガウスプロセス、確率的回帰モデル。

  • トレーニングデータポイントの位置におけるトレーニンデータごとに、1つの基底関数。

  • トレーニングデータポイントの数が基底関数の最大数より大きい場合、ランダムに、またはGP SCSメソッドを用いて、ポイントのサブセットを選択。ここではSubset of Regressorsアルゴリズムが使用される。

  • デフォルトの2乗指数カーネルは、入力が出力に与える影響が2次距離で減衰するため、多くの技術システムに適している。より忠実度の高いシステムでは母性カーネルを選択可能。

  • このデフォルトモデルは、トレーニングデータ数入力数小~中程度の場合に使用が推奨される。

  • 15個の入力に対して、4000個を超えるトレーニングデータポイントを使用しない(代わりにMLPなどを使用)。

  • 入力数25~30を超えないこと

  • 優良なモデル品質

  • 優良な汎化品質を少ないトレーニングデータで実現。

  • モデルの不確実性の表示(シグマ)。

  • 確率的トレーニングによるオーバーフィッティングの回避

  • モデル品質はLeave-One-Out誤差でわかるため、検証データが必要なく、すべてのデータをトレーニングデータとして使用可能

  • トレーニング中のメモリの大量消費(トレーニングデータポイント数により2次関数的に増加)

  • モデル予測(推論)の計算負荷はトレーニングポイント数に依存し、大きくなる可能性がある。

ASC GP-SCS*

(ASCMO Sparse Constant Sigma Gaussian Process)

  • 疎なガウスプロセス。

  • 基底関数の数をトレーニングデータの数よりも少なくできる。

  • 基底関数の位置を最適化可能。

  • 確率モデルが必要であるが、より多くのトレーニングデータポイントが利用可能な場合。

  • 基底関数の数選択でき、少ない数が一般的。

  • モデル予測(推論)をフルGPよりも高速化

  • モデルの不確実性(シグマ)が利用できない

Polynom*

  • n次の多項式関数による多項式回帰。

  • y = a + b * x1 + c * x2 + d * x1 * x2 + e * x12...

  • 相互作用(例:一次のx1*x2)と次数(例:3次のx13)を選択可能。

  • 関連する項を自動的に検出するステップワイズ回帰がデフォルト。

  • 入力間の線形相互作用がほとんどない線形システム

  • 補外が優れている。

  • 高速シンプル

  • 相互作用する入力を持つ非線形システムモデル品質が低い

MLP

(Multilayer Perceptron ー 多層パーセプトロン)

  • 多層ニューラルネットワーク。

  • 活性化関数を選択可能。

  • データポイントが多い(>10,000)。

  • 入力が多い(>20)。

  • モデルサイズ(ニューロン/層の数)が選択可能で、小さくできる。

  • 非常に多くのデータでトレーニング可能。

  • オーバーフィッティングのリスクがあり、オーバーフィッティング回避のための検証データが必要。

ASC Compressed*

(追加のライセンスが必要)

  • 2乗指数カーネルに依存するモデル。

  • 基底関数の数が選択でき、これらの基底関数の位置を学習する。

  • モデルを小さくする必要がある場合に使用(20の規定関数のみ)。

  • 複雑な挙動を予測可能。

  • モデル予測(推論)はASC GPと同じで、Bosch AMU(Bosch ECU上での高速予測をハードウェアでサポートするAdvanced Modeling Unit)に統合可能。

  • フルのガウスプロセスと比較して小さい

  • オーバーフィッティングのリスクがあり、オーバーフィッティング回避のための検証データが必要。

Classification (GP)*

  • 2値分類モデル。

  • 出力チャンネルは0と1であること。

  • モデルは分類タスクにガウスプロセスを使用。

  • 2値(2つのクラス)への分類。

  • 15個の入力に対してトレーニングデータポイントが4000個未満であること。

  • 入力数は20~30を超えないこと。

  • 優良な汎化少数のトレーニングデータポイントで実現。

  • ガウスプロセス予測(推論)は、他のメソッドより 計算負荷が高い

Classification (MLP)*

  • 2値分類モデル。

  • 出力チャンネルは0と1であること。

  • モデルは分類タスクにMLP(多層パーセプトロン)を使用。

  • 2値(2つのクラス)への分類。

  • 多数のトレーニングデータポイントを使用。

  • 多数のデータを使用し、モデルの複雑さ(メモリ量)を選択可能

  • オーバーフィッティングのリスクがあり、オーバーフィッティング回避のための検証データが必要。

Classification(Random Decision Trees ー ランダム決定木)

  • 2値分類モデル。

  • 出力チャンネルは0と1であること。

  • モデルは決定木を使用し、フィーチャーとデータバギングによる分類を行う。

参照:Wikipedia:Decision Tree

Random Forest

  • 2値(2つのクラス)への分類。

  • 多数のトレーニングデータポイントを使用。

  • 木の数が十分であればオーバーフィッティングのリスクが低い
  • オーバーフィッティング発生時には木の深度を削減可能。
  • 予測、およびエクスポートされた予測用コードがシンプル
  • 多数の入力に使用可能。
  • モデル出力が安定しない(勾配最適化には適さない)。

NARX構造による過渡的モデリング

(NARX構造により、コアに静的モデルを使用することが可能)

静的モデリング を参照

RNN(再帰ニューラルネットワーク)による過渡的モデリング

LSTM Cell

(Long Short-Term Memory ー 長短期記憶)

  • 多層のニューラルネットワーク、深層学習モデル。

  • 活性化関数を選択可能。

  • 複数のゲートにより情報の追加と削除が可能(「忘却ゲート」)。

  • ASCMOで最も複雑なRNNで、層ごとに5つのゲート、活性化関数、リカレント活性化関数を持つ。

参照:Wikipedia:Long short-term memory

  • 長期挙動の学習。

  • 優良なモデル品質

  • 他のRNNタイプより複雑度が高い

LSTM Cell without Peepholes

  • LSTMセルと同じだが、接続数が少ない(ゲート層がセルの状態を見ることができない)。

  • LSTMの最初のバージョン。

  • 長期挙動の学習。

 

  • フルのLSTMセルよりも劣る可能性あり。

GRU Cell

(Gated Recurrent Unit ー ゲート付き再帰ユニット)

  • 3つのゲートを持つ中程度の複雑さのRNNセル。

参照:Wikipedia:Gated recurrent unit.

  • 長期挙動の学習。

  • 中程度の複雑さに関わらずLSTMモデル品質に到達可能。

 

GRU Cell(Reset After)

  • リセットゲートと更新ゲートの順序が、標準的なGRUと逆。

  • 長期挙動の学習。

 

 

RNN Cell

  • ゲートが1つのみ(活性化関数が1つのみ)の最も基本的なRNNセル。

  • 短期効果のみが重要でシステムの複雑度が低い場合。

  • 低い複雑度

  • 短期効果のみ

畳み込みニューラルネットワーク(CNN)

1D Convolution

  • 畳み込み深層ニューラルネットワーク。

参照:Wikipedia:Convolutional neural network。

  • RNN(LSTMセル)の代用

  • ノイズに強い

  • 時間次元からの各フィーチャーに加えて、データの深い(空間的)フィーチャーの学習も可能。

  • 予測時に、無効な内部状態から回復する。

  • LSTMの方がより良い結果となる場合が多い。

アンサンブルモデル

異なる複数のタイプのモデルを使用可能。

  • アンサンブルモデルは、複数のモデル(特に、異なるタイプのモデル)を用いて予測を行い、すべての予測の平均値を出力。

  • モデルの品質が十分でない場合、複数のモデルの組み合わせにより、より良い予測が得られる場合がある。

  • 堅牢性がある。

  • 複数のモデルをトレーニングする必要がある。

異常検出

Principal Component Analysis (PCA)

  • トレーニングデータから「正常」な挙動を学習し、それとは異なる挙動を「異常」として示す。

  • 入力データはPCAで縮小され、データの再構成を試みられる。モデルの出力は再構成誤差を0から1の値で示す。

  • データに含まれる異常を検出

  • 高速なトレーニング

  • 非線形の依存性の再構築は優れていない

Autoencoder

(RNN依存)

  • トレーニングデータから「正常」な挙動を学習し、それとは異なる挙動を「異常」として示す。

  • 入力データはオートエンコーダで縮小され、データの再構成を試みられる。モデルの出力は再構成誤差を0から1の値で示す。

参照:Wikipedia:Autoencoder

  • システムの複雑な挙動を考慮し、データに含まれる異常を検出する。

  • 非線形挙動の再構築が可能

  • RNNでのオートエンコーディングには複雑なモデルトレーニングが必要。

* ASCMO-STATICの場合:File > Options > Advanced Settings で高度な設定が有効になっている場合にのみ使用できるモデルです(参照:高度な設定を有効にする

参照

ASCMO-STATIC

ASCMO-STATICのモデルタイプ

ASCMO-DYNAMIC

Model Configurations (ASCMO-DYNAMIC)

NARXによるモデリング

RNNによるモデリング

畳み込みニューラルネットワーク(Convolutional Neural Network)によるモデル予測

異常検出によるモデリング