> 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/xue-xi/train-a-model.md).

# モデルを学習する

Roboflow ダッシュボードで最先端技術を使ってモデルを学習します。

## 概要

Roboflow のインターフェースでコンピュータビジョンモデルをトレーニングできます。

Roboflow では 2 つのトレーニングオプションを提供しています：

* Roboflow Custom Train: 本番環境対応モデルの作成に最適な、当社の主力トレーニングサービスです。
* [ニューラルアーキテクチャ探索](/models/ja/xue-xi/neural-architecture-search.md): 新しいモデルアーキテクチャを見つけ出し、同時に微調整します。

また、最初の画像アノテーションのバッチを承認すると、 **Roboflow Instant Model** が自動的にトレーニングされます。これらのモデルは、すぐに自動ラベリングやデプロイに使用できます。

Roboflow でトレーニングされたモデルは、オンデバイス推論サーバーである Inference、または Serverless Cloud API を使用してクラウド上で、Workflows、Workflows を使ったバッチ処理、あるいはモデルの API エンドポイントを通じてデプロイできます。

{% hint style="info" %}
こちらをご覧ください [ライセンスに関するガイダンス](https://roboflow.com/licensing) を読んで、Roboflow でトレーニングされたモデルのライセンスについて詳しく学んでください。
{% endhint %}

## Webアプリ

### モデルをトレーニング

コンピュータビジョンモデルをトレーニングするには、プロジェクトのナビゲーションで「Train」を開いてください。

<figure><img src="https://1194881119-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fcmo9mhfIjYrvFFy1U7dk%2Fuploads%2Fgit-blob-2d1f17a9d0b43e75da368beb4042aae04ffb3c74%2Fimage%20(469).png?alt=media" alt=""><figcaption></figcaption></figure>

「Custom Training」ボタンをクリックして、トレーニングジョブの設定を開始します：

<figure><img src="https://1194881119-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fcmo9mhfIjYrvFFy1U7dk%2Fuploads%2Fgit-blob-1be2ba90f2fff0ea791352cb97bf033c4215651e%2Fimage%20(470).png?alt=media" alt=""><figcaption></figcaption></figure>

#### ニューラルアーキテクチャ探索 (NAS)

物体検出およびインスタンスセグメンテーションのプロジェクトでは、 **ニューラルアーキテクチャ探索 (NAS)** 単一のモデルアーキテクチャを選択する代わりに使用できます。NAS は複数のモデル構成を自動的にトレーニングして評価し、精度とレイテンシの要件に基づいて最適なものを提案します。

NAS を使用するには、トレーニングエンジンを選択する際に NAS オプションを選んでください。NAS には少なくとも 15 枚の検証画像が必要です。

NAS のトレーニングチャートの詳細については、 [トレーニング結果を表示](/models/ja/ping-si/training-results.md#nas-training-charts).

#### モデルアーキテクチャを選択

次に、モデルアーキテクチャとサイズを選択する必要があります。これは、モデルのトレーニングに使用される機械学習技術です。

トレーニングできるモデルアーキテクチャは、設定したプロジェクトの種類によって異なります。 [対応モデル一覧](/models/ja/supported-models.md) を参照して、トレーニング互換性の詳細を確認してください。

物体検出では RF-DETR が最も高い精度を提供します。インスタンスセグメンテーションでは RF-DETR Seg (プレビュー) が最も高い精度を提供します。キーポイント検出では RF-DETR Keypoint (プレビュー) も利用できます。

モデルサイズは、選択したモデルのアーキテクチャによって異なります。たとえば、最先端の物体検出モデルである RF-DETR には Nano、Small、Medium、Base があります。Medium、Large、Extra Large は有料ユーザーのみ利用できます。 [SAM3](/models/ja/supported-models/sam3.md) モデルのトレーニングは、 [従量課金](https://docs.roboflow.com/platform/billing-and-plans/credits)を含む有料プランで利用できます。そこから、SAM3 はアーキテクチャ一覧に「機能をリクエスト」ボタン付きで表示され、アクセス権を取得できます。

プロジェクトの種類で利用可能なアーキテクチャを選び、「Continue」をクリックします：

<figure><img src="https://1194881119-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fcmo9mhfIjYrvFFy1U7dk%2Fuploads%2Fgit-blob-08cf55061739c4354386d454051aaa68ffbf5b02%2Fimage%20(472).png?alt=media" alt=""><figcaption></figcaption></figure>

#### チェックポイントを選択

トレーニングオプションを選択した後、チェックポイントからトレーニングするかどうかを尋ねられます。以下のタブには、各モデルタイプの設定オプションが表示されます。

{% tabs %}
{% tab title="物体検出" %}
3 つのオプションがあります：

* **以前のチェックポイントからトレーニング：** すでに動作するモデルがあり、それを改善したい場合に最適です。
* **公開チェックポイントからトレーニング：** 最初のモデルに最適、または以前のトレーニング実行で期待した結果が得られなかった場合に最適です。
* **ランダム初期化からトレーニング：** **上級ユーザー向け**のオプションで、トレーニングのための白紙の状態から始められます。ほとんどのユーザーはこのオプションを使うと結果が悪化します。
  {% endtab %}

{% tab title="分類/セマンティックセグメンテーション" %}
分類およびセマンティックセグメンテーションのモデルでは、利用できるチェックポイントは 1 つだけです。
{% endtab %}
{% endtabs %}

<details>

<summary>どのトレーニングオプションを選べばよいですか？</summary>

新しい物体検出プロジェクトでは、公開チェックポイントからのトレーニングをおすすめします。デフォルトでは、Microsoft COCO データセットでトレーニングされたモデルからのトレーニングを提供しています。分類とセマンティックセグメンテーションでは、ImageNet からのトレーニングのみサポートしています。

Universe でホストされているプロジェクトに基づくチェックポイントからトレーニングできます（物体検出のみ）。その場合は、まず [Universe でプロジェクトにスターを付けてください](https://blog.roboflow.com/launch-universe-model-checkpoint/)。すると、そのプロジェクトは Roboflow の Web アプリケーション内でトレーニングチェックポイントとして利用可能になります。

さらに、モデルの以前のバージョンに基づくチェックポイントからトレーニングすることもできます（物体検出、インスタンスセグメンテーション、キーポイント検出のみ）。この方法では、より高速なトレーニングプロセスが可能です。モデルの性能が十分高い場合に限り、以前のチェックポイントからのトレーニングをおすすめします。

チェックポイントからのトレーニングとは、 [転移学習](https://blog.roboflow.com/what-is-transfer-learning/)を利用することを意味します。転移学習では、選択したモデルからトレーニングを開始します。これにより、トレーニング時間を短縮し、トレーニングスコアを向上させることができます。

スクラッチからのトレーニングとは、 *転移学習を* 利用しないことを意味します。これにより、モデルの重みはランダムな初期値でトレーニングが開始されます。

</details>

#### クレジット上限を設定

1 回のトレーニングで消費できるクレジット数を制限できます。トレーニングオプションの「Credit Cap」に数値を入力するか、上限なしで実行するには空欄のままにしてください。上限を設定するには、 [従量課金](https://docs.roboflow.com/platform/billing-and-plans/credits).

実行が上限に達すると、Roboflow はそれを停止し、モデルの重みを保持します。これは [トレーニングを早期停止する](/models/ja/xue-xi/cancel-a-training-job.md)のと同じです。ジョブの実行中は、トレーニング画面に上限クレジットのうちどれだけ使用したかが表示されます。

各モデルには最小上限があり、入力欄の下に表示されます。最小値は、モデルを生成できる最短実行のコストであるため、より小さい上限は拒否されます。コスト見積もりを下回る上限は許可されますが、実行は完了前に停止する可能性があります。

[ニューラルアーキテクチャ探索](/models/ja/xue-xi/neural-architecture-search.md) ではトレーニングとアーキテクチャ検索を別々に課金するため、上限は 2 つあります：「Training Credit Cap」と「Search Credit Cap」です。どちらか一方を設定すると、もう一方のフェーズは上限なしになります。

上限付きの実行がクレジットを余らせて停止した場合、その続きを実行できます。新しい実行では、上限内で残りの分を使えます。残りがモデルの最小値より少ない場合は、代わりに新しいトレーニングを開始してください。

#### トレーニングジョブを開始

トレーニングに使うチェックポイントを選択したら、「Start Training」をクリックします。

その後、データセットは zip 化され、Roboflow クラウドでのトレーニング用に準備されます。

トレーニング開始前に、トレーニング概要に推定所要時間とクレジットコストが表示されます：

<figure><img src="https://1194881119-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fcmo9mhfIjYrvFFy1U7dk%2Fuploads%2Fgit-blob-18d9396cb8b4f7bf0e73319da14e3cb287251177%2FScreenshot%202025-05-14%20at%2014.12.53.png?alt=media" alt=""><figcaption></figcaption></figure>

データセットが大きいほど、またデータセット内の画像が大きいほど、モデルのトレーニングにはより長い時間がかかります。

トレーニングプロセスが完了するとメールが届きます。ほとんどの場合、24 時間以内です。

#### 料金

Roboflow でのトレーニング料金は、トレーニングジョブの実行時間に基づきます。詳細は [クレジットページ](https://www.roboflow.com/credits).

をご覧ください。 [追加クレジットを申請する](https://roboflow.com/contribute).

### Agent からトレーニング

同じトレーニング実行を [Roboflow Agent](https://docs.roboflow.com/agents/roboflow-agent) から、チャットを離れずに開始できます。Agent でプロジェクトタブを開き、「Train」をクリックします。トレーニング手順はタブ内で開きます。トレーニングエンジンを選び、次にアーキテクチャとサイズを選び、最後にデータセットのバージョンを選択します。

選んだバージョンがまだエクスポートされていない場合、Agent が先にエクスポートを準備し、その進行状況を表示します。エクスポートの準備ができるとトレーニングが開始されます。プロジェクトにバージョンがない場合は、同じ画面から作成できます。

Agent にチャットでモデルのトレーニングを依頼すると、確認を求める前に、その設定に対する推定所要時間とクレジットコストが表示されます。トレーニングは途中で終了することが多いため、Agent は通常コストと、全エポックにわたるフル実行のコストを並べて表示します。確認するまでは何も開始されず、実行開始前にフル実行の見積もりが変わった場合、Agent は停止して新しい数値の確認を求めます。

この方法でトレーニングするには、Train Model と List Versions の権限が必要です。

### 1 つのバージョンで複数のモデルをトレーニング

同じデータセットバージョン上で複数のモデルをトレーニングし、同一データに対するアーキテクチャやサイズを比較できます。各トレーニングは個別に実行・評価され、バージョンページにはすべてのトレーニングが一覧表示されるため、切り替え可能です。

## HTTP API

プロジェクトに生成済みのデータセットバージョンがある場合、ホスト済みモデルを作成するトレーニングジョブをスケジュールできます。

### トレーニングジョブを開始

データセットバージョン上でトレーニング実行を開始します。データセットバージョンは URL パスの一部です。

```url
POST https://api.roboflow.com/:workspace/:project/:version/train
```

**本文**

<table data-search="false"><thead><tr><th width="180">名前</th><th width="140">型</th><th>説明</th><th data-type="checkbox">必須</th></tr></thead><tbody><tr><td><code>model_type</code></td><td>string</td><td>アーキテクチャ識別子（例： <code>rfdetr-nano</code>, <code>yolov8</code>, <code>yolov11</code>）。無効な値を渡すと、エラーとして完全な一覧が返されます。</td><td>true</td></tr><tr><td><code>checkpoint</code></td><td>string</td><td>トレーニングを継続するための任意のチェックポイント。</td><td>false</td></tr><tr><td><code>epochs</code></td><td>integer</td><td>エポック数。</td><td>false</td></tr><tr><td><code>speed</code></td><td>string</td><td><code>fast</code> （デフォルト）または <code>accurate</code>. <code>accurate</code> は有料機能です。</td><td>false</td></tr><tr><td><code>trainingCreditCap</code></td><td>number</td><td>トレーニングが停止するまでに使用できる最大クレジット数。少なくともモデルの最小値以上である必要があります。</td><td>false</td></tr><tr><td><code>nasMiningCreditCap</code></td><td>number</td><td>NAS のアーキテクチャ探索が使用できる最大クレジット数。NAS モデルタイプでのみ有効です。</td><td>false</td></tr></tbody></table>

```bash
curl "https://api.roboflow.com/my-workspace/my-detector/3/train?api_key=$ROBOFLOW_API_KEY" \\
  -X POST \\
  -H "Content-Type: application/json" \\
  -d '{"model_type": "rfdetr-base"}'
```

トレーニングは非同期で実行されます。レスポンスが示すのは、ジョブがキューに入ったことだけで、完了したことではありません。進行状況を確認するには、 [トレーニング結果](/models/ja/ping-si/training-results.md) をポーリングするか、バージョンの `model` フィールドでトレーニング済みモデルが表示されるのを確認してください。

バージョンがまだトレーニング準備完了でない場合、リクエストは `400` を `code` と `remedy` フィールド付きで返します。remedy は修正方法を示すため、スクリプトやエージェントがメッセージを読む必要はありません： `rebalance` （画像数は十分だが、分割先が正しくない）、 `upload` （データセットにさらに画像が必要）、 `annotate` （画像にラベルが必要）、 `regenerate` （バージョン生成に失敗したため、新しいバージョンを生成する）、または `wait` （rebalance または生成がまだ実行中）。プラン制限など、データに関係しないエラーには remedy がありません。 `remedy`.

プラン制限は、Web アプリと同様にここでも適用されます。プランに要求したアーキテクチャが含まれていない場合、リクエストは `400` を返し、ジョブは開始されません： `nas_not_available_for_plan` は [NAS](/models/ja/xue-xi/neural-architecture-search.md) モデルタイプで、 `sam3_not_available_for_plan` は [SAM3](/models/ja/supported-models/sam3.md) モデルタイプです。

モデルの最小値を下回るクレジット上限、またはクレジット課金しないワークスペースでのいかなる上限も、 `400` をコード `invalid_credit_cap`付きで返します。エラーメッセージには最小値が示されます。

呼び出し元の API キーには `trainingJob:create` スコープが必要です。

## Python SDK

`Version.train()` は Roboflow プラットフォーム上でトレーニングをスケジュールします。呼び出しは、ジョブがキューに入った時点で返り、トレーニング自体は非同期で実行されます。

```python
import roboflow

rf = roboflow.Roboflow(api_key="YOUR_API_KEY")
project = rf.workspace().project("my-detector")

# 前処理と拡張を含むバージョンがまだない場合は作成します。
new_version = project.generate_version({
    "preprocessing": {
        "auto-orient": True,
        "resize": {"width": 640, "height": 640, "format": "Stretch to"},
    },
    "augmentation": {},
})
version = project.version(new_version)

# トレーニングをスケジュールします。
model = version.train(
    model_type="rfdetr-nano",   # 無効な値を渡すと、完全な一覧がエラーとして返されます
    checkpoint=None,             # 任意: 以前のチェックポイントから再開
    epochs=100,                  # 任意: デフォルトはモデルタイプによって異なります
    plot_in_notebook=False,      # トレーニング進行状況のプロットを表示（ノートブックのみ）
)
```

### パラメータ

* `model_type` (str) - アーキテクチャ識別子。一般的な値： `rfdetr-nano`, `rfdetr-base`, `yolov8`, `yolov11`。プロジェクトタイプに依存します。無効な値を渡すと、完全な一覧がエラーとして返されます。
* `speed` (str, optional) - `"fast"` （デフォルト）または `"accurate"`。正確なトレーニングは有料機能です。
* `checkpoint` (str, optional) - 再開元のチェックポイント ID。
* `epochs` (int, optional) - エポック数。デフォルトはモデルタイプによって異なります。
* `plot_in_notebook` (bool, デフォルト `False`) - トレーニング進行状況をインラインで表示します（ノートブックのみ）。

### トレーニング後

トレーニングが完了すると、 `Version`の `.model` プロパティがホスト済みモデルを返します：

```python
predictions = version.model.predict("photo.jpg", confidence=40, overlap=30).json()
```

こちらを参照 [画像でモデルを実行](https://docs.roboflow.com/deployment/roboflow-cloud/serverless-api#python-sdk) して、推論リファレンスの詳細をご確認ください。

## CLI

コマンドラインからモデルのトレーニングを開始できます。トレーニングは Roboflow のクラウドインフラ上で実行されます。

### コマンド

```bash
roboflow train start -p <project> -v <version> -t <model-type>
```

または、省略形を使用します（ `start`):

```bash
なしで）
```

#### roboflow train -p \<project> -v \<version> -t \<model-type>

| オプション             | 説明                                 |
| ----------------- | ---------------------------------- |
| `-p`, `--project` | プロジェクト ID（必須）                      |
| `-v`, `--version` | バージョン番号（必須）                        |
| `-t`, `--type`    | モデルタイプ、例： `yolov8n`, `rfdetr-nano` |
| `--checkpoint`    | トレーニングを再開するチェックポイント                |
| `--speed`         | トレーニング速度のプリセット                     |
| `--epochs`        | トレーニングエポック数                        |

### 例

特定のモデルタイプでトレーニングを開始します：

```bash
roboflow train start -p my-detector -v 3 -t yolov8n
```

チェックポイントから再開：

```bash
roboflow train start -p my-detector -v 3 -t yolov8n --checkpoint my-checkpoint
```

### JSON 出力

```bash
roboflow train start -p my-detector -v 3 -t yolov8n --json
```

```json
{
  "status": "training_started",
  "project": "my-detector",
  "version": 3
}
```

## MCP サーバー

AI エージェントを [MCP サーバー](https://docs.roboflow.com/agents/mcp-server) に接続すると、次のツールでモデルをトレーニングできます：

<table data-search="false"><thead><tr><th width="290">ツール</th><th>説明</th></tr></thead><tbody><tr><td><code>trainings_describe_recipe</code></td><td>モデルタイプのチューニングオプションを説明し、すぐに送信できるレシピを返します。</td></tr><tr><td><code>trainings_create</code></td><td>データセットバージョン上でトレーニング実行を開始します。</td></tr><tr><td><code>trainings_get</code></td><td>トレーニングのステータス、生成されたモデル、およびメトリクスを取得します。</td></tr><tr><td><code>trainings_list</code></td><td>データセットバージョン上のトレーニング実行を一覧表示します。</td></tr></tbody></table>

## 次のステップ

* [トレーニングジョブを停止またはキャンセル](/models/ja/xue-xi/cancel-a-training-job.md).
* モデルのパフォーマンスを確認し、トレーニング実行を比較します。こちらを参照してください。 [トレーニング済みモデルを評価](/models/ja/ping-si/evaluate-trained-models.md).
* モデルをデプロイするには [Serverless Cloud API](https://docs.roboflow.com/deployment/roboflow-cloud/serverless-api).
