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

ニューラルアーキテクチャ探索

最適なモデルアーキテクチャを自動的に探索し、同時にモデルを微調整します。

NAS results page showing a Pareto frontier of trained models plotted across latency and accuracy.
NASの結果ページには、速度と精度のパレートフロンティア上にある学習済みモデルがすべて表示されます。

Roboflowのニューラルアーキテクチャサーチ(NAS)は、データセット上で多数のモデルアーキテクチャを自動的に学習し、速度と精度のトレードオフ曲線に沿って最適な विकल्पを提示する強力な新機能です。従来のモデル学習戦略よりも1モデルあたりのコストを抑えつつ、選択肢となる多くのモデルを生成します。

説明されているように RF-DETRの論文で、このニューラルアーキテクチャサーチ戦略によってRF-DETRのSOTAモデルアーキテクチャが生み出されました。Roboflowはこの戦略をすべてのRoboflowユーザーに提供し、誰でも自分のユースケース向けにSOTAモデルを作成できるようにしています。

ニューラルアーキテクチャサーチ:

  • データの特性に基づいて、あなたのユースケースに最も適したモデルアーキテクチャを特定します

  • そのアーキテクチャをあなたのデータで微調整します

  • 5,000以上の構成をテストし、各レイテンシーポイントで精度を最適化した10〜100個の学習済みモデルを生成します。

ニューラルアーキテクチャサーチを使うタイミング

本番投入するモデルを選ぶときは、NASを実行する価値はほぼ常にあります。パレートフロンティア上の各抽出モデルはすべてあなたのデータで完全に学習されているため、単にサイズを選ぶのではなく、特定のデプロイ先に最適な速度/精度のトレードオフを選ぶことになります。実際の顧客実行では、NASは同じレイテンシーで単一のRF-DETR Mediumの微調整を安定して上回り、しかも大きく上回ることも珍しくありません。

次のような場合はNASを使いましょう:

  • 与えられたレイテンシー予算でより高い精度が必要、または与えられた精度目標でより低いレイテンシーが必要な場合。

  • 本番向けのモデルを準備していて、速度/精度曲線に沿った選択肢を比較したい場合。

  • 代わりにハイパーパラメータ探索を実行するか、複数のモデルサイズを続けて学習させることになる場合。

  • 最先端の性能が必要な場合。

次のような場合はNASが過剰かもしれません:

  • ユースケースが単純で、「十分良い」モデルで足りる場合(例:明るい環境で人物を検出する)。探索的なプロジェクトや初期段階のプロジェクトでは、通常は単一の微調整が適切です。

  • 最大のRF-DETRチェックポイント(例:RF-DETR XXL)だけが欲しく、小さなトレードオフポイントには関心がない場合。

費用、クレジット、プランの利用可否

NASは、従量課金を含む有料のRoboflowプランすべてで利用できます。Trial、Free、PublicプランのユーザーはNASにアクセスできません。従量課金のない旧プランでは、NASを開始する前に有効化するよう求められます。

NASの実行料金はRoboflowの標準学習レートで請求されます - 学習時間30分あたり1クレジット - つまり他の学習ジョブと同じ時間単価です。1回の実行で数十個の学習済みモデルが生成されるため、コスト 1モデルあたり はそれぞれ個別に学習するより低くなりますが、1回のNASジョブ全体のクレジット消費は単一の微調整より高くなります。

目安となる一般的な範囲:

  • 約2,500枚の画像からなる物体検出データセットでは、一般的に約18時間(約36クレジット)かかります。

  • インスタンスセグメンテーションNAS は物体検出NASよりGPU負荷が高くなります。実行時間はおおよそ1.5〜2倍長くなると考えてください。

Train UIでは、開始前に推定時間とクレジット費用が表示されます。推定値が1日の学習時間を超える場合、ジョブ開始前に確認を求められます。

NASの実行では学習とアーキテクチャ探索が別々に課金されるため、それぞれに クレジット上限 を設定できます。学習フェーズだけに上限を設定すると探索には上限がなく、その逆も同様です。

NASとYOLO-NAS

ここで説明する「ニューラルアーキテクチャサーチ」エンジンは、 YOLO-NASとは異なります。YOLO-NASは、Roboflowのモデル一覧にも表示される、YOLOベースの単一アーキテクチャです。NASを使うためにアップグレードした場合は、Trainページで ニューラルアーキテクチャサーチ エンジンを選択していることを確認してください。YOLO-NASのモデルアーキテクチャではありません。

Roboflow NASは、バックボーンにより多くの世界知識を組み込んだRF-DETRを使うことで、より強力な基盤から始まります。そこからNASがデータセットに合わせてアーキテクチャを調整します。たとえば、あなたのデータがデコーダ層の少ないモデルに適しているなら、NASはそのアーキテクチャを自動的に発見して提供できます。

対応タスクと既知の制限事項

NASは現在、次をサポートしています:

  • 物体検出

  • インスタンスセグメンテーション

その他の現在の制限事項:

  • 生の重み(.pt, .onnxなど)は、サードパーティの推論サーバーで使うためにダウンロードできません。NASモデルはRoboflow Serverless Cloud API、Dedicated Deployments、Workflows、Batch Processing、およびセルフホストの Roboflow Inferenceで実行されます。NASの重みをダウンロードして実行するには、Roboflow Inferenceを推奨します。

  • NASで発見されたモデルの重みは、Roboflowの プラットフォームモデルライセンスの下でライセンスされており、有効な状態のRoboflowアカウントを保有している必要があります。

NAS学習実行を開始する

1

Trainタブを開き、ニューラルアーキテクチャサーチエンジンを選択します

プロジェクトのTrainタブを開き( https://app.roboflow.com/YOUR_WORKSPACE/YOUR_PROJECT_NAME/trainで)、「 ニューラルアーキテクチャサーチ エンジン」を選択します。

Train tab engine selector with Neural Architecture Search highlighted.
Trainタブでニューラルアーキテクチャサーチエンジンを選択します。
2

バックボーンを選択

複数のモデルバリアントがあるプロジェクトタイプ(例:物体検出にはFast、Standard、Plusがあります)では、続行する前にバックボーンを選択する必要があります。ユースケースに合うバリアントをクリックしてください。単一バリアントのプロジェクトタイプ(例:インスタンスセグメンテーション)では、自動的に選択されます。

3

データセットバージョンを選択または作成する

既存のデータセットバージョンを選ぶか、新しいものを作成してください。いくつかのヒント:

  • NAS学習用のデータセットにアノテーション拡張を追加することは推奨しません。

  • 検証データの分割には少なくとも 15枚の画像が必要です。NASは安定したパレートフロンティアを見つけるのに十分な検証データを必要とします。APIは検証画像が15枚未満の学習リクエストを拒否します。

Dataset version selector for a NAS training run.
NAS実行用のデータセットバージョンを選択または作成してください。
4

バックボーンを選択(物体検出のみ)

物体検出プロジェクトでは、3つのバックボーンオプションから選べます:

  • Fast - 最速の学習で、最も低レイテンシーのモデルを発見します。推論速度が最優先のCPUまたはエッジデプロイに最適です。

  • Standard - バランスの取れた学習時間で、広いレイテンシー範囲にわたるモデルを発見します。速度と精度のバランスを重視するエッジまたはGPUデプロイに最適です。

  • Plus - 最も高精度なモデルを発見します。レイテンシーより精度が重要なクラウドGPUデプロイに最適です。

インスタンスセグメンテーションプロジェクトでは単一のバックボーンを使用するため、この手順は省略されます。

5

学習を開始

クリックして 学習を開始 して実行を開始します。

Start Training button on the NAS configuration page.
設定ページからNAS実行を開始します。

NAS結果ページの読み方

NAS results page with purple dots representing trained models along the Pareto frontier.
紫の点は、それぞれデプロイ可能な完全に学習済みモデルを表します。

結果ページには、NASがあなたのデータで抽出して学習したすべてのモデルが、パレートフロンティア上にプロットされて表示されます。これは各レイテンシーポイントで発見された最良のモデルです。紫の点はそれぞれ、デプロイ可能な完全に学習済みモデルです。マイニングが進むにつれてフロンティアはリアルタイムで更新されるため、全実行が完了する前に候補の評価を始められます。

指標を選ぶ。 F1、mAP@50、mAP@50:95を切り替えて、あなたのユースケースで重要な指標に対してフロンティアを評価できます。指標によってフロンティア上に現れるモデルが異なることがありますが、それは想定内です。本番でモデルをどう評価するかに最も近い指標を選び、目標レイテンシーで最良のモデルを選んでください。多くのユースケースではF1を推奨します。

モデルにスターを付ける。 使いたいモデルにはスターを付けてください。スター付きモデルはWorkflowのモデルピッカーに表示され、スターなしのモデルは結果ページには残りますが、一覧をすっきり保つためピッカーには表示されません。スターは好きなだけ付けられ、外すこともできます。スター付けは無料で、元に戻せます。

スター付きモデルを使う。 他のRoboflowモデルと同じように、Workflow内のモデルブロックを使って選択します。

実行中にNASが表示するライブ学習チャート(Training Progress BandとEpoch Snapshotビュー)について詳しくは、 学習結果を表示.

NAS実行を停止する

NASジョブには2つのフェーズがあります - 学習マイニング - があり、同じジョブ内で連続して実行されます。停止する方法は2つあります:

  • 早期停止 (現在のフロンティアに満足している場合に推奨)。フェーズに応じて「学習を早期停止」または「マイニングを停止」をクリックします。その時点までに抽出されたモデルは保持され、デプロイできます。完了した作業に対して使用されたクレジットは請求されます。詳細は 学習ジョブを停止またはキャンセルする をご覧ください。

  • キャンセル (実行全体を破棄したい場合)。「学習をキャンセル」をクリックします。重みは保存されませんが、ジョブの早い段階でキャンセルした場合はクレジットが返金されます。詳細は 学習ジョブを停止またはキャンセルする.

NASの実行は、モデルが収束したとき、つまり対象エポックがすべて終了する前にピーク性能に達したときにも自動で停止します。これが起こると結果ページにバナーが表示されます。特に操作は不要です。

NASで発見されたモデルのデプロイ

NASで発見されたモデルは、他のRoboflowで学習したモデルと同じようにデプロイできます。次の場所で実行できます:

  • Roboflow Serverless Cloud API (下のコード例を参照)。

  • Dedicated Deployments 高いスループットや予約済みキャパシティ向け。

  • WorkflowsBatch Processing ビジョンパイプラインの構築と実行向け。

  • セルフホスト Roboflow Inference ご自身のハードウェア上で(Docker、エッジ、またはクラウド)。

Roboflow InferenceでNASモデルをローカル実行する

インストールして起動し、 Roboflow Inference をあなたのハードウェア上で実行し、その後 inference-sdkhttp://localhost:9001 に向けて、他のRoboflowモデルと同じようにNASモデルIDで呼び出します。下のコード例はホストされたエンドポイントとローカルのInferenceサーバーの両方で動作します。単に api_url.

Roboflow Serverless Cloud API

依存関係をインストールするには、 pip install inference-sdk.

LinuxまたはMacOS

という名前のローカルファイルのJSON予測を取得する your_image_path.png:

URLを介してWeb上の別の場所にホストされた画像で推論する(忘れずに URLエンコードしてください):

Node.js

これらの例では組み込みの fetch APIを使用しています。Node.js 18以降と最新のブラウザで動作するため、インストールする依存関係はありません。

ローカル画像で推論する

URL経由で他の場所にホストされた画像で推論する

最終更新

役に立ちましたか?