For the complete documentation index, see llms.txt. This page is also available as Markdown.

トレーニング済みモデルを評価

モデル評価を使用して、テストデータセットでのモデルの性能を確認します。

概要

モデル評価では次が表示されます:

  1. 本番メトリクスエクスプローラー。モデルを実行する最適な confidence 閾値を見つけるのに役立ちます;

  2. モデル改善の推奨事項。モデルの精度を向上させる方法の提案を提供します;

  3. クラス別の性能。モデルが異なるクラスをどれだけ正しく識別できるかを示します;

  4. 混同行列。モデルが得意なクラスと苦手なクラスを見つけるのに使用できます;

  5. インタラクティブなベクターエクスプローラー。モデルがうまく識別できる画像クラスタや苦手な画像クラスタを特定できます;

モデル評価を使って、モデルの改善点を特定できます。

有料ユーザーがRoboflowで学習した、またはRoboflowにアップロードしたすべてのバージョン管理されたモデルに対して、モデル評価は自動的に実行されます。数百枚の画像のデータセットでは評価の実行に数分、大規模なデータセットでは数千枚以上の画像に対して数時間かかる場合があります。

対応プロジェクトタイプ

モデル評価は、Object Detection、Instance Segmentation、Classification、Semantic Segmentation の各プロジェクトをサポートしています。

Semantic Segmentation では、主要指標は mIoU (平均 Intersection-over-Union)です。mAP の代わりに使用されます。すべての指標(precision、recall、F1)は、インスタンスごとではなくピクセル単位で算出されます。クラス別の内訳では、IoU、precision、recall、F1、および各クラスの最適な confidence threshold が表示されます。混同行列の値は、オブジェクト数ではなくピクセル数を表します。

Webアプリ

モデル評価を開く

モデルの混同行列とベクターエクスプローラーを見つけるには、プロジェクト内の任意の学習済みモデルを開きます。次に、「評価を表示」ボタンをクリックします:

ウィンドウが開き、混同行列とベクター分析を確認できます。

本番メトリクスエクスプローラー

本番メトリクスエクスプローラーでは、あらゆる confidence threshold におけるモデルの Precision、Recall、F1 スコアを確認できます。この情報はグラフで表示されます。

これらの統計に基づき、本番メトリクスエクスプローラーは「最適な confidence」を推奨します。これは、Precision/Recall/F1 スコアのトレードオフが最も良くなる閾値です。

モデル評価が完了すると、推奨される最適な confidence threshold がモデルの推論リクエストのデフォルトとして自動的に適用されます。クラス別の閾値が利用できる場合はそれも適用され、各クラス独自の値がない場合はグローバル閾値がフォールバックとして使用されます。

ただし、個別の推論リクエストごとに confidence パラメータを明示的に渡すことで、confidence threshold を上書きできます。

スライダーをドラッグすると、異なる confidence threshold における F1/Precision/Recall の値を確認できます:

モデル改善の推奨事項

モデル評価のモデル改善の推奨事項セクションには、モデルの精度を向上させる方法の提案が一覧表示されます。これらの改善案は、モデルで計算された混同行列の結果に基づいています。(このページの後半で混同行列について詳しく説明します)。

モデル改善の推奨事項機能では、次のような提案ができます:

  • 偽陰性が多いモデルの改善方法。

  • 偽陽性が多いモデルの改善方法。

  • どのクラスがよく混同(誤認識)されるか。

  • 精度向上のために、どのクラスにより多くのデータが必要か。

  • テストセットまたは検証セットが小さすぎる可能性がある場合。

  • その他。

クラス別の性能

クラス別の性能チャートでは、データセット全体の各クラスについて、正しい予測、誤分類、偽陰性、偽陽性の数を確認できます。

この情報を使えば、モデルがどのクラスをうまく識別できるか、またどのクラスの識別が苦手かをひと目で確認できます。

データセットのクラス数が多い場合は、「すべてのクラス」ドロップダウンを開いて強調表示したいクラスを選ぶことで、特定のクラスに絞り込めます:

Confidence Threshold スライダーを動かすことで、閾値ごとにこのチャートがどう変化するかも確認できます:

デフォルトでは、このチャートは推奨される最適な confidence threshold を使用します。

混同行列

混同行列は、モデルが異なるクラスでどれだけ性能を発揮するかを示します。

混同行列は、学習済みモデルでテストセットと検証セットの画像を実行して算出されます。その後、モデルの結果をデータセット注釈の「ground truth」と比較します。

混同行列ツールを使うと、次を特定できます:

  • モデルの性能が良いクラス。

  • オブジェクトに対してモデルが誤ったクラスを識別するケース(偽陽性)。

  • 実際には存在しないのに、モデルがオブジェクトがあると識別するケース(偽陰性)。

以下は混同行列の例です:

モデルが多数のクラスを検出する場合、スクロールバーが表示され、混同行列を移動できます。

デフォルトでは、混同行列はモデルに対して算出された最適な閾値で実行した場合の性能を示します。

Confidence Threshold スライダーを使って confidence threshold を調整できます。スライダーを調整すると、混同行列、precision、recall が更新されます:

混同行列の各ボックスをクリックすると、対応するカテゴリにどの画像が含まれるかを確認できます。

たとえば、「偽陽性」列の任意のボックスをクリックすると、正解データには存在しないオブジェクトが検出された画像を特定できます。

個々の画像をクリックすると、インタラクティブ表示に入り、正解データ(注釈)とモデル予測を切り替えられます:

「正解データ」をクリックすると注釈を表示し、「モデル予測」をクリックするとモデルの出力を表示します。

HTTP API

モデル評価では、Version のテスト分割におけるモデルの性能を把握できます。クラス別指標、confidence-threshold 曲線、画像埋め込みクラスタリング、画像ごとの予測、改善提案が含まれます。Object Detection と Instance Segmentation では主要指標は mAP、Semantic Segmentation では mIoU です。評価は学習完了時に自動生成され、アプリから手動で再実行することもできます。

Model Evaluations API を使うと、アプリの評価ページに表示されるすべての内容を取得できます。UI の各パネルは専用エンドポイントに対応しています:

認証

すべてのエンドポイントには、 model-eval:read スコープを持つ API キーが必要です。クエリパラメータとして渡すか、 Bearer トークンとして Authorization ヘッダーに含めてください。

よくあるエラー

ステータス
エラーコード
条件

401

認証されていない

API キーがない、または無効です

404

model_eval_not_found

評価が存在しないか、別のワークスペースに属しています

409

model_eval_not_done

評価が完了していません。パネルデータはまだ利用できません

400

invalid_confidence

confidence クエリパラメータが整数ではありません。 [0, 100]

400

invalid_split

split クエリパラメータがエンドポイントで許可されている値のいずれでもありません

モデル評価を一覧取得

ワークスペース内のモデル評価を一覧表示します。軽量なプロジェクションを返します。特定の評価の主要指標については、次の モデル評価を取得.

クエリパラメータ

パラメータ
説明

project

string

プロジェクトをURLスラッグでフィルタします(例: chess-pieces-fmhpz)

version (別名 versionId)

string

特定のバージョンでフィルタします(例: "4")

model (別名 modelId)

string

特定のモデル ID の評価でフィルタします

status

列挙型

次のいずれか running, done, failed。未知の値は 400.

limit

整数

ページサイズ。デフォルト 50、最大 200

次のうち最大 1 つまでを project / version / model 各呼び出しで設定できます(最も具体的なものが優先されます: model > version > project)。組み合わせは 400 invalid_filter_combination として拒否されます。ストレージインデックスを有限に保つためです。

レスポンス

project はプロジェクトのURLスラッグです。REST API が URL パスで使用するのと同じ識別子です(/:workspace/:project/...)。評価 UI へ直接リンクするには: https://app.roboflow.com/{workspace}/{project}/evaluation/{versionId}.

モデル評価を取得

ID で単一のモデル評価を取得します。完了済みの評価では、レスポンスに summary オブジェクトが含まれ、主要指標が返されます。実行中または失敗した評価では、軽量な形だけが返されます。主要指標に何が入るかはタスクタイプによって異なります - mAP 検出系タスクでは mIoU 、Semantic Segmentation では

完了済み評価のレスポンス

実行中または失敗した場合のレスポンス

同じフィールドが summary ブロックなしで返されます。

注記

  • mAP は IoU 0.5 における平均適合率(map50)です。 null は、検出以外の評価タスク(例:分類、Semantic Segmentation)では

  • mIoU は前景クラスのマクロ平均 Intersection-over-Union です。Semantic Segmentation の評価でのみ設定され、 null それ以外では

  • precisionrecall は、テスト分割における F1 最適 confidence threshold で報告されます。

  • evalId は、すべてのパネル応答に埋め込まれる同じ識別子です。 modelEvals.get ペイロードは構造的にいずれかのパネルのペイロードのスーパーセットであるため、 summary-拡張済み modelEvals.get および getMapResults のレスポンスは同じクライアントコードパスでレンダリングできます。

  • project はプロジェクトのURLスラッグです。REST API が URL パスで使用するのと同じ識別子です。評価 UI へ直接リンクするには: https://app.roboflow.com/{workspace}/{project}/evaluation/{versionId}. projectnull プロジェクトが削除されている場合です。

mAP結果

評価の主要指標詳細を返します。レスポンスの形はタスクタイプによって異なります:

  • Object detection / instance segmentation - 各スプリットの IoU 0.5 / 0.5-0.95 / 0.75 における mAP。オブジェクトサイズ別およびクラス別に内訳されます。

  • Semantic segmentation - 各スプリットの mIoU、precision、recall、F1(ピクセル単位)。クラス別 IoU と最適 confidence threshold も含まれます。

レスポンスの taskType フィールドが、期待される形を示します: "object-detection-like" または "semantic-segmentation".

これはアプリの スプリット別メトリクス パネルが読み込むデータです。

レスポンス(Object Detection / Instance Segmentation)

レスポンス(Semantic Segmentation)

注記

  • レスポンスの taskType フィールドがレスポンスの形を判別します。スプリットの内容を解析する前に必ず確認してください。

  • 検出: map50_95 は、IoU 閾値 0.5 から 0.95 まで 0.05 刻みで平均した mAP です(COCO 標準)。オブジェクトサイズのバケットは null そのサイズのインスタンスがスプリットに存在しない場合は perClassの下にクラス名をキーとして表示されます。

  • Semantic Segmentation: すべての指標は、前景クラスに対するピクセル単位のマクロ平均です(背景は除外)。 miou は mean Intersection-over-Union です。 optimalThreshold はクラスごとの F1 最適 confidence threshold です。値 0.0 は有効で、モデルが argmax でピークに達することを意味します。

信頼度スイープ

各 confidence threshold における指標曲線と、スプリットごと(およびクラスごと)の F1 最適閾値を返します。precision/recall のトレードオフを描画したり、デプロイ時の閾値を選ぶのに役立ちます。

これはアプリの 本番メトリクスエクスプローラー パネルが読み込むデータです。

レスポンス

注記

  • perThreshold キーは小数文字列の confidence threshold で、通常は 0.01 から 0.00 まで 0.99.

  • optimalThreshold の各値が、そのスプリットで F1 を最大化する閾値です。

  • スプリット内の perClass の各クラスエントリは、ネストされた perClass.

クラス別の性能

1つのスプリットのクラス別主要指標を返します。レスポンスの形は評価のタスクタイプによって異なります:

  • Object detection / instance segmentation - クラス別 map50, map50_95, map75、precision、recall、F1、および最適閾値。

  • Semantic segmentation - クラス別 iou、precision、recall、F1、および最適閾値(ピクセル単位)。

レスポンスの taskType レスポンスのフィールドが、期待される形を示します。

これはアプリの クラス別の性能 パネルが読み込むデータです。

クエリパラメータ

パラメータ
説明

split

列挙型

次のいずれか train, valid, test。デフォルト test. all 有効ではありません。クラス別指標はスプリット間で集計できません。

レスポンス(Object Detection / Instance Segmentation)

レスポンス(Semantic Segmentation)

注記

  • taskType 各クラスのフィールドセットを区別します。検出クラスには map50/map50_95/map75;セマンティックセグメンテーションのクラスには iouクラスID 代わりに。

  • optimalThreshold は、信頼度スイープにおける各クラスのF1最適な信頼度しきい値です。

  • precision, recall、および F1 は、その各クラスの最適しきい値で報告されます。

  • 検出では、mAPフィールドは null その分割にそのクラスのインスタンスがない場合。

  • セマンティックセグメンテーションでは、すべての指標はピクセル単位です。1つの optimalThreshold0.0 は有効です。

混同行列

画像ごとの予測から導出された集約済みの混同行列を返します。各セル matrix[actual][predicted] は、正解クラスが 実際 で、モデルが 予測。セマンティックセグメンテーションの評価では、値はインスタンス数ではなくピクセル数を表します。

これはアプリの 混同行列 パネルが読み込むデータです。

クエリパラメータ

パラメータ
説明

split

列挙型

次のいずれか train, valid, test、または all。デフォルト test.

confidence

整数

の信頼度しきい値の割合 [0, 100]。デフォルトは正規のファイルです(通常は 20).

レスポンス

上の例では、信頼度しきい値 0.2 で:

  • の20件すべてが Car-rims 正しく分類されました(matrix[0][0] = 20)

  • モデルは80件の偽陽性を生成しました。 Car-rims 実際のクラスが background (matrix[2][0] = 80)

  • テスト分割には music-note インスタンス

注記

  • confidence 集約するレポートの基になる、信頼度ごとのどのバリアントを選ぶかを指定します。しきい値が異なると、異なる行列が得られます。

  • split=all train、valid、test 全体の生のカウントを集約します。

ベクトル解析

評価の画像埋め込みクラスタリング結果を返します。UMAPで射影した埋め込みをHDBSCANでクラスタリングし、クラスターごとの集計指標を含みます。モデルの性能が体系的に良い、または悪い画像のグループを見つけるのに役立ちます。

これはアプリの ベクトル解析 パネルが読み込むデータです。

クエリパラメータ

パラメータ
説明

confidence

整数

の信頼度しきい値の割合 [0, 100] (正規のレポートがデフォルトです)。

レスポンス

注記

  • クラスターID -1 はノイズ/未クラスタ化バケット(HDBSCANの慣例)です。どの高密度領域にも当てはまらない画像が入ります。

  • 平均適合率平均再現率 はクラスター内のすべての画像にわたって平均化されます。

  • 画像ごとの埋め込みとクラスター割り当ては、次を通じて公開されます 画像ごとの予測.

画像ごとの予測

画像ごとの予測レコードを返します。TP/FP/FN の件数、画像ごとの適合率/再現率/F1、画像のクラスターIDと2D埋め込み、および生の混同行列エントリを含みます。ページ分割されています。

これはアプリの 画像ごとの予測 パネルが読み込むデータです。

クエリパラメータ

パラメータ
説明

split

列挙型

次のいずれか train, valid, test、または all。デフォルト all.

confidence

整数

の信頼度しきい値の割合 [0, 100] (どの信頼度別レポートのバリアントを読み取るかを選択します)。

limit

整数

ページサイズ。デフォルト 200、最大 1000.

offset

整数

返却前にこの件数のレコードをスキップします。デフォルト 0.

レスポンス

注記

  • imageId はRoboflowの元画像IDです。ほかのRoboflow APIとの相互参照に便利です。

  • confusion エントリは [actualClassIdx, predictedClassIdx, count] の3要素のタプルです。クラスインデックスは、次と 混同行列classes.

  • embedding2D は、UMAPで射影された2D座標で、次の中で使用されます ベクトル解析 プロット。

  • 異なる confidence 値を指定すると異なる統計が返ります。予測はしきい値によって変化します。任意の confidence 値の探索が成功するのは、評価パイプラインが生成したしきい値に限られます。生成されていないバリアントは 404 report_not_found.

  • ページネーションのコスト:各ページで全体の model_eval_results.json ファイルをストレージから再読み込みし、サーバー側で分割します。非常に大きな image_results 配列の場合は、より大きい limit 値(最大 1000)を、多数の小さなページよりも使うことで、ページごとの固定コストを最小化できます。

推奨事項

完了した評価から生成されたモデル改善の推奨事項を返します。クラス不均衡の警告、見逃し検出のパターン、データセットに追加すべき内容や再学習方法に関するその他の実行可能な提案を含みます。

これはアプリの モデル改善の推奨事項 パネルが読み込むデータです。

このエンドポイントは 読み取り専用。推奨事項は、学習完了の副作用として(または従来のアプリ内「推奨事項を更新」アクションによって)生成されます。まだ生成されていない場合、レスポンスは 200 {"generated": false} - これは 1つの 409 EVAL_NOT_DONE。評価は 完了しています。ただし、オプションの推奨事項サイド出力がないだけです。他のパネルのエンドポイント(map-results, confidence-sweep、など)は返します 409 EVAL_NOT_DONE これは、背後のデータが評価に不可欠だからです。推奨事項はそうではありません。

レスポンス(推奨事項あり)

レスポンス(まだ生成されていません)

MCPサーバー

AIエージェントを次に接続すると MCPサーバー 、これらのツールでモデルのパフォーマンスを確認できます:

ツール
説明

model_evals_list

ワークスペース内のモデル評価を一覧表示します。

model_evals_get

1件の評価の最上位サマリーを取得します。

model_evals_get_map_results

分割ごとのmAP結果を取得します。

model_evals_get_confusion_matrix

混同行列を取得します。

model_evals_get_performance_by_class

1つの分割におけるクラスごとの性能指標を取得します。

model_evals_get_recommendations

利用可能であれば、その評価に対して生成された推奨事項を取得します。

最終更新

役に立ちましたか?