Link to this sectionMeituan YOLOv6#
Link to this section概要#
Meituan YOLOv6, released in 2022, offers a strong balance between speed and accuracy, making it a popular choice for real-time applications. This model introduces several notable enhancements on its architecture and training scheme, including the implementation of a Bi-directional Concatenation (BiC) module, an anchor-aided training (AAT) strategy, and an improved backbone and neck design for high accuracy on the COCO dataset.
YOLOv6の概要 大幅なパフォーマンス向上をもたらした、再設計されたネットワークコンポーネントとトレーニング戦略を示すモデルアーキテクチャ図。(a) YOLOv6のネック(NおよびSを表示)。M/Lの場合、RepBlocksがCSPStackRepに置き換えられる点に注意してください。(b) BiCモジュールの構造。(c) SimCSPSPPFブロック。(ソース)。
Link to this section主な特徴#
- 双方向連結 (BiC) モジュール: YOLOv6は、検出器のネックにBiCモジュールを導入することで、ローカリゼーション信号を強化し、速度をほとんど低下させることなくパフォーマンスを向上させています。
- アンカー補助トレーニング (AAT) 戦略: このモデルは、推論効率を損なうことなく、アンカーベースとアンカーフリーの両方のパラダイムの利点を享受するためにAATを提案しています。
- 強化されたバックボーンおよびネック設計: バックボーンとネックにもう一つのステージを追加することでYOLOv6を深層化した結果、リリース時点で高解像度入力においてCOCOデータセット上で強力なパフォーマンスを達成しました。
- 自己蒸留戦略: YOLOv6の小型モデルのパフォーマンスを向上させるために、新しい自己蒸留戦略が実装されています。これによりトレーニング中に補助回帰ブランチを強化し、推論時には速度の著しい低下を避けるためにそれを削除します。
Link to this section性能メトリクス#
YOLOv6は、さまざまなスケールの事前学習済みモデルを提供しています:
- YOLOv6-N: NVIDIA T4 GPUを使用し、1187 FPSでCOCO val2017において37.5% AP。
- YOLOv6-S: 484 FPSで45.0% AP。
- YOLOv6-M: 226 FPSで50.0% AP。
- YOLOv6-L: 116 FPSで52.8% AP。
- YOLOv6-L6: リアルタイムにおいて最高水準の精度。
YOLOv6は、さまざまな精度に対応した量子化モデルや、モバイルプラットフォーム向けに最適化されたモデルも提供しています。
Link to this section使用例#
この例では、シンプルなYOLOv6のトレーニングおよび推論の例を提供します。これらおよびその他のモードに関する完全なドキュメントについては、Predict、Train、Val、およびExportのドキュメントページを参照してください。
YOLOv6の *.yaml ファイルを YOLO() クラスに渡すことで、Pythonで対応するモデルを構築できます:
from ultralytics import YOLO
# Build a YOLOv6n model from scratch
model = YOLO("yolov6n.yaml")
# Display model information (optional)
model.info()
# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference with the YOLOv6n model on the 'bus.jpg' image
results = model("path/to/bus.jpg")Link to this sectionサポートされるタスクとモード#
YOLOv6シリーズは、それぞれが高性能な物体検出向けに最適化された一連のモデルを提供します。これらのモデルは、さまざまな計算ニーズと精度要件に対応しており、幅広いアプリケーションにおいて汎用性が高くなっています。
| モデル | ファイル名 | タスク | 推論 | バリデーション | トレーニング | エクスポート |
|---|---|---|---|---|---|---|
| YOLOv6-N | yolov6n.yaml | オブジェクト検出 | ✅ | ✅ | ✅ | ✅ |
| YOLOv6-S | yolov6s.yaml | オブジェクト検出 | ✅ | ✅ | ✅ | ✅ |
| YOLOv6-M | yolov6m.yaml | オブジェクト検出 | ✅ | ✅ | ✅ | ✅ |
| YOLOv6-L | yolov6l.yaml | オブジェクト検出 | ✅ | ✅ | ✅ | ✅ |
| YOLOv6-X | yolov6x.yaml | オブジェクト検出 | ✅ | ✅ | ✅ | ✅ |
この表は、YOLOv6モデルのバリエーションの概要を詳しく示しており、物体検出タスクにおける能力や、推論、検証、トレーニング、エクスポートなどのさまざまな操作モードとの互換性を強調しています。この包括的なサポートにより、ユーザーは幅広い物体検出シナリオでYOLOv6モデルの能力を最大限に活用できます。
Link to this section引用と謝辞#
リアルタイム物体検出の分野への多大な貢献に対し、著者らに敬意を表します:
@misc{li2023yolov6,
title={YOLOv6 v3.0: A Full-Scale Reloading},
author={Chuyi Li and Lulu Li and Yifei Geng and Hongliang Jiang and Meng Cheng and Bo Zhang and Zaidan Ke and Xiaoming Xu and Xiangxiang Chu},
year={2023},
eprint={2301.05586},
archivePrefix={arXiv},
primaryClass={cs.CV}
}オリジナルのYOLOv6論文はarXivで確認できます。著者らは彼らの成果を公開しており、コードベースはGitHubからアクセス可能です。私たちは、この分野の進歩と、より広範なコミュニティが彼らの研究を利用できるようにした彼らの努力に感謝いたします。
Link to this sectionよくある質問 (FAQ)#
Link to this sectionMeituan YOLOv6とは何であり、何がユニークなのですか?#
2022年にリリースされたMeituan YOLOv6は、速度と精度のバランスを取り、リアルタイムアプリケーション向けに設計された物体検出器です。これには、双方向連結 (BiC) モジュールやアンカー補助トレーニング (AAT) 戦略といった注目すべきアーキテクチャの強化が含まれています。これらのイノベーションにより、速度をほとんど低下させることなく大幅なパフォーマンス向上が実現され、YOLOv6は物体検出タスクにおいて競争力のある選択肢となっています。
Link to this sectionYOLOv6の双方向連結 (BiC) モジュールはどのようにパフォーマンスを向上させますか?#
YOLOv6の双方向連結 (BiC) モジュールは、検出器のネックにおけるローカリゼーション信号を強化し、速度への影響を最小限に抑えながらパフォーマンスを向上させます。このモジュールは異なる特徴マップを効果的に組み合わせることで、モデルが正確に物体を検出する能力を高めます。YOLOv6の機能の詳細については、主要な機能セクションを参照してください。
Link to this sectionUltralyticsを使用してYOLOv6モデルをトレーニングするにはどうすればよいですか?#
Ultralyticsを使用してYOLOv6モデルをトレーニングするには、シンプルなPythonまたはCLIコマンドを使用できます。例:
from ultralytics import YOLO
# Build a YOLOv6n model from scratch
model = YOLO("yolov6n.yaml")
# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)詳細については、Trainページにアクセスしてください。
Link to this sectionYOLOv6にはどのようなバージョンがあり、そのパフォーマンスメトリクスは何ですか?#
YOLOv6には複数のバージョンがあり、それぞれが異なるパフォーマンス要件に合わせて最適化されています:
- YOLOv6-N: 1187 FPSで37.5% AP
- YOLOv6-S: 484 FPSで45.0% AP
- YOLOv6-M: 226 FPSで50.0% AP
- YOLOv6-L: 116 FPSで52.8% AP
- YOLOv6-L6: リアルタイムシナリオにおいて最高水準の精度
これらのモデルは、NVIDIA T4 GPUを使用してCOCOデータセットで評価されています。パフォーマンスメトリクスの詳細については、パフォーマンスメトリクスセクションを参照してください。
Link to this sectionアンカー補助トレーニング (AAT) 戦略はどのようにYOLOv6に利益をもたらしますか?#
YOLOv6のアンカー補助トレーニング (AAT) は、アンカーベースおよびアンカーフリーアプローチの要素を組み合わせ、推論効率を損なうことなくモデルの検出能力を強化します。この戦略はトレーニング中にアンカーを活用してバウンディングボックスの予測を改善し、さまざまな物体検出タスクにおいてYOLOv6を効果的なものにしています。
Link to this sectionUltralyticsのYOLOv6モデルでは、どの操作モードがサポートされていますか?#
YOLOv6は、推論、検証、トレーニング、エクスポートなど、さまざまな操作モードをサポートしています。この柔軟性により、ユーザーはさまざまなシナリオでモデルの機能を最大限に活用できます。各モードの詳細な概要については、サポートされているタスクとモードセクションを確認してください。