Share via


Machine Learning - 評価

重要

Machine Learning Studio (クラシック) のサポートは、2024 年 8 月 31 日に終了します。 その日までに、Azure Machine Learning に切り替えすることをお勧めします。

2021 年 12 月 1 日以降、新しい Machine Learning Studio (クラシック) リソースは作成できません。 2024 年 8 月 31 日まで、既存の Machine Learning Studio (クラシック) リソースを引き続き使用できます。

ML Studio (クラシック) のドキュメントは廃止予定であり、今後更新されない可能性があります。

この記事では、機械学習モデルの評価に使用できる Machine Learning Studio (クラシック) のモジュールについて説明します。 モデルの評価 は、トレーニングが完了した後に実行され、予測の精度を測定し、モデルの適合度を評価します。

注意

適用対象: Machine Learning Studio (クラシック) のみ

類似のドラッグ アンド ドロップ モジュールは Azure Machine Learning デザイナーで使用できます。

この記事では、モデルの作成、トレーニング、評価、スコアリングのための Machine Learning Studio (クラシック) の全体的なプロセスについても説明します。

Machine Learning Studio (クラシック) で機械学習モデルを作成して使用する

機械学習の一般的なワークフローには、次のフェーズが含まれます。

  1. 適切なアルゴリズムを選択し、初期オプションを設定します。
  2. 互換性のあるデータを使用してモデルをトレーニングします。
  3. モデル内のパターンに基づく新しいデータを使用して予測を作成します。
  4. モデルを評価して、予測が正確かどうか、誤差の量、オーバーフィットが発生したかどうかを判断します。

Machine Learning Studio (クラシック) では、機械学習用の柔軟でカスタマイズ可能なフレームワークがサポートされています。 このプロセスの各タスクは、特定の種類のモジュールによって実行されます。 モジュールは、実験の残りの部分を壊さずに変更、追加、または削除できます。

このカテゴリのモジュールを使用して、既存のモデルを評価します。 通常、モデルの評価には何らかの結果データセットが必要です。 評価データセットがない場合は、スコアリングによって結果を生成できます。 テスト データセット、または "グラウンド トゥルース" または既知の期待される結果を含む他のデータ セットを使用することもできます。

モデル評価の詳細

一般に、モデルを評価する際のオプションは、評価するモデルの種類と使用するメトリックによって異なります。 これらのトピックでは、最もよく使用されるメトリックの一部を示します。

Machine Learning Studio (クラシック) では、使用しているモデルの種類や、モデルが予測しているクラスの数に応じて、さまざまな視覚化も提供されます。 これらの視覚化を見つける方法については、「 評価メトリックの表示」を参照してください。

多くの場合、これらの統計を解釈するには、モデルがトレーニングされた特定のアルゴリズムをより深く理解する必要があります。 モデルを評価する方法と、各メジャーに返される値を解釈する方法の詳細については、「Machine Learningでモデルのパフォーマンスを評価する方法」を参照してください。

モジュールの一覧

Machine Learning - 評価カテゴリには、次のモジュールが含まれています。

  • モデルのクロス検証: データをパーティション分割することで、分類モデルまたは回帰モデルのパラメーター推定をクロス検証します。

    トレーニング セットとモデルの有効性をテストする場合は、 モデルのクロス検証 モジュールを使用します。 クロス検証では、データをフォールドに分割し、フォールドの組み合わせで複数のモデルをテストします。

  • モデルの評価: 標準メトリックを使用して、スコア付けされた分類または回帰モデルを評価します。

    ほとんどの場合、汎用の Evaluate Model モジュールを使用します。 これは、モデルがサポートされている分類アルゴリズムまたは回帰アルゴリズムのいずれかに基づいている場合に特に当てはまります。

  • レコメンダーの評価: レコメンダー モデル予測の精度を評価します。

    レコメンデーション モデルの場合は、 レコメンダーの評価 モジュールを使用します。

  • クラスタリング モデルの場合は、 クラスターへのデータの割り当てモジュールを 使用します。 次に、そのモジュールの視覚化を使用して、評価結果を確認します。
  • カスタム評価メトリックを作成できます。 カスタム評価メトリックを作成するには、R スクリプトの実行 モジュールで R コードを指定するか、Python スクリプト の実行 モジュールで Python コードを指定します。 このオプションは、オープンソース ライブラリの一部として発行されたメトリックを使用する場合や、モデルの精度を測定するために独自のメトリックを設計する場合に便利です。

機械学習モデルの評価の結果を解釈することは、アートです。 データとビジネス上の問題に加えて、数学的な結果を理解する必要があります。 さまざまなシナリオで結果を解釈する方法の説明については、次の記事を参照することをお勧めします。

テクニカル ノート

このセクションには、実装の詳細、ヒント、よく寄せられる質問への回答が含まれています。

評価メトリックを表示する

Machine Learning Studio (クラシック) で各モデルの種類のメトリック グラフを確認する場所について説明します。

2 クラス分類モデル

二項分類モデルの既定のビューには、対話型の ROC グラフと、プリンシパル メトリックの値のテーブルが含まれます。

An interactive ROC chart and a table of values for the principal metrics in binary classification models

二項分類モデルを表示するには、次の 2 つのオプションがあります。

  • モジュールの出力を右クリックし、[ 視覚化] を選択します。
  • モジュールを右クリックし、[ 評価結果] を選択し、[ 視覚化] を選択します。

スライダーを使用して、確率 しきい値 を変更することもできます。 しきい値は、結果を true として受け入れるかどうかを決定します。 その後、これらの値がどのように変化するかを確認できます。

多クラス分類モデル

複数クラス分類モデルの既定のメトリック ビューには、すべてのクラスの混同行列と、モデル全体のメトリックのセットが含まれます。

複数クラス分類モデルを表示するには、次の 2 つのオプションがあります。

  • モジュールの出力を右クリックし、[ 視覚化] を選択します。
  • モジュールを右クリックし、[ 評価結果] を選択し、[ 視覚化] を選択します。

わかりやすくするために、次の 2 つの結果を並べて示します。

Metrics table and Confusion Matrix for multiclass classification models

回帰モデル

回帰モデルのメトリック ビューは、作成したモデルの種類によって異なります。 メトリック ビューは、基になるアルゴリズム インターフェイスに基づいており、モデル メトリックに最適です。

回帰モデルを表示するには、次の 2 つのオプションがあります。

  • テーブルの精度メトリックを表示するには、[ モデルの評価 ] モジュールの出力を右クリックし、[ 視覚化] を選択します。
  • 値を含むエラー ヒストグラムを表示するには、モジュールを右クリックし、[ 評価結果] を選択し、[ 視覚化] を選択します。

Error Histogram and Metrics table for linear regression models

[エラー ヒストグラム] ビューは、エラーがどのように分散されているかを理解するのに役立ちます。 これは次のモデルの種類に対して提供され、平均平方根誤差 (RMSE) などの既定のメトリックのテーブルが含まれています。

次の回帰モデルでは、いくつかのカスタム メトリックと共に、既定のメトリックのテーブルが生成されます。

データを操作するためのヒント

Machine Learning Studio (クラシック) UI からコピーと貼り付けなしで番号を抽出するには、Machine Learning用の新しい PowerShell ライブラリを使用できます。 実験全体のメタデータやその他の情報を取得することも、個々のモジュールから取得することもできます。

モデル評価モジュールから値を抽出するには、識別を容易にするために、モジュールに一意のコメントを追加する必要があります。 次に、 Download-AmlExperimentNodeOutput コマンドレットを使用して、JSON 形式で視覚化からメトリックとその値を取得します。

詳細については、「 PowerShell を使用して機械学習モデルを作成する」を参照してください。

関連項目