Ultralytics YOLO27:
YOLOのライセンス
Ultralytics用語集に戻る

Diffusion Policies

拡散ポリシーは、観測に基づいてランダムノイズを除去することでロボットの動作を生成し、回帰による平均化では失われるマルチモーダルな振る舞いを維持します。

拡散方策は、拡散モデルが画像を生成するのと同じ方法で行動を生成するロボット制御方策です。ランダムノイズから始め、ロボットが現在観測している内容を条件として段階的にノイズを除去し、一連のモーター指令を得ます。人間のデモンストレーションで訓練する行動クローニングの一種であり、異なる方法を一つに平均化せず、複数の異なるタスク実行方法を表現できます。Columbia University、Toyota Research Institute、MITのCheng Chi、Shuran Songらは、2023年のRSSでDiffusion Policy: Visuomotor Policy Learning via Action Diffusionを発表しました。4つのロボティクス操作ベンチマークの12タスク全体で、従来の模倣学習手法を平均46.9%上回りました。

マルチモーダルなデモンストレーションで回帰が失敗する理由#

同じ観測に対して、人間のデモンストレーションには複数の有効な行動が含まれることがよくあります。ブロックを押す人は、あるデモンストレーションでは左から近づき、次のデモンストレーションでは右から近づく場合があり、障害物に直面したドライバーは左右どちらにも回避できます。平均二乗誤差の損失関数を使った回帰で訓練した方策は、これらの選択肢の平均を予測しますが、それは障害物に向かって直進するなど、デモンストレーターの誰も取らなかった行動になる可能性があります。従来の対策では、行動をビンに離散化したり、ガウス混合を適合させたり、Implicit Behavioral Cloningのようなエネルギーベースモデルを使ったりしましたが、後者は学習中に負例サンプルが必要で、不安定になることもよくありました。拡散モデルは任意の行動分布を表現でき、そのノイズ予測損失は通常の回帰と同じように安定して学習できます。

このPyTorchの例では、障害物を左右に回避するデモンストレーションを同数ずつ使って、小さな拡散方策を訓練します。

import torch
from torch import nn

torch.manual_seed(0)
# Demonstrations at one observation: facing an obstacle, experts steer left (-1) or right (+1) equally often
actions = torch.cat([torch.randn(500, 1) * 0.05 - 1, torch.randn(500, 1) * 0.05 + 1])
print(f"Regression policy (mean squared error) outputs: {actions.mean():.2f}")

# Diffusion policy: train a network to predict the noise mixed into an action at denoising step k
K, betas = 50, torch.linspace(1e-4, 0.2, 50)
alpha_bar = torch.cumprod(1 - betas, 0)
net = nn.Sequential(nn.Linear(2, 64), nn.SiLU(), nn.Linear(64, 64), nn.SiLU(), nn.Linear(64, 1))
optimizer = torch.optim.Adam(net.parameters(), lr=1e-3)
for _ in range(3000):
    k, noise = torch.randint(0, K, (1000, 1)), torch.randn(1000, 1)
    noisy = alpha_bar[k].sqrt() * actions + (1 - alpha_bar[k]).sqrt() * noise
    loss = (net(torch.cat([noisy, k / K], 1)) - noise).pow(2).mean()
    optimizer.zero_grad()
    loss.backward()
    optimizer.step()

# Sampling: start from pure noise and remove the predicted noise one step at a time
a = torch.randn(1000, 1)
with torch.no_grad():
    for k in reversed(range(K)):
        eps = net(torch.cat([a, torch.full_like(a, k / K)], 1))
        a = (a - betas[k] / (1 - alpha_bar[k]).sqrt() * eps) / (1 - betas[k]).sqrt()
        a += betas[k].sqrt() * torch.randn_like(a) if k > 0 else 0
print(
    f"Diffusion policy samples: {(a < -0.5).float().mean():.0%} steer left, {(a > 0.5).float().mean():.0%} steer right"
)

回帰方策は障害物に向かって直進する0.00を出力します。拡散方策のサンプルは左操舵が44%、右操舵が55%で、その2つのモードの間は約1%だけです。したがって、各サンプルは有効な操作方法のいずれかを選びます。

拡散ポリシーの仕組み#

学習では、デモンストレーションから行動系列を取り出し、100段階からランダムに選んだ時点でガウスノイズを混ぜます。そして、ノイズを加えた行動と観測からそのノイズを予測するようニューラルネットワークを訓練します。実行時には、ロボットが純粋なノイズから行動系列をサンプリングし、最新の観測を条件としてノイズを除去します。原論文では実機ロボットに10段階のDDIMノイズ除去を使い、NVIDIA RTX 3080 GPUで推論レイテンシ0.1秒を達成しました。

方策はチャンク単位で計画し、後退ホライズンループで再計画します。論文のほとんどのタスクでは、直近2タイムステップを観測して次の16行動を予測し、最初の8行動を実行してから、新しい観測を使って新たな系列のノイズを除去します。これにより、変化に対応しながら動作を滑らかに保ちます。

著者らはノイズ予測ネットワークを2種類構築しました。1つはFiLM条件付けで観測特徴を注入する1次元の時間方向畳み込みニューラルネットワークで、出発点として推奨されています。もう1つは、行動が急速に変化するタスク向けのTransformerです。カメラ画像はスクラッチから訓練したResNet-18に渡し、グローバル平均プーリングの代わりに空間ソフトマックスプーリングを、バッチ正規化の代わりにグループ正規化を使います。速度ではなく目標位置を予測する方が一貫して良い結果となり、レイテンシに対する方策の頑健性も高まりました。

方策はピクセルではなく低次元の状態を観測することもできます。ロボットがT字型ブロックを押して目標位置に移動させるPush-Tベンチマークでは、状態ベースのバリアントがブロック上の9個の2D キーポイントとエンドエフェクターの位置を観測します。カスタムキーポイントレイアウトで訓練したUltralytics YOLO26の姿勢推定モデルは、データセットYAMLのkpt_shapeで設定することで、カメラフレームからそのようなキーポイントをresult.keypoints.xy経由で返します。

より高速で大規模な後継手法#

ノイズ除去では行動チャンクごとにネットワークを複数回実行するため、後続研究の多くはリアルタイム推論を目指しています。Aaditya Prasadらが2024年に発表したConsistency Policyは、拡散方策を1回または数回のステップで実行できる一貫性モデルに蒸留し、推論を1桁高速化します。Yanjie Zeらが2024年に発表した3D Diffusion Policy (DP3)は、画像の代わりにコンパクトな点群を条件として使います。シミュレーションの72タスクの大半をデモンストレーション10件だけで処理し、実ロボットの4タスクでは各40件のデモンストレーションから85%の成功率を達成しました。

同じ手法は現在、ロボット基盤モデルにも使われています。Physical Intelligenceのπ0 (2024)は、拡散と近縁のフローマッチングで訓練した行動エキスパートを、30億パラメーターの視覚言語モデルに追加し、最大50 Hzでロボットを制御するための50行動のチャンクを生成します。Hugging FaceのオープンソースLeRobotライブラリは、身体性AI研究向けに、拡散方策とほかの模倣学習方策を実装しています。

  • アクションチャンク化: 1つの行動ではなく、将来の行動系列を予測します。拡散方策はノイズ除去によってチャンクを生成し、Action Chunking with Transformers (ACT)方策は条件付き変分オートエンコーダーで生成します。
  • 拡散フォーシング: 系列の各トークンに独自のノイズレベルを与えることで、1つの因果モデルがステップごとに展開し、目標に向けて計画できるようにします。記憶が必要なロボットタスクでは、記憶を持たない拡散方策が失敗した一方、拡散フォーシングは80%の確率で成功しました。
  • 拡散モデル: 段階的にノイズを加える過程を逆転させる方法を学ぶ生成モデルの一般的な系統で、画像、動画、音声の生成に使われます。拡散方策は、観測を条件とする行動上の拡散モデルです。

Explore solutions

スポーツにおけるコンピュータービジョン

スポーツにおけるコンピュータービジョン

Ultralytics YOLOが、選手やボールの追跡、パフォーマンス分析、コーチングへの知見、アスリートのリハビリを通じて、スポーツビジョンをどのように支えるかをご紹介します。
詳しく見る
航空画像向けコンピュータービジョン

航空画像向けコンピュータービジョン

Ultralytics YOLOを活用して、ドローンや航空画像をリアルタイムの知見に変換し、農業、水産養殖、環境モニタリング、自然保護、地理空間分析に役立てましょう。
詳しく見る
航空宇宙分野のコンピュータービジョン

航空宇宙分野のコンピュータービジョン

Ultralytics YOLOモデルで航空モニタリングにビジョンAIを導入しましょう。コンピュータービジョンソリューションで、ドローン、航空宇宙のワークフロー、環境保全、地理空間業界を支援します。
詳しく見る
セキュリティ分野のコンピュータービジョン

セキュリティ分野のコンピュータービジョン

Ultralytics YOLOモデルであらゆる施設を保護しましょう。ビジョンAIは、周辺監視、脅威検知、ナンバープレート認識、職場の安全管理を支援します。
詳しく見る
ロボティクス分野のコンピュータービジョン

ロボティクス分野のコンピュータービジョン

Ultralytics YOLOモデルで、よりスマートなマシンを実現しましょう。ロボティクスにおけるビジョンAIは、自律ナビゲーション、認識、物体追跡、リアルタイム制御を支援します。
詳しく見る
物流におけるコンピュータービジョン

物流におけるコンピュータービジョン

Ultralytics YOLOモデルで物流を効率化しましょう。ビジョンAIにより、荷物検査、仕分け、車両追跡、倉庫のリアルタイム安全監視を実現します。
詳しく見る
小売業におけるコンピュータービジョン

小売業におけるコンピュータービジョン

Ultralytics YOLOモデルで小売のあり方を変革しましょう。ビジョンAIにより、在庫追跡、棚の監視、行列管理、より高度な顧客インサイトを実現します。
詳しく見る
医療分野におけるコンピュータービジョン

医療分野におけるコンピュータービジョン

Ultralytics YOLOモデルで医療ソリューションを構築しましょう。医療分野のビジョンAIは、医用画像処理の高速化、より高度な診断、患者モニタリングを実現します。
詳しく見る
製造業におけるコンピュータービジョン

製造業におけるコンピュータービジョン

Ultralytics YOLOモデルで製造を最適化しましょう。ビジョンAIは、品質管理、欠陥検出、PPE準拠、組立ラインの自動化を推進します。
詳しく見る
自動車分野におけるコンピュータービジョン

自動車分野におけるコンピュータービジョン

Ultralytics YOLOモデルで自動車分野にコンピュータービジョンを導入しましょう。ビジョンAIは、道路の安全性、運転支援、車両の自動化を向上させ、よりスマートな道路を実現します。
詳しく見る
農業におけるコンピュータービジョン

農業におけるコンピュータービジョン

Ultralytics YOLOモデルでスマート農業にビジョンAIを導入しましょう。作物のモニタリング、家畜の追跡、精密農業を支援し、より高く効率的な収量を実現します。
詳しく見る
スポーツにおけるコンピュータービジョン

スポーツにおけるコンピュータービジョン

Ultralytics YOLOが、選手やボールの追跡、パフォーマンス分析、コーチングへの知見、アスリートのリハビリを通じて、スポーツビジョンをどのように支えるかをご紹介します。
詳しく見る
航空画像向けコンピュータービジョン

航空画像向けコンピュータービジョン

Ultralytics YOLOを活用して、ドローンや航空画像をリアルタイムの知見に変換し、農業、水産養殖、環境モニタリング、自然保護、地理空間分析に役立てましょう。
詳しく見る
航空宇宙分野のコンピュータービジョン

航空宇宙分野のコンピュータービジョン

Ultralytics YOLOモデルで航空モニタリングにビジョンAIを導入しましょう。コンピュータービジョンソリューションで、ドローン、航空宇宙のワークフロー、環境保全、地理空間業界を支援します。
詳しく見る
セキュリティ分野のコンピュータービジョン

セキュリティ分野のコンピュータービジョン

Ultralytics YOLOモデルであらゆる施設を保護しましょう。ビジョンAIは、周辺監視、脅威検知、ナンバープレート認識、職場の安全管理を支援します。
詳しく見る
ロボティクス分野のコンピュータービジョン

ロボティクス分野のコンピュータービジョン

Ultralytics YOLOモデルで、よりスマートなマシンを実現しましょう。ロボティクスにおけるビジョンAIは、自律ナビゲーション、認識、物体追跡、リアルタイム制御を支援します。
詳しく見る
物流におけるコンピュータービジョン

物流におけるコンピュータービジョン

Ultralytics YOLOモデルで物流を効率化しましょう。ビジョンAIにより、荷物検査、仕分け、車両追跡、倉庫のリアルタイム安全監視を実現します。
詳しく見る
小売業におけるコンピュータービジョン

小売業におけるコンピュータービジョン

Ultralytics YOLOモデルで小売のあり方を変革しましょう。ビジョンAIにより、在庫追跡、棚の監視、行列管理、より高度な顧客インサイトを実現します。
詳しく見る
医療分野におけるコンピュータービジョン

医療分野におけるコンピュータービジョン

Ultralytics YOLOモデルで医療ソリューションを構築しましょう。医療分野のビジョンAIは、医用画像処理の高速化、より高度な診断、患者モニタリングを実現します。
詳しく見る
製造業におけるコンピュータービジョン

製造業におけるコンピュータービジョン

Ultralytics YOLOモデルで製造を最適化しましょう。ビジョンAIは、品質管理、欠陥検出、PPE準拠、組立ラインの自動化を推進します。
詳しく見る
自動車分野におけるコンピュータービジョン

自動車分野におけるコンピュータービジョン

Ultralytics YOLOモデルで自動車分野にコンピュータービジョンを導入しましょう。ビジョンAIは、道路の安全性、運転支援、車両の自動化を向上させ、よりスマートな道路を実現します。
詳しく見る
農業におけるコンピュータービジョン

農業におけるコンピュータービジョン

Ultralytics YOLOモデルでスマート農業にビジョンAIを導入しましょう。作物のモニタリング、家畜の追跡、精密農業を支援し、より高く効率的な収量を実現します。
詳しく見る
スポーツにおけるコンピュータービジョン

スポーツにおけるコンピュータービジョン

Ultralytics YOLOが、選手やボールの追跡、パフォーマンス分析、コーチングへの知見、アスリートのリハビリを通じて、スポーツビジョンをどのように支えるかをご紹介します。
詳しく見る
航空画像向けコンピュータービジョン

航空画像向けコンピュータービジョン

Ultralytics YOLOを活用して、ドローンや航空画像をリアルタイムの知見に変換し、農業、水産養殖、環境モニタリング、自然保護、地理空間分析に役立てましょう。
詳しく見る
航空宇宙分野のコンピュータービジョン

航空宇宙分野のコンピュータービジョン

Ultralytics YOLOモデルで航空モニタリングにビジョンAIを導入しましょう。コンピュータービジョンソリューションで、ドローン、航空宇宙のワークフロー、環境保全、地理空間業界を支援します。
詳しく見る
セキュリティ分野のコンピュータービジョン

セキュリティ分野のコンピュータービジョン

Ultralytics YOLOモデルであらゆる施設を保護しましょう。ビジョンAIは、周辺監視、脅威検知、ナンバープレート認識、職場の安全管理を支援します。
詳しく見る
ロボティクス分野のコンピュータービジョン

ロボティクス分野のコンピュータービジョン

Ultralytics YOLOモデルで、よりスマートなマシンを実現しましょう。ロボティクスにおけるビジョンAIは、自律ナビゲーション、認識、物体追跡、リアルタイム制御を支援します。
詳しく見る
物流におけるコンピュータービジョン

物流におけるコンピュータービジョン

Ultralytics YOLOモデルで物流を効率化しましょう。ビジョンAIにより、荷物検査、仕分け、車両追跡、倉庫のリアルタイム安全監視を実現します。
詳しく見る
小売業におけるコンピュータービジョン

小売業におけるコンピュータービジョン

Ultralytics YOLOモデルで小売のあり方を変革しましょう。ビジョンAIにより、在庫追跡、棚の監視、行列管理、より高度な顧客インサイトを実現します。
詳しく見る
医療分野におけるコンピュータービジョン

医療分野におけるコンピュータービジョン

Ultralytics YOLOモデルで医療ソリューションを構築しましょう。医療分野のビジョンAIは、医用画像処理の高速化、より高度な診断、患者モニタリングを実現します。
詳しく見る
製造業におけるコンピュータービジョン

製造業におけるコンピュータービジョン

Ultralytics YOLOモデルで製造を最適化しましょう。ビジョンAIは、品質管理、欠陥検出、PPE準拠、組立ラインの自動化を推進します。
詳しく見る
自動車分野におけるコンピュータービジョン

自動車分野におけるコンピュータービジョン

Ultralytics YOLOモデルで自動車分野にコンピュータービジョンを導入しましょう。ビジョンAIは、道路の安全性、運転支援、車両の自動化を向上させ、よりスマートな道路を実現します。
詳しく見る
農業におけるコンピュータービジョン

農業におけるコンピュータービジョン

Ultralytics YOLOモデルでスマート農業にビジョンAIを導入しましょう。作物のモニタリング、家畜の追跡、精密農業を支援し、より高く効率的な収量を実現します。
詳しく見る

AIの未来を一緒に築きましょう!

機械学習の未来に向けた歩みを始めましょう