ClearMLを使用したYOLO11のトレーニング:MLOpsワークフローの効率化
MLOpsは、現実世界の設定で機械学習モデルを作成およびデプロイする際のギャップを埋めます。効率的なデプロイメント、スケーラビリティ、および継続的な管理に焦点を当て、モデルが実際のアプリケーションで適切に機能するようにします。
Ultralytics YOLO11はClearMLと容易に統合でき、物体検出モデルのトレーニングと管理を効率化および強化します。このガイドでは、ClearMLのセットアップ、実験の管理、モデル管理の自動化、効果的なコラボレーションの方法について、統合プロセスを詳しく説明します。
ClearML
ClearMLは、機械学習のワークフローを自動化、監視、および調整するために巧みに設計された革新的なオープンソースのMLOpsプラットフォームです。その主な機能には、完全な実験の再現性のためのすべてのトレーニングおよび推論データの自動ロギング、簡単なデータ視覚化と分析のための直感的なWeb UI、高度なハイパーパラメータ最適化アルゴリズム、およびさまざまなプラットフォームでの効率的な展開のための堅牢なモデル管理が含まれます。
ClearMLを使用したYOLO11トレーニング
YOLO11とClearMLを統合してトレーニングプロセスを改善することで、機械学習ワークフローに自動化と効率性をもたらすことができます。
インストール
必要なパッケージをインストールするには、以下を実行します:
インストール
# Install the required packages for YOLO11 and ClearML
pip install ultralytics clearml
インストールプロセスに関する詳細な手順とベストプラクティスについては、YOLO11インストールガイドを必ずご確認ください。YOLO11に必要なパッケージのインストール中に問題が発生した場合は、よくある問題ガイドで解決策とヒントを参照してください。
ClearMLの設定
必要なパッケージをインストールしたら、次のステップはClearML SDKを初期化および構成することです。これには、ClearMLアカウントの設定と、開発環境とClearMLサーバー間のシームレスな接続に必要な認証情報の取得が含まれます。
まず、環境内でClearML SDKを初期化します。'clearml-init'コマンドはセットアッププロセスを開始し、必要な認証情報を求めます。
SDKの初期設定
# Initialize your ClearML SDK setup process
clearml-init
このコマンドを実行後、ClearMLの設定ページにアクセスしてください。右上隅に移動し、「Settings」を選択します。「Workspace」セクションに移動し、「Create new credentials」をクリックします。「Create Credentials」ポップアップに表示される認証情報を使用して、Jupyter NotebookまたはローカルのPython環境でClearMLを設定しているかどうかに応じて、指示に従って設定を完了します。
使用法
使用方法の説明に入る前に、Ultralyticsが提供するYOLO11モデルの範囲を必ず確認してください。これは、プロジェクトの要件に最適なモデルを選択するのに役立ちます。
使用法
from clearml import Task
from ultralytics import YOLO
# Step 1: Creating a ClearML Task
task = Task.init(project_name="my_project", task_name="my_yolov8_task")
# Step 2: Selecting the YOLO11 Model
model_variant = "yolo11n"
task.set_parameter("model_variant", model_variant)
# Step 3: Loading the YOLO11 Model
model = YOLO(f"{model_variant}.pt")
# Step 4: Setting Up Training Arguments
args = dict(data="coco8.yaml", epochs=16)
task.connect(args)
# Step 5: Initiating Model Training
results = model.train(**args)
コードの理解
上記の利用コードスニペットに示されている手順を理解しましょう。
ステップ1:ClearMLタスクの作成: ClearMLで新しいタスクが初期化され、プロジェクト名とタスク名が指定されます。このタスクは、モデルのトレーニングを追跡および管理します。
ステップ2:YOLO11モデルを選択する: model_variant
変数が'yolo11n'(YOLO11モデルの1つ)に設定されています。このバリアントは、追跡のためにClearMLに記録されます。
ステップ3:YOLO11モデルのロード: 選択されたYOLO11モデルは、UltralyticsのYOLOクラスを使用してロードされ、トレーニングの準備が整います。
ステップ4:学習引数を設定する: データセット(coco8.yaml
)と〜の数 エポックス (16
) は辞書にまとめられ、ClearMLタスクに接続されます。これにより、ClearML UIを介した追跡と潜在的な変更が可能になります。モデルのトレーニングプロセスとベストプラクティスの詳細については、こちらをご覧ください。 YOLO11モデルトレーニングガイド.
ステップ5:モデルの学習を開始する: モデルのトレーニングは、指定された引数で開始されます。トレーニングプロセスの結果は、以下に記録されます。 results
変数。
出力の理解
上記のサンプルコードを実行すると、次の出力が予想されます。
- 新しいClearMLタスクの作成を示す確認メッセージと、その一意のID。
- スクリプトコードが保存されていることを知らせる情報メッセージで、コードの実行が ClearML によって追跡されていることを示します。
- トレーニングの進捗状況を監視し、詳細なログを表示できる ClearML 結果ページへの URL リンク。
- YOLO11モデルと指定されたデータセットのダウンロードの進捗状況、およびモデルアーキテクチャとトレーニング構成の概要。
- TensorBoard、自動混合精度(AMP)、データセットの準備など、さまざまなトレーニングコンポーネントの初期化メッセージ。
- 最後に、トレーニングプロセスが開始され、モデルが指定されたデータセットでトレーニングされると、進捗状況が更新されます。トレーニング中に使用されるパフォーマンス指標の詳細については、パフォーマンス指標に関するガイドをお読みください。
ClearML結果ページの表示
使用コードスニペットの出力にあるClearMLの結果ページへのURLリンクをクリックすると、モデルのトレーニングプロセスの包括的なビューにアクセスできます。
ClearML Resultsページの主な特徴
-
リアルタイムメトリクストラッキング
- 損失、精度、検証スコアなどの重要なメトリクスが発生時に追跡します。
- タイムリーなモデルパフォーマンス調整のための即時フィードバックを提供します。
-
実験の比較
- 異なるトレーニング実行を並べて比較します。
- ハイパーパラメータ調整や、最も効果的なモデルを特定するために不可欠です。
-
詳細なログと出力
- 包括的なログ、メトリクスのグラフィカルな表現、およびコンソール出力にアクセスします。
- モデルの挙動をより深く理解し、問題解決に役立てます。
-
リソース使用率の監視
- CPU、GPU、メモリなどの計算リソースの使用率を監視します。
- トレーニング効率とコストを最適化するための鍵。
-
モデルアーティファクトの管理
- トレーニング済みモデルやチェックポイントなどのモデルアーティファクトを表示、ダウンロード、共有します。
- コラボレーションを強化し、モデルのデプロイと共有を効率化します。
ClearML Results Pageの表示に関する視覚的なウォークスルーについては、以下のビデオをご覧ください。
見る: ClearMLを使用したYOLO11 MLOps統合
ClearMLの高度な機能
ClearMLは、MLOpsエクスペリエンスを向上させるための高度な機能をいくつか提供しています。
リモート実行
ClearML のリモート実行機能は、異なるマシン上での実験の再現と操作を容易にします。インストールされたパッケージやコミットされていない変更などの重要な詳細をログに記録します。タスクがエンキューされると、ClearML Agent がそれをプルし、環境を再構築して実験を実行し、詳細な結果を報告します。
ClearML Agent のデプロイは簡単で、次のコマンドを使用してさまざまなマシンで実行できます。
clearml-agent daemon --queue QUEUES_TO_LISTEN_TO [--docker]
このセットアップは、クラウドVM、ローカルGPU、またはラップトップに適用できます。ClearML Autoscalersは、AWS、GCP、Azureなどのプラットフォームでのクラウドワークロードの管理を支援し、エージェントのデプロイを自動化し、リソース予算に基づいてリソースを調整します。
クローン、編集、およびエンキュー
ClearMLのユーザーフレンドリーなインターフェースにより、タスクの簡単なクローン作成、編集、およびエンキューが可能です。ユーザーは既存の実験をクローンし、UIを通じてパラメータやその他の詳細を調整し、実行のためにタスクをエンキューできます。この合理化されたプロセスにより、タスクを実行するClearMLエージェントは更新された構成を使用することが保証され、反復的な実験とモデルの微調整に最適です。
データセットのバージョン管理
ClearMLは、YOLO11のトレーニングワークフローとシームレスに統合する強力なデータセットバージョン管理機能も提供します。この機能を使用すると、次のことが可能になります。
- データセットをコードとは別にバージョン管理する
- 各実験に使用されたデータセットのバージョンを追跡
- 最新のデータセットバージョンに簡単にアクセスしてダウンロード
ClearML用にデータセットを準備するには、次の手順に従ってください。
- 標準的なYOLO構造(画像、ラベルなど)でデータセットを整理します
- 対応するYAMLファイルをデータセットフォルダのルートにコピーします。
-
ClearML Dataツールを使用してデータセットをアップロードします。
cd your_dataset_folder clearml-data sync --project YOLOv11 --name your_dataset_name --folder .
このコマンドは、ClearMLにバージョン管理されたデータセットを作成します。これは、トレーニングスクリプトで参照でき、再現性とデータへの容易なアクセスを保証します。
概要
このガイドでは、ClearML と Ultralytics' YOLO11 の統合プロセスについて説明しました。初期設定から高度なモデル管理まで、ClearML を活用して、機械学習プロジェクトにおける効率的なトレーニング、実験の追跡、ワークフローの最適化を行う方法を学びました。
使用方法の詳細については、ClearMLの公式ドキュメントをご覧ください。
さらに、Ultralytics統合ガイドページにアクセスして、Ultralyticsのより多くの統合と機能を探求してください。ここは、リソースと洞察の宝庫です。
よくある質問
Ultralytics YOLO11とClearMLを連携させるためのプロセスは何ですか?
Ultralytics YOLO11とClearMLの統合には、MLOpsワークフローを効率化するための一連のステップが含まれます。まず、必要なパッケージをインストールします。
pip install ultralytics clearml
次に、ClearML SDKをご使用の環境で初期化するには、次のコマンドを使用します。
clearml-init
次に、ClearML設定ページから取得した認証情報でClearMLを設定します。モデルの選択やトレーニング構成など、セットアッププロセス全体の詳細な手順については、YOLO11モデルトレーニングガイドを参照してください。
機械学習プロジェクトでUltralytics YOLO11とClearMLを連携させるべきなのはなぜですか?
ClearML を Ultralytics YOLO11 と共に使用すると、実験の追跡を自動化し、ワークフローを効率化し、堅牢なモデル管理を可能にすることで、機械学習プロジェクトが強化されます。ClearML は、リアルタイムのメトリクス追跡、リソース使用率の監視、および実験を比較するためのユーザーフレンドリーなインターフェースを提供します。これらの機能は、モデルのパフォーマンスを最適化し、開発プロセスをより効率的にするのに役立ちます。利点と手順の詳細については、MLOps 統合ガイドをご覧ください。
YOLO11 と ClearML の統合中に発生する一般的な問題をトラブルシューティングするにはどうすればよいですか?
YOLO11 と ClearML の統合中に問題が発生した場合は、解決策とヒントについて、一般的な問題に関するガイドを参照してください。一般的な問題としては、パッケージのインストールエラー、認証情報の設定、または構成の問題などが考えられます。このガイドでは、これらの一般的な問題を効率的に解決するための段階的なトラブルシューティング手順を提供します。
YOLO11モデルのトレーニング用にClearMLタスクを設定するにはどうすればよいですか?
YOLO11トレーニング用に ClearML タスクをセットアップするには、タスクの初期化、モデル バリアントの選択、モデルのロード、トレーニング引数の設定、そして最後にモデル トレーニングの開始を行います。以下に簡単な例を示します。
from clearml import Task
from ultralytics import YOLO
# Step 1: Creating a ClearML Task
task = Task.init(project_name="my_project", task_name="my_yolov8_task")
# Step 2: Selecting the YOLO11 Model
model_variant = "yolo11n"
task.set_parameter("model_variant", model_variant)
# Step 3: Loading the YOLO11 Model
model = YOLO(f"{model_variant}.pt")
# Step 4: Setting Up Training Arguments
args = dict(data="coco8.yaml", epochs=16)
task.connect(args)
# Step 5: Initiating Model Training
results = model.train(**args)
これらの手順の詳細な分析については、利用ガイドを参照してください。
ClearMLでYOLO11トレーニングの結果をどこで確認できますか?
ClearMLでYOLO11トレーニングスクリプトを実行した後、ClearMLの結果ページで結果を表示できます。出力には、ClearMLダッシュボードへのURLリンクが含まれており、メトリクスの追跡、実験の比較、リソースの使用状況の監視が可能です。結果の表示と解釈方法の詳細については、ClearMLの結果ページの表示に関するセクションをご覧ください。