このセクションの他の記事
精度評価の値について
「概要」や「精度評価」、「学習情報」タブに表示される予測精度の値の違いについて、学習用データセットをどのように使って学習し、精度を算出しているのか概説します。
■学習に使用するデータ
MatrixFlowではAIモデルを作成するとき、投入した学習用データセットを 学習の詳細設定 の「テストデータ比率」の指定に基づいて訓練データとテストデータに分割します。
例えば、学習用データセットが500行あり、テストデータ比率に0.1を指定したら、
訓練データ :450行
テストデータ:50行 に分割されます。
■学習の進み方と学習中に求まる予測精度
学習は、訓練データのみを使って進みます。
<レシピに「AutoFlow」を利用している場合>
訓練データをさらにk個のまとまりに分割して、そのうちの1つを検証データとします。
残りの訓練データで学習を行いながら、最も精度良く予測ができるパラメータの組み合わせを探索します。
このとき、パラメータの組み合わせが適切なのかを検証するために、1試行ごとに検証データを使ってアルゴリズムに沿った精度評価値を算出します。
ここで気を付けたいのは、この精度評価値は訓練データと検証データを使って求めた値である点です。
これをアルゴリズムとパラメータを変えながら、レシピブロックAutoFlowの「試行回数」に指定した回数、繰り返します。
このように過学習を防ぎながら、最も精度の高いパラメータの設定値を導きます。
求めた値の内、最高精度の評価値とそのハイパーパラメータは、「学習情報」タブの画面左側に表示されます。
<「AutoFlow」以外の場合>
パラメータの自動探索機能は備えていませんので、訓練データを使って、レシピに手動で設定したパラメータ値で学習を行います。
そのため、「学習情報」タブには訓練データを使って求めた評価値は表示されません。
■モデル性能を表す予測精度の値
「試行回数」に指定した回数の試行が終わっても、未知のデータに対する予測精度は分かりません。
そこで、最後にテストデータ(学習に使用していない、AIモデルにとって未知のデータ)と、試行で導いた最高精度のパラメータを使って、モデル性能を評価する精度値を算出します。
この値は、「概要」と「精度評価」タブの「テストデータ正解率」(分類の場合)、または「テストデータ精度 (R2)」(回帰の場合)に表示されます。
■まとめ
- 「学習情報」タブの最高精度は、訓練データ+検証データで求めた値(AutoFlowのみ)
パラメータの組み合わせが適切かを表す - 「概要」と「精度評価」タブの精度評価値は、テストデータで求めた値
モデルの性能を表す - 異なるデータで求めた値のため、表示される値もそれぞれ異なる
- モデルの性能を評価するには、テストデータで求めた「概要」と「精度評価」タブの精度評価値を参照する