AzureMLクイックスタートのUltralytics YOLOv5 🚀
Microsoft Azure Machine Learning (AzureML) 向けのUltralytics YOLOv5クイックスタートガイドへようこそ!このガイドでは、仮想環境の作成からモデルを使用したトレーニングと推論の実行まで、AzureMLコンピューティングインスタンスでのYOLOv5のセットアップについて説明します。
Azure とは何ですか?
Azureは、Microsoftの包括的なクラウドコンピューティングプラットフォームです。コンピューティング能力、データベース、分析ツール、機械学習機能、およびネットワーキングソリューションを含む、広範なサービスを提供します。Azureを使用すると、組織はMicrosoftが管理するデータセンターを通じてアプリケーションとサービスを構築、デプロイ、および管理でき、オンプレミスインフラストラクチャからクラウドへのワークロードの移行を容易にします。
Azure Machine Learning (AzureML) とは何ですか?
Azure Machine Learning (AzureML) は、機械学習モデルの開発、トレーニング、およびデプロイのために設計された特殊なクラウドサービスです。データサイエンティストやあらゆるスキルレベルの開発者にとって適切なツールを備えた共同環境を提供します。主な機能には、自動化された機械学習 (AutoML)、モデル作成のためのドラッグアンドドロップインターフェース、およびMLライフサイクルをより細かく制御するための強力なPython SDKが含まれます。AzureMLは、予測モデリングをアプリケーションに組み込むプロセスを簡素化します。
前提条件
このガイドに従うには、有効な Azure サブスクリプション と AzureML ワークスペース へのアクセスが必要です。ワークスペースが設定されていない場合は、公式の Azure ドキュメント を参照して作成してください。
コンピュートインスタンスを作成
AzureMLのコンピュートインスタンスは、データサイエンティスト向けのマネージドクラウドベースのワークステーションを提供します。
- AzureMLワークスペースに移動します。
- 左側のペインで、Compute を選択します。
- Compute instancesタブに移動し、Newをクリックします。
- トレーニングまたは推論のニーズに基づいて、適切なCPUまたはGPUリソースを選択してインスタンスを構成します。
ターミナルを開く
コンピューティングインスタンスが起動したら、AzureML Studioから直接ターミナルにアクセスできます。
- 左側のペインのNotebooksセクションに移動します。
- 上部のドロップダウンメニューでコンピューティングインスタンスを見つけます。
- ファイルブラウザの下にある Terminal オプションをクリックして、インスタンスへのコマンドラインインターフェイスを開きます。
YOLOv5のセットアップと実行
それでは、環境をセットアップしてUltralytics YOLOv5を実行しましょう。
1. 仮想環境を作成します。
依存関係を管理するには、仮想環境を使用するのがベストプラクティスです。ここでは、AzureMLコンピュートインスタンスにプリインストールされているCondaを使用します。Condaの詳細なセットアップガイドについては、UltralyticsのCondaクイックスタートガイドを参照してください。
Conda環境を作成します(例: yolov5env
) を特定の python バージョンで作成し、アクティブ化します。
conda create --name yolov5env -y python=3.10 # Create a new Conda environment
conda activate yolov5env # Activate the environment
conda install pip -y # Ensure pip is installed
2. YOLOv5リポジトリをクローンします。
Git を使用して、GitHub から公式の Ultralytics YOLOv5 リポジトリをクローンします。
git clone https://github.com/ultralytics/yolov5 # Clone the repository
cd yolov5 # Navigate into the directory
# Initialize submodules (if any, though YOLOv5 typically doesn't require this step)
# git submodule update --init --recursive
3. 依存関係をインストールします。
に必要なpythonパッケージをインストールします。 requirements.txt
ファイルをインストールします。 ONNX モデルのエクスポート機能について。
pip install -r requirements.txt # Install core dependencies
pip install onnx > =1.12.0 # Install ONNX for exporting
4. YOLOv5タスクを実行します。
セットアップが完了すると、YOLOv5モデルの学習、検証、推論、およびエクスポートを実行できます。
-
学習は、COCO128のようなデータセットで行います。詳細はTraining Modeのドキュメントをご確認ください。
# Start training using yolov5s pretrained weights on the COCO128 dataset python train.py --data coco128.yaml --weights yolov5s.pt --img 640 --epochs 10 --batch 16
-
検証: 適合率、再現率、mAPなどの指標を使用して、トレーニングされたモデルのパフォーマンスを検証します。オプションについては、検証モードガイドを参照してください。
# Validate the yolov5s model on the COCO128 validation set python val.py --weights yolov5s.pt --data coco128.yaml --img 640
-
新しい画像またはビデオで推論を実行します。さまざまな推論ソースについては、予測モードのドキュメントをご覧ください。
# Run inference with yolov5s on sample images python detect.py --weights yolov5s.pt --source data/images --img 640
-
モデルをONNX、TensorRT、CoreMLなどのさまざまな形式にエクスポートして、デプロイメントに使用します。エクスポートモードガイドとONNX連携ページを参照してください。
# Export yolov5s to ONNX format python export.py --weights yolov5s.pt --include onnx --img 640
ノートブックの使用
インタラクティブな体験がお好みの場合は、AzureML Notebook内でこれらのコマンドを実行できます。Conda環境にリンクされたカスタムIPythonカーネルを作成する必要があります。
新しいIPythonカーネルを作成
コンピュートインスタンスのターミナルで次のコマンドを実行します。
# Ensure your Conda environment is active
# conda activate yolov5env
# Install ipykernel if not already present
conda install ipykernel -y
# Create a new kernel linked to your environment
python -m ipykernel install --user --name yolov5env --display-name "Python (yolov5env)"
カーネルを作成したら、ブラウザを更新してください。開くか、新規に .ipynb
notebookファイルで、右上にあるカーネルドロップダウンメニューから新しいカーネル("Python (yolov5env)")を選択します。
ノートブックセルでのコマンドの実行
-
pythonセル: pythonセル内のコードは、選択された設定を使用して自動的に実行されます。
yolov5env
カーネル -
Bashセル: シェルコマンドを実行するには、以下を使用します。
%%bash
セルの先頭に magic コマンドを入力してください。各 bash セル内で Conda 環境をアクティブにすることを忘れないでください。bash セルは、ノートブックのカーネル環境コンテキストを自動的に継承しないためです。%%bash source activate yolov5env # Activate environment within the cell # Example: Run validation using the activated environment python val.py --weights yolov5s.pt --data coco128.yaml --img 640
おめでとうございます! AzureML で Ultralytics YOLOv5 のセットアップと実行が正常に完了しました。さらに詳しく知りたい場合は、他のUltralytics 統合や詳細なYOLOv5 ドキュメントをご覧ください。分散トレーニングやエンドポイントとしてのモデルのデプロイなど、高度なシナリオについては、AzureML ドキュメントも役立つかもしれません。