回帰学習器におけるモデルの性能評価
回帰学習器で回帰モデルに学習させた後で、モデルの統計量に基づくモデルの比較、応答プロットまたは予測応答と実際の応答のプロットによる結果の可視化、残差プロットによるモデルの評価を行うことができます。
k 分割交差検証を使用した場合、k 個の検証分割内の観測値を使用してモデルの統計量が計算され、平均値が報告されます。検証分割内の観測値に対する予測が行われ、これらの予測がプロットに示されます。検証分割内の観測値に対する残差も計算されます。
メモ
既定の設定のままでデータをアプリにインポートすると、自動的に交差検証が使用されます。詳細については、検証方式の選択を参照してください。
ホールドアウト検証を使用した場合、検証分割内の観測値を使用してモデルの統計量が計算され、これらの観測値に対して予測が行われます。これらの予測はプロットで使用され、予測に基づいて残差の計算も行われます。
再代入検証を使用した場合、スコアはすべての学習データに基づく再代入モデルの統計量、予測は再代入予測です。
[モデル] ペインにおける性能のチェック
回帰学習器でモデルに学習をさせた後で、[モデル] ペインをチェックして、どのモデルの総合スコアが最良かを調べます。[RMSE (検証)] が最高のスコアは、ボックスで強調表示されます。このスコアは検証セットの平方根平均二乗誤差 (RMSE) です。新しいデータに対する学習済みモデルの性能をスコアによって推定できます。このスコアは、最適なモデルの選択に役立ちます。
交差検証の場合、スコアは検定用に確保した分以外のすべての観測値についての RMSE であり、ホールドアウト (検証) 分割に含まれていた各観測値が対象になります。
ホールドアウト検証の場合、スコアはホールドアウトされた観測値に対する RMSE です。
再代入検証の場合、スコアはすべての学習データに対する再代入 RMSE です。
総合スコアが最高でも、目標に最適なモデルではないことがあります。総合スコアがわずかに低いモデルが目標に最適なモデルである場合もあります。過適合を回避するため、データ収集が高価または困難である予測子のいくつかを除外することが考えられます。
モデルの統計量の表示と比較
モデルの統計量をモデルの [概要] タブに表示し、これらの統計量を使用してモデルの評価と比較を行うことができます。[学習結果] の統計量は検証セットに対して計算されます。[テスト結果] の統計量 (表示される場合) は、インポートした検定セットに対して計算されます。詳細については、検定セットにおけるモデルの性能の評価を参照してください。
モデルの統計量
統計 | 説明 | ヒント |
---|---|---|
RMSE | 平方根平均二乗誤差。RMSE は常に正であり、単位は応答の単位に一致します。 | 値が小さい RMSE を探します。 |
決定係数 | 決定係数。決定係数は常に 1 より小さく、通常は 0 より大きくなります。学習済みモデルを、応答が一定で学習応答の平均に等しいモデルと比較します。この定数モデルよりモデルが劣っている場合、決定係数は負になります。 | 1 に近い決定係数を探します。 |
MSE | 平均二乗誤差。MSE は RMSE の 2 乗です。 | 値が小さい MSE を探します。 |
MAE | 平均絶対誤差。MAE は常に正であり、RMSE に似ていますが、外れ値の影響は少なくなります。 | 値が小さい MAE を探します。 |
さまざまなモデルの統計量に基づいてモデルを並べ替えることができます。統計量を選択してモデルを並べ替えるには、[モデル] ペインの上部にある [並べ替え] リストを使用します。
[モデル] ペインにリストされている不要なモデルの削除もできます。削除するモデルを選択してペインの右上にある [選択したモデルの削除] ボタンをクリックするか、[回帰学習器] タブの [モデル] セクションで [削除] ボタンをクリックするか、モデルを右クリックして [削除] を選択します。[モデル] ペインに最後に残ったモデルは削除できません。
応答プロットにおけるデータと結果の確認
応答プロットを使用して回帰モデルの結果を確認します。応答プロットには、予測された応答とレコード番号が表示されます。回帰モデルに学習させた後、そのモデルの応答プロットがアプリで自動的に開きます。"すべて" のモデルに学習させた場合は、最初のモデルの応答プロットのみが開きます。別のモデルの応答プロットを表示するには、[モデル] ペインでモデルを選択します。[回帰学習器] タブの [プロット] セクションで矢印をクリックしてギャラリーを開き、[検証結果] グループの [応答] をクリックします。ホールドアウト検証または交差検証を使用している場合、予測された応答の値はホールドアウトされた (検証) 観測値に対する予測です。つまり、ソフトウェアでは、対応する観測値を使用せずに学習させたモデルを使用して各予測値を取得します。
結果を調べるには、右にあるコントロールを使用します。次が可能です。
予測された応答および/または真の応答をプロットします。[プロット] のチェック ボックスを使用して選択を行います。
[誤差] チェック ボックスを選択すると、予測された応答と真の応答の間の垂直線として予測誤差が表示されます。
x 軸にプロットする変数を [X 軸] で選択します。レコード番号またはいずれかの予測子変数を選択できます。
[スタイル] で応答をマーカーまたは箱ひげ図としてプロットします。[箱ひげ図] を選択できるのは、x 軸の変数に一意な値がほとんど含まれていない場合だけです。
箱ひげ図には、応答の代表的な値と外れ値の可能性がある値が表示されます。中央の印は中央値を、ボックスの上下の端はそれぞれ 25 番目と 75 番目の百分位数を示します。垂直線はひげと呼ばれ、ボックスから、外れ値とは見なされない最も極端なデータ点まで伸びます。外れ値は
'+'
記号を使用して個別にプロットされます。箱ひげ図についての詳細は、boxplot
を参照してください。
アプリで作成した応答プロットを Figure にエクスポートする方法については、回帰学習器アプリのプロットのエクスポートを参照してください。
予測された応答と実際の応答のプロット
予測と実際のプロットを使用してモデルの性能をチェックします。このプロットを使用して、異なる応答値について回帰モデルがどの程度適切に予測を行うかを調べます。モデルに学習させた後で予測と実際のプロットを表示するには、[プロット] セクションで矢印をクリックしてギャラリーを開き、[検証結果] グループの [予測と実際 (検証)] をクリックします。
プロットを開くと、モデルの予測された応答が実際の真の応答に対してプロットされます。完璧な回帰モデルでは、予測された応答が真の応答と等しくなるので、すべての点が対角線上に配置されます。この線から点までの垂直距離は、その点についての予測誤差です。優れたモデルは誤差が小さく、予測が対角線の近くに分布します。
通常、優れたモデルでは点が対角線の近くでほぼ対称的に配置されます。プロットに明確なパターンがある場合、モデルを改善できる可能性があります。別のモデル タイプに学習させるか、モデルを複製してからモデルの [概要] タブの [モデルのハイパーパラメーター] オプションを使用して現在のモデル タイプをより柔軟にします。モデルを改善できない場合は、さらにデータが必要であるか、重要な予測子が欠けている可能性があります。
アプリで作成した予測と実際のプロットを Figure にエクスポートする方法については、回帰学習器アプリのプロットのエクスポートを参照してください。
残差プロットの使用によるモデルの評価
残差プロットを使用してモデルの性能をチェックします。モデルに学習させた後で残差プロットを表示するには、[プロット] セクションで矢印をクリックしてギャラリーを開き、[検証結果] グループの [残差 (検証)] をクリックします。残差プロットには、予測された応答と真の応答の差が表示されます。x 軸にプロットする変数を [X 軸] で選択します。真の応答、予測された応答、レコード番号、またはいずれかの予測子を選択します。
通常、優れたモデルでは残差が 0 の近くでほぼ対称的に配置されます。残差に明確なパターンがある場合、モデルを改善できる可能性があります。次のようなパターンを探します。
0 の近くで対称的になっている残差ではない。
プロットの左から右に残差のサイズが大きく変化している。
外れ値がある。つまり、他の残差よりはるかに大きい残差がある。
明確な非線形パターンが残差にある。
別のモデル タイプに学習させるか、モデルを複製してからモデルの [概要] タブの [モデルのハイパーパラメーター] オプションを使用して現在のモデル タイプをより柔軟にします。モデルを改善できない場合は、さらにデータが必要であるか、重要な予測子が欠けている可能性があります。
アプリで作成した残差プロットを Figure にエクスポートする方法については、回帰学習器アプリのプロットのエクスポートを参照してください。
レイアウトの変更によるモデル プロットの比較
[回帰学習器] タブの [プロット] セクションのプロット オプションを使用して、回帰学習器で学習させたモデルの結果を可視化します。プロットのレイアウトを再編成して複数のモデルの結果を比較できます。[レイアウト] ボタンのオプションを使用するか、プロットをドラッグ アンド ドロップするか、モデル プロットのタブの右にある [ドキュメント アクション] 矢印に表示されるオプションを選択します。
たとえば、回帰学習器で 2 つのモデルに学習させた後、次のいずれかの手順を使用して、各モデルのプロットを表示し、プロットのレイアウトを変更してプロットを比較します。
[プロット] セクションで、[レイアウト] をクリックし、[モデルの比較] を選択します。
2 つ目のモデルのタブ名をクリックし、2 つ目のモデルのタブを右にドラッグ アンド ドロップします。
モデル プロットのタブの右端にある [ドキュメント アクション] 矢印をクリックします。
[すべて並べて表示]
オプションを選択し、1 行 2 列のレイアウトを指定します。
プロットの右上にある [プロット オプションを非表示] ボタン をクリックするとプロットのスペースを大きくできることに注意してください。
検定セットにおけるモデルの性能の評価
回帰学習器でモデルに学習させた後、アプリで検定セットにおけるモデルの性能を評価できます。このプロセスにより、新しいデータにおけるモデルの性能が検証メトリクスで適切に推定されるかどうかを確認できます。
検定データセットを回帰学習器にインポートします。あるいは、アプリにデータをインポートするときに一部のデータを検定用に確保します ((オプション) 検定用のデータの確保を参照)。
検定データ セットが MATLAB® ワークスペース内にある場合は、[回帰学習器] タブの [検定] セクションで [検定データ] をクリックし、[ワークスペースから] を選択します。
検定データ セットがファイル内にある場合は、[検定] セクションで [検定データ] をクリックし、[ファイルから] を選択します。スプレッドシート、テキスト ファイル、コンマ区切り値 (
.csv
) ファイルなどのファイル タイプをリストから選択するか、[すべてのファイル] を選択して.dat
など他のファイル タイプを参照します。
[検定データのインポート] ダイアログ ボックスで、[検定データセット変数] のリストから検定データセットを選択します。検定セットは、学習と検証のためにインポートした予測子と同じ変数をもたなければなりません。
検定セット メトリクスを計算します。
単一のモデルの検定メトリクスを計算するには、[モデル] ペインで学習済みモデルを選択します。[回帰学習器] タブの [検定] セクションで [すべて検定] をクリックし、[選択項目を検定] を選択します。
すべての学習済みモデルの検定メトリクスを計算するには、[検定] セクションで [すべて検定] をクリックし、[すべて検定] を選択します。
学習データと検証データを含むデータ セット全体 (検定データは除く) で学習させた各モデルの検定セットの性能が計算されます。
検証メトリクスと検定メトリクスを比較します。
モデルの [概要] タブの [学習結果] セクションと [テスト結果] セクションに、それぞれ検証メトリクスと検定メトリクスが表示されます。検証メトリクスによって検定メトリクスが適切に推定されるかどうかを確認できます。
プロットを使用した検定結果の可視化もできます。
予測と実際のプロットを表示します。[回帰学習器] タブの [プロット] セクションで矢印をクリックしてギャラリーを開き、[テスト結果] グループの [予測と実際 (検定)] をクリックします。
残差プロットを表示します。[プロット] セクションで矢印をクリックしてギャラリーを開き、[テスト結果] グループの [残差 (検定)] をクリックします。
例については、回帰学習器アプリにおける検定セットを使用したモデルの性能チェックを参照してください。ハイパーパラメーターの最適化ワークフローで検定セット メトリクスを使用する例については、回帰学習器アプリのハイパーパラメーターの最適化を使用した回帰モデルの学習を参照してください。