メインコンテンツ

分類学習器における分類器の性能の可視化と評価

分類学習器アプリで分類器に学習させた後で、精度の値に基づくモデルの比較、クラス予測のプロットによる結果の可視化、混同行列、ROC 曲線、および適合率-再現率曲線の使用による性能のチェックを行うことができます。

  • "k" 分割交差検証を使用した場合、"k" 個の検証分割内の観測値を使用して精度の値が計算され、平均の交差検証誤差が報告されます。検証分割内の観測値に対する予測も行われ、これらの予測に基づいて混同行列、ROC 曲線、および適合率-再現率曲線が計算されます。

    メモ

    既定の設定のままでデータをアプリにインポートすると、自動的に交差検証が使用されます。詳細については、検証方式の選択を参照してください。

  • ホールドアウト検証を使用した場合、検証分割内の観測値を使用して精度の値が計算され、観測値に対して予測が行われます。これらの予測に基づいて混同行列、ROC 曲線、および適合率-再現率曲線も計算されます。

  • 再代入検証を使用した場合、スコアはすべての学習データに基づく再代入精度、予測は再代入予測です。

[モデル] ペインにおける性能のチェック

分類学習器でモデルを学習させると、モデルの全体的な精度がパーセント単位で [モデル] ペインに表示されるので、どれが最適か確認します。[精度 (検証)] が最高のスコアは、ボックスで強調表示されます。このスコアが検証精度になります。検証精度のスコアにより、学習データと比較した新しいデータに対するモデルの性能を推定できます。このスコアは、最適なモデルの選択に役立ちます。

Models and their validation accuracy values displayed in the Models pane

  • 交差検証の場合、スコアはテスト用に確保した分以外のすべての観測値についての精度であり、ホールドアウト (検証) 分割に含まれていた各観測値が対象になります。

  • ホールドアウト検証の場合、スコアはホールドアウトされた観測値についてのスコアです。

  • 再代入検証の場合、スコアはすべての学習データ観測値に対する再代入精度です。

総合スコアが最高でも、目標に最適なモデルではないことがあります。全体的な精度がわずかに低いモデルが目標に最適な分類器になる可能性もあります。たとえば、特定のクラスにおける偽陽性が重要な場合があります。データ収集にコストがかかったり困難な予測子のいくつかを除外することが考えられます。

各クラスにおける分類器の性能を調べるには、混同行列を確認します。

[概要] タブと [モデル] ペインでのモデル メトリクスの表示

モデル メトリクスをモデルの [概要] タブおよび [モデル] ペインに表示し、メトリクスを使用してモデルの評価と比較を行うことができます。代わりに、結果の比較プロットと [結果テーブル] タブを使用してモデルを比較することもできます。詳細については、結果の比較プロットでのモデル情報と結果の表示およびテーブル ビューでのモデル情報と結果の比較を参照してください。

[学習結果][追加の学習結果] のメトリクスは検証セットに対して計算されます。[テスト結果][追加のテスト結果] のメトリクス (表示される場合) はテスト セットに対して計算されます。詳細については、テスト セットにおけるモデルの性能の評価を参照してください。

Sample model Summary tab

モデル メトリクス

メトリクス説明ヒント
精度正しく分類された観測値の比率より大きい精度値を探します。
総コスト総誤分類コスト。既定では、誤分類された観測値の数が総誤分類コストになります。詳細については、分類学習器アプリの誤分類コストを参照してください。より小さい総コスト値を探します。精度値が大きいままであることを確認します。
誤り率誤分類された観測値の比率。誤り率は 1 から精度を減算した値です。より小さい誤り率値を探します。
予測速度検証データ セットの予測時間に基づく新しいデータの推定予測速度この推定にはアプリの内外のバックグラウンド処理が影響する可能性があるため、より正しい比較のために同様の条件でモデルに学習させます。
学習時間モデルの学習の所要時間この推定にはアプリの内外のバックグラウンド処理が影響する可能性があるため、より正しい比較のために同様の条件でモデルに学習させます。
モデル サイズ (コンパクト)機械学習モデル オブジェクトをコンパクトなモデル (つまり学習データなし) としてエクスポートした場合のサイズ。モデルをワークスペースにエクスポートすると、エクスポートされた構造体にはモデル オブジェクトと追加フィールドが含まれます。アプリで表示されるモデル オブジェクトのサイズ (バイト数) は whos 関数から返されるものです。learnersize 関数では、モデル オブジェクトで gather を呼び出してから whos を呼び出すため、一部のモデル タイプについて異なるサイズが返される場合があることに注意してください。ターゲット アプリケーションのメモリ要件に合ったモデル サイズの値を探します。
モデル サイズ (Coder)MATLAB® Coder™ で生成される C/C++ コードでのモデルの概算サイズ (バイト数)。アプリで表示されるサイズ (バイト数) は type="coder" を指定した learnersize 関数から返されるものです。コード生成でサポートされていないモデル タイプについては、Coder のモデル サイズは NaN になります。サポートされているモデル タイプの一覧については、Export Classification Model to MATLAB Coder to Generate C/C++ Codeを参照してください。

アプリには適合率、再現率、F1 スコアの 3 つの追加モデル メトリクスが用意されています。これらのメトリクスは、モデルが既知のクラスを含む検証データまたはテスト データについて正しい予測 (真陽性と真陰性) を行う頻度と誤った予測 (偽陽性と偽陰性) を行う頻度のインジケーターです。これらのメトリクスは、クラス単位で使用するか、マクロ、マイクロ、加重のいずれかの平均タイプを使用してすべてのクラスについて平均化できます。これらのメトリクスを使用するプロットの例については、ROC 曲線のチェックおよび適合率-再現率曲線のチェックを参照してください。

追加のモデル メトリクス

メトリクス説明ヒント
適合率陽性の予測値、つまり予測されたすべての正の結果における予測された真陽性の結果の比率より適合率の高い値を探します。偽陽性の予測の数が多いほど、モデルの適合率は低くなります。
再現率真陽性率 (感度)、つまり実際のすべての真陽性の結果における予測された真陽性の結果の比率より再現率の高い値を探します。偽陰性の予測の数が多いほど、モデルの再現率は低くなります。
F1 スコア適合率と再現率の調和平均F1 スコアを高くするには、モデルの適合率と再現率をどちらも高くする必要があります。

平均のタイプ

メトリクス説明ヒント
マクロ平均クラスごとのメトリクス値の重み付けされていない平均クラスの頻度に関係なく、すべてのクラス間の平均でモデルの性能を評価するには、この統計を使用します。
マイクロ平均すべてのクラスの予測値と実際の値の組み合わせを使用して計算される特定のメトリクスの平均クラスに関係なく、すべての予測を均等に評価するには、この統計を使用します。
加重平均各クラスの出現頻度によって重み付けされた、クラスごとのメトリクス値の平均モデルの性能を評価し、クラスの頻度の大きな不均衡を考慮するには、この統計を使用します。

[モデル] ペインでは、精度、総コスト、誤り率、マクロ平均の適合率、マクロ平均の再現率、またはマクロ平均の F1 スコアに従ってモデルを並べ替えることができます。メトリクスを選択してモデルを並べ替えるには、[モデル] ペインの上部にある [並べ替え] リストを使用します。[モデル] ペインでの並べ替えに、すべてのメトリクスを使用できるわけではありません。[結果テーブル] では、他のメトリクスでもモデルを並べ替えることができます (テーブル ビューでのモデル情報と結果の比較を参照)。

[モデル] ペインにリストされているモデルの削除もできます。削除するモデルを選択してペインの右上にある [選択したモデルの削除] ボタンをクリックするか、モデルを右クリックして [削除] を選択します。[モデル] ペインに最後に残ったモデルは削除できません。

テーブル ビューでのモデル情報と結果の比較

[概要] タブまたは [モデル] ペインを使用してモデル メトリクスを比較する代わりに、結果のテーブルを使用できます。[学習] タブの [プロットと結果] セクションで [結果テーブル] をクリックします。[結果テーブル] タブでは、モデルを学習やテストの結果のほか、それらのオプション (モデル タイプ、選択した特徴、PCA など) で並べ替えることもできます。たとえば、モデルを検証精度で並べ替えるには、[精度 (検証)] 列ヘッダーの並べ替え矢印をクリックします。下向き矢印は、精度が最も高いモデルから精度が最も低いモデルの順に並べ替えられていることを示します。

テーブルの列のオプションをさらに表示するには、テーブルの右上にある [表示する列の選択] ボタン をクリックします。[表示する列の選択] ダイアログ ボックスで、結果テーブルに表示する列のボックスをオンにします。新しく選択した列はテーブルの右側に追加されます。

Select Columns to Display dialog box

結果テーブル内でテーブルの列を手動でドラッグして、希望する順序で表示できます。

[お気に入り] 列を使用して、いくつかのモデルをお気に入りとしてマークできます。お気に入りのモデルの選択内容は、結果テーブルと [モデル] ペインで一致するように維持されます。他の列と異なり、[お気に入り] 列と [モデル番号] 列はテーブルから削除できません。

テーブルから行を削除するには、行内のいずれかのエントリを右クリックし、[行を非表示] (行が強調表示されている場合は [選択した行を非表示]) をクリックします。連続する行を削除するには、削除する最初の行内のいずれかのエントリをクリックし、Shift キーを押して、削除する最後の行内のいずれかのエントリをクリックします。次に、強調表示されたエントリのいずれかを右クリックし、[選択した行を非表示] をクリックします。削除したすべての行を元に戻すには、テーブル内のいずれかのエントリを右クリックし、[すべての行を表示] をクリックします。復元された行はテーブルの一番下に追加されます。

テーブルの情報をエクスポートするには、テーブルの右上にあるいずれかのエクスポート ボタン を使用します。テーブルをワークスペースとファイルのどちらにエクスポートするかを選択します。エクスポートしたテーブルには、表示されている行と列のみが含まれます。

結果の比較プロットでのモデル情報と結果の表示

結果の比較プロットでモデル情報と結果を表示できます。[学習] タブまたは [テスト] タブの [プロットと結果] セクションで [結果の比較] をクリックします。あるいは、[結果テーブル] タブの [結果のプロット] ボタンをクリックします。プロットには、モデルの検証精度の棒グラフが、精度値の高いものから順に表示されます。[データの並べ替え][並べ替え] リストを使用して、モデルを他の学習やテストの結果で並べ替えることができます。同じタイプのモデルをグループ化するには、[モデル タイプでグループ化] を選択します。すべてのモデル タイプに同じ色を割り当てるには、[モデル タイプ別に色を指定] をオフにします。

Compare Results bar chart

表示するモデル タイプを選択するには、[選択] のチェック ボックスを使用します。表示されているモデルを非表示にするには、プロット内の棒を右クリックして [モデルを非表示] を選択します。

[フィルターの適用とグループ化][フィルター] ボタンをクリックし、表示されているモデルを選択してフィルターを適用することもできます。[モデルのフィルター適用と選択] ダイアログ ボックスで、[メトリクスの選択] をクリックし、ダイアログ ボックスの上部にあるモデルのテーブルに表示するメトリクスを選択します。テーブル内でテーブルの列をドラッグして、希望する順序で表示できます。テーブルを並べ替えるには、テーブル ヘッダーの並べ替え矢印をクリックします。メトリクス値によるフィルターをモデルに適用するには、まず、[フィルター] 列でメトリクスを選択します。次に、[モデルへのフィルター適用] テーブルで条件を選択し、[値] フィールドに値を入力して、[フィルターの適用] をクリックします。モデルのテーブルで、選択内容が更新されます。追加の条件を指定するには、[フィルターの追加] ボタンをクリックします。[OK] をクリックして、更新されたプロットを表示します。

Filter and Select Models dialog box

[データのプロット][X][Y] のリストで、プロットする他のメトリクスを選択します。[X] または [Y]Model Number を選択しない場合は、散布図が表示されます。

Compare Results scatter plot

結果の比較プロットを Figure にエクスポートするには、分類学習器アプリのプロットのエクスポートを参照してください。

結果テーブルをワークスペースにエクスポートするには、[プロットのエクスポート] をクリックして [プロット データのエクスポート] を選択します。必要な場合は、エクスポートする変数の名前を [結果メトリクス プロット データのエクスポート] ダイアログ ボックスで編集します。[OK] をクリックします。結果テーブルを含む構造体配列が作成されます。

分類器の結果のプロット

散布図を使用して分類器の結果を確認します。モデルの散布図を表示するには、[モデル] ペインでモデルを選択します。[学習] タブの [プロットと結果] セクションで矢印をクリックしてギャラリーを開き、[検証結果] グループの [散布] をクリックします。分類器に学習をさせた後では、散布図の表示がデータからモデル予測に切り替わります。ホールドアウト検証または交差検証を使用している場合、これらの予測はホールドアウトされた (検証) 観測値に対する予測です。つまり、ソフトウェアでは、対応する観測値を使用せずに学習させたモデルを使用して各予測値を取得します。

結果を調べるには、右にあるコントロールを使用します。次が可能です。

  • モデル予測をプロットするかデータのみをプロットするかを選択します。

  • [モデル予測] のチェック ボックスを使用して、正しい結果または正しくない結果を表示または非表示にします。

  • [予測子][X][Y] のリストを使用して、プロットする特徴量を選択します。

  • [表示] のチェック ボックスを使用して特定のクラスを表示または非表示にすることにより、結果をクラス別に可視化します。

  • プロットしたクラスのスタックの順番を変更するには、[クラス] でクラスを選択してから [最前面へ移動] をクリックします。

  • ズームインやズームアウト、またはプロットの移動を行います。ズームまたは移動は、散布図上にマウスを合わせ、プロットの右上隅に表示されるツール バーの対応するボタンをクリックすることで有効になります。

Scatter plot of the Fisher iris data. Correctly classified points are marked with an O. Incorrectly classified points are marked with an X.

散布図における特徴量の調査 も参照してください。

アプリで作成した散布図を Figure にエクスポートする方法については、分類学習器アプリのプロットのエクスポートを参照してください。

混同行列におけるクラスごとの性能のチェック

現在選択している分類器の各クラスにおける性能を調べるには、混同行列プロットを使用します。分類モデルに学習させた後、そのモデルの混同行列がアプリで自動的に開きます。"すべて" のモデルに学習させた場合は、最初のモデルの混同行列のみが開きます。別のモデルの混同行列を表示するには、[モデル] ペインでモデルを選択します。[学習] タブの [プロットと結果] セクションで矢印をクリックしてギャラリーを開き、[検証結果] グループの [混同行列 (検証)] をクリックします。混同行列は、分類器が十分には機能しなかった領域を特定するために役立ちます。

プロットを開くと、真のクラスが行に、予測したクラスが列に表示されます。ホールドアウト検証または交差検証を使用している場合、ホールドアウトされた (検証) 観測値に対する予測が混同行列の計算に使用されます。対角線上のセルには、真のクラスと予測したクラスが一致したことが示されます。これらの対角線上のセルが青であれば、分類器によりこの真のクラスの観測値が正しく分類されたことになります。

既定の表示では、各セルに観測値の数が示されます。

クラスごとに分類器がどのように機能したかを調べるには、[プロット][真陽性率 (TPR), 偽陰性率 (FNR)] オプションを選択します。TPR は、真のクラスごとの正しく分類された観測値の割合です。FNR は、真のクラスごとの誤って分類された観測値の割合です。プロットで右の最後の 2 列に真のクラスごとの要約が示されます。

ヒント

分類器が十分に機能しなかった領域を探すには、パーセンテージが高くオレンジで表示されている対角線外のセルを確認します。パーセンテージが高くなるほど、セルの色が濃くなります。これらのオレンジのセルでは、真のクラスと予測したクラスが一致していません。データ点は誤分類されています。

Confusion matrix assessing a model that predicts the country of origin for cars in the carbig data set

この例では carbig データ セットを使用しており、先頭から 5 行目には真のクラスが Japan の自動車がすべて表示されています。各列には、予測したクラスが表示されています。Japan の自動車の 77.2% が正しく分類されているので、このクラスで正しく分類された点の真陽性率は [77.2%] であることが [TPR] 列の青のセルに示されています。

他の Japan の自動車の行は誤分類されており、5.1% の自動車が Germany、5.1% の自動車が Sweden、12.7% の自動車が USA として誤って分類されています。このクラスで誤って分類された点の偽陰性率は [22.8%] であることが、[FNR] 列のオレンジのセルに示されています。

比率ではなく観測値の数 (この例では自動車の台数) を表示するには、[プロット][観測値の数] を選択します。

偽陽性が重要な分類問題の場合、(真のクラスではなく) 予測クラスごとに結果をプロットして誤検出率を調査します。予測クラスごとの結果を表示するには、[プロット][陽性の予測値 (PPV), 偽発見率 (FDR)] オプションを選択します。PPV は、予測されたクラスごとの正しく分類された観測値の割合です。FDR は、予測されたクラスごとの誤って分類された観測値の割合です。このオプションを選択すると、混同行列の表の下に要約行が含まれるようになります。各クラスで正しく予測された点について陽性の予測値が青で表示され、各クラスで誤って予測された点について誤検出率がオレンジで表示されます。

関心の対象となるクラスに含まれる誤分類点が多すぎると判断した場合は、分類器の設定または特徴選択を変更して、より適切なモデルを探してください。

アプリで作成した混同行列プロットを Figure にエクスポートする方法については、分類学習器アプリのプロットのエクスポートを参照してください。

混同行列をワークスペースにエクスポートするには、[プロットのエクスポート] をクリックして [プロット データのエクスポート] を選択します。必要な場合は、エクスポートする変数の名前を [混同行列プロット データのエクスポート] ダイアログ ボックスで編集します。[OK] をクリックします。混同行列とクラス ラベルを含む構造体配列が作成されます。

ROC 曲線のチェック

モデルに学習させた後の受信者動作特性 (ROC) 曲線を表示します。[プロットと結果] セクションで矢印をクリックしてギャラリーを開き、[検証結果] グループの [ROC 曲線 (検証)] をクリックします。関数 rocmetrics を使用して ROC 曲線がプロットされます。

ROC curve for a binary classification problem

ROC 曲線は、現在選択されている分類器で計算された分類スコアのさまざまなしきい値についての真陽性率 (TPR) と偽陽性率 (FPR) の関係を示します。[モデルの操作点] に、分類器で観測値を分類するために使用されるしきい値に対応する偽陽性率と真陽性率が表示されます。たとえば、0.1 という偽陽性率は、分類器が陰性クラスの観測値の 10% を誤って陽性クラスに割り当てていることを示します。0.85 という真陽性率は、分類器が陽性クラスの観測値の 85% を正しく陽性クラスに割り当てていることを示します。

[AUC] (曲線の下の領域) の値は、ROC 曲線の FPR = 0 から FPR = 1 までの FPR に対する積分 (TPR の値) に対応します。AUC の値は分類器の全体的な品質の尺度です。AUC の値は 0 から 1 までの範囲で表され、AUC の値が大きいほど分類器の性能が高いことを示します。クラスと学習済みのモデルを比較するには、ROC 曲線で性能の違いを確認します。

[クラスごとの曲線] の下の [表示] のチェック ボックスを使用して、特定のクラスの ROC 曲線を作成できます。ただし、バイナリ分類問題では両方のクラスの ROC 曲線を調べる必要はありません。2 つの ROC 曲線は対称であり、AUC の値は同じになります。一方のクラスの TPR はもう一方のクラスの真陰性率 (TNR) であり、TNR は 1 – FPR です。したがって、一方のクラスの TPR と FPR のプロットはもう一方のクラスの 1 – FPR と 1 – TPR のプロットと同じになります。

マルチクラス分類器の場合、アプリでは、バイナリ問題がクラスごとに 1 つになるように一連の 1 対他のバイナリ分類問題を定式化し、対応するバイナリ問題を使用して各クラスの ROC 曲線を求めます。それぞれのバイナリ問題において、1 つのクラスが陽性で残りが陰性であると仮定されます。プロットのモデル操作点は、1 対他のバイナリ問題の各クラスについての分類器の性能を示します。

[平均曲線] の下の [表示] のチェック ボックスを使用して、平均 ROC 曲線をプロットすることもできます。平均のタイプについては、[概要] タブと [モデル] ペインでのモデル メトリクスの表示を参照してください。

ROC curves for a multiclass classification problem

ROC 曲線の比較プロットを作成すると、最大で 4 つの学習済みモデルの ROC 曲線を同じプロット上に表示できます。[プロットと結果] セクションで矢印をクリックしてギャラリーを開き、[モデルの結果の比較] グループの [ROC 曲線の比較] をクリックします。プロットの右にある [モデル] で、表示するモデルを選択します。選択したモデルがそれぞれ異なるライン スタイルでプロットに示されます。

ROC 曲線の詳細については、rocmetrics およびROC 曲線とパフォーマンス メトリクスを参照してください。

アプリで作成した ROC 曲線プロットを Figure にエクスポートする方法については、分類学習器アプリのプロットのエクスポートを参照してください。

ROC 曲線の結果をワークスペースにエクスポートするには、[プロットのエクスポート] をクリックして [プロット データのエクスポート] を選択します。必要な場合は、エクスポートする変数の名前を [ROC 曲線プロット データのエクスポート] ダイアログ ボックスで編集します。[OK] をクリックします。rocmetrics オブジェクトを含む構造体配列が作成されます。

適合率-再現率曲線のチェック

モデルに学習させた後の適合率-再現率曲線を表示します。[プロットと結果] セクションで矢印をクリックしてギャラリーを開き、[検証結果] グループの [適合率-再現率曲線 (検証)] をクリックします。rocmetrics 関数を使用して適合率-再現率曲線が作成されます。

Precision-recall curve for a binary classification problem

適合率-再現率曲線は、現在選択されている分類器で計算された分類スコアのさまざまなしきい値についての陽性の予測値 (適合率) と真陽性率 (再現率) の関係を示します。[モデルの操作点] に、分類器で観測値を分類するために使用されるしきい値に対応する適合率と真陽性率 (TPR) が表示されます。たとえば、0.85 という適合率は、陽性が割り当てられた観測値の 85% が真陽性であることを示します。0.85 という真陽性率は、分類器が陽性クラスの観測値の 85% を正しく陽性クラスに割り当てていることを示します。

[PR-AUC] (曲線の下の領域) の値は分類器の全体的な品質の尺度です。PR-AUC の値は 0 から 1 までの範囲で表され、一般に、PR-AUC の値が大きいほど適合率と再現率がどちらも高いことを示します (aucを参照)。クラスと学習済みのモデルを比較するには、適合率-再現率曲線で性能の違いを確認します。

[クラスごとの曲線] の下の [表示] のチェック ボックスを使用して、特定のクラスの適合率-再現率曲線を作成できます。マルチクラス分類器の場合、アプリでは、バイナリ問題がクラスごとに 1 つになるように一連の 1 対他のバイナリ分類問題を定式化し、対応するバイナリ問題を使用して各クラスの適合率-再現率曲線を求めます。それぞれのバイナリ問題において、1 つのクラスが陽性で残りが陰性であると仮定されます。プロットのモデル操作点は、1 対他のバイナリ問題の各クラスについての分類器の性能を示します。

[平均曲線] の下の [表示] のチェック ボックスを使用して、平均適合率-再現率曲線をプロットすることもできます。平均のタイプについては、[概要] タブと [モデル] ペインでのモデル メトリクスの表示を参照してください。

Precision-recall curves for a multiclass classification problem

適合率-再現率曲線プロットを Figure にエクスポートするには、分類学習器アプリのプロットのエクスポートを参照してください。

適合率-再現率曲線の結果をワークスペースにエクスポートするには、[プロットのエクスポート] をクリックして [プロット データのエクスポート] を選択します。必要な場合は、エクスポートする変数の名前を [適合率-再現率曲線プロット データのエクスポート] ダイアログ ボックスで編集します。[OK] をクリックします。rocmetrics オブジェクトを含む構造体配列が作成されます。

レイアウトの変更によるモデル プロットの比較

[学習] タブの [プロットと結果] セクションのプロット オプションを使用して、分類学習器で学習させたモデルの結果を可視化します。プロットのレイアウトを再編成して複数のモデルの結果を比較できます。[レイアウト] ボタンのオプションを使用するか、プロットをドラッグするか、モデル プロットのタブの右にある [ドキュメント アクション] ボタンに表示されるオプションを選択します。

たとえば、分類学習器で 2 つのモデルに学習させた後、次のいずれかの手順を使用して、各モデルのプロットを表示し、プロットのレイアウトを変更してプロットを比較します。

  • [プロットと結果] セクションで [レイアウト] をクリックし、[モデルの比較] を選択します。

  • 2 つ目のモデルのタブ名をクリックし、2 つ目のモデルのタブを右にドラッグします。

  • モデル プロットのタブの右端にある [ドキュメント アクション] ボタンをクリックします。[すべて並べて表示] オプションを選択し、1 行 2 列のレイアウトを指定します。

    Selections for a side-by-side model comparison using the Document Actions button

プロットの右上にある [プロット オプションを非表示] ボタン をクリックするとプロットのスペースを大きくできることに注意してください。

テスト セットにおけるモデルの性能の評価

分類学習器でモデルに学習させた後、アプリでテスト セットにおけるモデルの性能を評価できます。このプロセスにより、新しいデータにおけるモデルの性能が検証精度で適切に推定されるかどうかを確認できます。

  1. テスト データ セットを分類学習器にインポートします。あるいは、アプリにデータをインポートするときに一部のデータをテスト用に確保します ((オプション) テスト用のデータの確保を参照)。

    • テスト データ セットが MATLAB ワークスペース内にある場合は、[テスト] タブの [データ] セクションで [テスト データ] をクリックし、[ワークスペースから] を選択します。

    • テスト データ セットがファイル内にある場合は、[データ] セクションで [テスト データ] をクリックし、[ファイルから] を選択します。スプレッドシート、テキスト ファイル、コンマ区切り値 (.csv) ファイルなどのファイル タイプをリストから選択するか、[すべてのファイル] を選択して .dat など他のファイル タイプを参照します。

    [テスト データのインポート] ダイアログ ボックスで、[テスト データ セット変数] のリストからテスト データ セットを選択します。テスト セットは、学習と検証のためにインポートした予測子と同じ変数をもたなければなりません。テスト応答変数内の一意の値は、応答変数全体におけるクラスのサブセットでなければなりません。

  2. テスト セット メトリクスを計算します。

    • 単一のモデルのテスト メトリクスを計算するには、[モデル] ペインで学習済みモデルを選択します。[テスト] タブの [テスト] セクションで [選択項目をテスト] をクリックします。

    • すべての学習済みモデルのテスト メトリクスを計算するには、[テスト] セクションで [すべてテスト] をクリックします。

    学習データと検証データを含むデータ セット全体 (テスト データは除く) で学習させた各モデルのテスト セットの性能が計算されます。

  3. 検証精度とテスト精度を比較します。

    モデルの [概要] タブの [学習結果] セクションと [テスト結果] セクションに、それぞれ検証メトリクスとテスト メトリクスが表示されます。検証精度によってテスト精度が適切に推定されるかどうかを確認できます。追加のメトリクスを表示するには、[追加の学習結果][追加のテスト結果] をクリックします。

    プロットを使用したテスト結果の可視化もできます。

    • 混同行列を表示します。[テスト] タブの [プロットと結果] セクションで [混同行列 (テスト)] をクリックします。

    • ROC 曲線を表示します。[プロットと結果] セクションで [ROC 曲線 (テスト)] をクリックします。

    • 適合率-再現率曲線を表示します。[プロットと結果] セクションで [適合率-再現率曲線 (テスト)] をクリックします。

例については、分類学習器アプリにおけるテスト セットを使用した分類器の性能チェックを参照してください。ハイパーパラメーターの最適化ワークフローでテスト セット メトリクスを使用する例については、分類学習器アプリでハイパーパラメーターの最適化を使用した分類器の学習を参照してください。

参考

トピック