> For the complete documentation index, see [llms.txt](https://docs.roboflow.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.roboflow.com/models/ja/ping-si/compare-trained-models.md).

# 学習済みモデルを比較

同じデータセットバージョン上のモデルについて、テストセット精度と中央値レイテンシを比較します。

学習済みモデルを比較して、精度と速度のトレードオフを見つけます。比較には、同じ Dataset Version に学習済み、またはアップロードされたモデルが含まれます。

比較リクエストは読み取り専用です。評価は開始されません。

{% hint style="info" %}
Model Comparison には、Workspace 内での Model Evaluation アクセスが必要です。アクセスがない場合、「Compare」タブにはアップグレードの案内が表示され、比較リクエストはエラーを返します。
{% endhint %}

## 概要

各モデル行には、そのメトリクス、中央値レイテンシ、フロンティア状態、除外理由が含まれます。評価のないモデルも応答に残ります。

比較では、各モデルの最新の完了済み評価を使用します。より古い対象の評価にフォールバックすることはありません。

デフォルトのフロンティアメトリクスは Project の種類によって異なります:

* Object Detection、Instance Segmentation、Keypoint Detection: mAP\@50:95 (`mAP5095`).
* Semantic Segmentation: mIoU (`mIoU`).
* Classification: F1 (`f1`).

別の値を使用するには `availableMetrics` から選択して、別のメトリクスを比較してください。API の精度値は比率です。CLI ではパーセンテージで表示されます。

レイテンシは、サーバー側での推論時間の中央値をミリ秒で表したものです。前処理と後処理を含みますが、ネットワーク時間は含みません。

モデルが少なくとも同等に正確で同等に高速で、かつ一方が厳密に優れているものがなければ、そのモデルはパレートフロンティア上にあります。測定値が同一であれば、複数のモデルがフロンティア上に載ることがあります。フロンティアに含まれることは推奨を意味しません。

## Web アプリ

Project サイドバーの「Models」内にある「Compare」を開きます。「Dataset Version」リストでバージョンを選択します。

チャートには、レイテンシと選択したメトリクスを持つモデルが含まれます。ポイントを選択すると、そのモデルカードが開きます。

メトリクスセレクターを使って、チャートのメトリクスとフロンティアを変更します。Detection Project では mAP\@50、mAP\@50:95、mAP\@75、Precision、Recall、F1 を含めることができます。Instance Segmentation Project ではさらに mBAP\@50、mBAP\@50:95、mBAP\@75 も含められます。Semantic Segmentation Project ではさらに mBIoU も含められます。古い評価にはこれらの境界メトリクスがないため、それらのモデルは、いずれかを選択したときに表示されるには評価の更新が必要です。

「Some models need evaluation updates」パネルには、比較結果が不足しているモデルが一覧表示され、各モデルに必要な内容が説明されます。

* これまで一度も評価されていないモデルについては、「Run Evaluation」をクリックします。
* 評価にレイテンシまたは精度メトリクスがない場合は、「Update Evaluation」をクリックします。
* 実行に失敗した後は、「Retry Evaluation」をクリックします。

パネル内の対象モデルをすべて評価するには、「Update All」をクリックします。すでにキューに入っている評価や実行中の評価は除外されます。

いずれのモデルにも比較結果がない場合、タブにはチャートの代わりに次のステップが表示されます（例: 「Train a Model」「View Training」「Run Evaluations」「Update Evaluations」）。その場合、「Run Evaluations」と「Update Evaluations」が「Update All」に置き換わります。

評価のない NAS 子モデルは、その NAS トレーニングへのリンクになります。既存の評価がある NAS 子モデルは、評価の再試行フローを使用できます。

## HTTP API

1つの Dataset Version の比較を読み取ります。リクエストによって評価が開始または更新されることはありません。

{% openapi src="/files/bebfd3845252a9dac5933f79c254c410597bced1" path="/{workspace}/model-evals/compare" method="get" %}
[model-comparison.yaml](https://1194881119-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fcmo9mhfIjYrvFFy1U7dk%2Fuploads%2Fgit-blob-bbdbe3592227d8d51aae40bf59a6d1a879acd71a%2Fmodel-comparison.yaml?alt=media)
{% endopenapi %}

## Python SDK

同じ比較レスポンスを取得するには、Python SDK バージョン 1.5.1 以降を使用してください:

```python
comparison = workspace.compare_model_evaluations(
    "chess-pieces",
    131,
    frontier_metric="mAP5095",
)
```

各行の `modelId` を、安定したモデル参照として使用します。フロンティアを再構築するのではなく、サーバーの `onFrontier` の値を使用してください。

## CLI

使用してください `roboflow` バージョン 1.5.1 以降を使って、Project の Dataset Version を比較します:

```bash
roboflow --workspace my-workspace eval compare \
  --project chess-pieces \
  --version 131 \
  --frontier-metric mAP5095
```

追加で `--json` を付けると、表示の丸めなしで完全なレスポンスを返します。キーには `model-eval:read` スコープと Project アクセスが必要です。

## MCP

次を呼び出します `model_evals_compare` ツールを、Project のスラッグ、バージョン番号、および任意のフロンティアメトリクスとともに使用します:

```json
{
  "project_id": "chess-pieces",
  "version_number": 131,
  "frontier_metric": "mAP5095"
}
```

このツールは現在の Workspace を使用します。返された `onFrontier` 値を使ってトレードオフを説明してください。このツールはモデルを選択しません。
