YOLO Vision 2026:
ガイド

野生動物を検出するようにUltralytics YOLOモデルをトレーニングする方法

African Wildlife Datasetを使用して野生動物を検出するようにYOLOモデルをトレーニングし、そのモデルを使用して未知の画像で推論を実行する方法を学びます。

ABAbirami Vina5 min read
野生動物を検出するようにUltralytics YOLOモデルをトレーニングする

地球上の野生生物は、ブンブンと飛び回るハチから巨大なゾウまで非常に多様であり、この生物多様性を守ることは生態系のバランスを維持するために不可欠です。しかし、生息地の喪失、密猟、気候変動により、保全活動はより困難になっています。これらの要因はすべて、野生生物の個体数に悪影響を及ぼしています。

カメラトラップ画像のの手動解析やフィールド調査の実施といった従来の動物モニタリング方法は、時間がかかり、多くのリソースを必要とします。これらの取り組みでは、広範囲や多数の個体を効果的にカバーできないことがよくあります。

これらの制限を克服するために、人工知能(AI)を野生生物保護における強力なツールとして活用できます。具体的には、Ultralytics YOLO11などのコンピュータビジョンモデルが画像や動画などの視覚データを解析し、動物のリアルタイムの識別と追跡を自動化します。

Ultralytics YOLO11 がサポートするオブジェクト検出やインスタンスセグメンテーションなどのコンピュータビジョンタスクは、ここで非常に役立ちます。視覚データを分析することで、これらのタスクは重要なデータの収集、生態学的パターンの特定、環境上の脅威へのより効果的な対応を支援します。

この記事では、動物を検出するように Ultralytics YOLO11 をトレーニングするプロセスについて順を追って説明します。それでは始めましょう!

Ultralytics YOLO11を始める#

チュートリアルに入る前に、Ultralytics YOLO11 のトレーニングと使用に必要なさまざまなセットアップオプションとツールを確認しましょう。

必要となる主なツールはUltralytics Python パッケージです。これにより、トレーニング、オブジェクト検出、推論の実行などのタスクでYOLOモデルを簡単に扱うことができます。Ultralytics パッケージを使用するには、コードを実行する環境を設定する必要があり、いくつかの選択肢から選ぶことができます。

以下は、開発環境をセットアップするための最も一般的なオプションです。

  • コマンドラインインターフェース(CLI): ターミナルとも呼ばれるCLIは、コマンドを入力してコンピュータと対話するためのテキストベースのツールです。ボタンをクリックしてマウスを使うグラフィカルインターフェース(GUI)とは異なり、CLIではプログラムを実行したりタスクを処理したりするためにテキスト命令を入力する必要があります。
  • Jupyter Notebooks: これらのノートブックでは、セルと呼ばれる小さな単位でコードを記述・実行できます。対話型であるため、コードの出力をすぐに確認でき、テストやデバッグが容易になります。
  • Google Colab: Google Colabは、Jupyter Notebooksのように動作しますが、強力なGPUへの無料アクセスを提供するクラウドベースのプラットフォームです。セットアップは簡単で、コンピュータに何もインストールする必要はありません。

公式 Ultralytics ドキュメントで確認できるその他の環境設定方法もありますが、前述の3つのオプションはセットアップの手間が非常に少なく、簡単に使用できるため、すばやく始めるのに最適です。

このチュートリアルでは、Google Colab、Jupyter Notebooks、またはシンプルな Python ファイルを使用して Ultralytics YOLO11 をセットアップおよびトレーニングする方法を紹介します。手順はこれらすべての環境で非常に似ているためです。

African Wildlife Datasetについて#

開発環境を選択したら、野生動物を具体的に検出するように Ultralytics YOLO11 をトレーニングするために、ラベル付けされた画像の高品質なデータセットが必要です。各画像は、モデルが教師あり学習を通じてそれらを認識できるように、動物の正確な位置とその種類を明確に示している必要があります。

このチュートリアルでは、アフリカ野生生物データセットを使用します。これは Ultralytics Python パッケージによってサポートされており、アフリカの生態系によく見られる動物の検出専用に設計されています。バッファロー、ゾウ、サイ、シマウマの4つの主要な種の注釈付き画像が含まれています。

アフリカ野生生物データセットのプレビュー

図 1 アフリカ野生生物データセットのプレビュー。

African Wildlife Datasetの主な特徴は以下の通りです。

  • スケール: データセットは1504枚の画像で構成され、トレーニング用に1052枚、検証用に225枚、テスト用に227枚の3つのサブセットに分かれています。この分割により、モデルが効果的に学習し、徹底的に評価されることが保証されます。
  • シームレスな統合: Ultralyticsは、データセットパス、クラス、その他の詳細を定義したYAML設定ファイルを提供しており、YOLOモデルのトレーニング時に簡単に使用できます。
  • オープンライセンス: このデータセットはAGPL-3.0ライセンスの下で配布されており、透明性とコラボレーションを促進しています。

動物検出のためのUltralytics YOLO11のトレーニング#

アフリカ野生動物データセットを確認しましたので、画像内の動物を検出する Ultralytics YOLO11 モデルのトレーニングを開始できます。このプロセスには、開発環境の設定、YOLO11 モデルのトレーニング、およびモデルのパフォーマンス評価が含まれます。

ステップ 1: 環境のセットアップ#

まず始めに、モデルのトレーニングとテストのための環境を準備します。お好みに応じて、Google Colab、Jupyter Notebooks、またはシンプルなPythonファイルを使用できます。それに応じて新しいGoogle Colabノートブック、Jupyter Notebook、またはPythonファイルを作成してください。

Google Colabを使用する場合、環境はデフォルトでCPU(中央処理装置)上で実行されるため、トレーニングが遅くなることがあります。プロセスを高速化するには、特に大規模なモデルの場合、ランタイムを切り替えてGPUを使用するようにします。Google Colabでは、メニューの「ランタイム」タブに移動し、「ランタイムの変更」を選択して、ハードウェアアクセラレータをGPU(できればT4 GPU)に設定できます。これはトレーニング時間を短縮するために重要です。

次に、どの環境を使用していても、Ultralytics Pythonパッケージをインストールする必要があります。ノートブックベースの環境(Google ColabまたはJupyter)を使用している場合は、先頭に感嘆符(!)を付けて以下のコマンドを実行してください。

pip install ultralytics

ステップ 2: Ultralytics YOLO11 のロードとデータセットの準備#

Ultralyticsパッケージがインストールされたら、次のステップはYOLO11モデルを読み込み、トレーニング用にデータセットを準備することです。まず、一般的な物体検出タスクで事前トレーニング済みのYOLO11モデルを読み込みます。この事前トレーニング済みモデルは、すでに様々な物体の検出方法を学習しているため、優れた出発点となります。

次に、画像とラベルに関する情報を含むYAMLファイルを使用してデータセットを指定します。このファイルは、データセットの場所と、認識するようにモデルが学習すべきオブジェクトをモデルに伝えます。

African Wildlife DatasetはUltralyticsパッケージによってサポートされているため、トレーニングを開始すると自動的にダウンロードされます。手動でセットアップする手間が省けます。

データセットの準備が整うと、モデルのトレーニングが開始されます。モデルは、画像内の動物を認識する能力を向上させるために、複数のエポックにわたるトレーニングと呼ばれるプロセスを通じてデータセットを数回処理します。このプロセス中、画像は処理しやすいように一貫したサイズにリサイズされ、モデルはバッチと呼ばれる特定の数の画像を一度に処理します。これにより、モデルはより効率的に学習できるようになります。

要するに、モデルが読み込まれ、データセットが自動的にダウンロードされ、以下のコードスニペットを実行すると、African Wildlife Datasetに基づいて動物を検出するためのトレーニングが開始されます。

from ultralytics import YOLO

model = YOLO("yolo11n.pt")
results = model.train(data="african-wildlife.yaml", epochs=30, batch=8)

ステップ 3: Ultralytics YOLO11 のトレーニング手順#

上記のコードスニペットが実行されると、指定した設定に基づいてモデルのトレーニングが開始されます。コードを通じてモデルにトレーニング画像を30回通過するように指示しました。つまり、モデルはデータセット内の全画像を30回確認し、そのたびに少しずつ学習していきます。

動物の描き方を学んでいるところを想像してください。最初に描いたときはうまく描けないかもしれませんが、何度も練習するうちに上達していきます。再挑戦するたびに、何が間違っていたのかを学んで修正します。それが、各エポックがモデルに対して行うことです。画像を見て、間違いから学び、毎回動物の認識が上手になります。

トレーニングコードが正常に実行されている場合、トレーニングの進行に伴い、以下の出力が表示されます。

  • トレーニング設定: 最初の部分には、使用されているUltralytics、PyTorch、ハードウェアのバージョン(この場合はCPU)が表示され、モデル(yolo11n.pt)、バッチサイズ、エポック数、画像サイズを含むトレーニング設定が示されます。
  • モデルサマリー: レイヤー数やパラメーター数など、モデルの複雑さに関する情報を提供し、モデルの規模を示します。
  • オプティマイザーと学習率: トレーニング中にモデルがパラメーターを調整する方法を制御するオプティマイザー(AdamWなど)と学習率について言及されています。
  • データセットスキャン: モデルはデータセットをスキャンし、有効でトレーニング可能な画像がいくつあるかを示します。これにより、データセットに問題がないことが確認されます。
  • トレーニングの進捗: 出力は各エポック(トレーニングサイクル)後に更新され、トレーニングの進捗と、モデルの学習状況を示す重要な損失値(box_loss, cls_loss, dfl_loss)が表示されます。
  • パフォーマンス指標: 各エポックの後、精度(precision)、再現率(recall)、mAP(平均適合率)などのパフォーマンス指標が表示されます。これらの値は、モデルが物体を検出および分類する際の正確さを示しています。
  • GPUメモリ使用量: GPUを使用している場合、出力にはハードウェアの利用状況を追跡するためのメモリ使用量が表示されます。

モデルのトレーニング実行時に表示される出力

Fig 2. モデルトレーニング実行時に表示される出力。

ステップ 4: カスタムトレーニング済みモデルのパフォーマンス評価#

トレーニングプロセスが完了したら、モデルのパフォーマンス指標を確認して検証できます。Google Colabでは、「runs」フォルダ、「detect」フォルダ、そして最後に「train」フォルダへと進むと、主要なパフォーマンス指標を表示するログが見つかります。

Python環境のユーザーの場合、トレーニング結果はデフォルトで現在の作業ディレクトリ内の「runs/train/」ディレクトリに保存されます。各トレーニング実行は新しいサブディレクトリ(runs/train/exp、runs/train/exp2など)を作成し、そこでトレーニングに関連するログやその他の出力を確認できます。

CLIを使用している場合は、「yolo settings」コマンドを使用することで、これらの結果や設定に簡単にアクセスできます。これにより、トレーニングログや実験の詳細に関連するパスやその他の設定を表示または変更できます。

ログの中には、モデルのトレーニングプロセスがどれほど順調に進んだかを確認できるグラフもいくつかあります。トレーニング完了後に作成されるこれらのグラフは、間違いが減り精度が向上したことで、モデルが時間とともに改善されたかどうかを示します。

それらはモデルの進捗を追跡し、トレーニング中に損失(モデルの予測と実際の値との差)がどのように減少し、精度がどのように向上したかを表示します。これは、モデルがどれだけ動物を認識するように学習したか、またトレーニング終了までにどれだけ向上したかを理解するのに役立ちます。

モデルを評価するために分析できるグラフの例

Fig 3. モデルを評価するために分析できるグラフの例。

主要なパフォーマンス評価指標#

また、モデルのパフォーマンスを評価するために使用できるいくつかの指標について詳しく見てみましょう。

  • 平均適合率(mAP): この指標は、異なる再現率レベルでの精度スコアを平均化することにより、すべてのクラスにわたって動物を検出するモデルの全体的な精度を測定します。
  • 精度(Precision): これは正しい検出の割合を表し、真陽性の検出数を、行われた検出の総数で割ることによって計算されます。
  • 再現率(Recall): 画像内の実際の動物のうち、モデルによって正しく特定された割合を示し、関連するすべてのインスタンスを捕捉する能力を反映しています。

これらの評価指標は、実際のアプリケーションで使用する前に、精度を向上させるためのモデルの微調整に役立ちます。

カスタムトレーニングした Ultralytics YOLO11 モデルを使用した推論の実行#

Ultralytics YOLO11 のトレーニングと評価が完了したら、それを使用して画像を分析し、推論を実行します。データセットのテスト画像またはさまざまなソースからの新しい画像を使用できます。

次のコードスニペットを使用して、テストデータセット内の画像に対してモデルを実行します。これにより、Ultralyticsライブラリから必要なモジュールがインポートされます。次に、結果ディレクトリに保存されている最適なモデルウェイトファイル(「best.pt」)へのパスを定義します。カスタムトレーニングされたYOLO11モデルは、これらのウェイトを使用して読み込まれます。

その後、African Wildlifeテストデータセット内の画像へのパスが設定されます。モデルがこの画像に適用されて物体検出が行われ、結果が生成され、出力(検出された物体や注釈など)が保存されます。

from ultralytics import YOLO, settings

best_model_path = results.save_dir / "weights/best.pt"
model = YOLO(best_model_path)
image_path = f"{settings['datasets_dir']}/african-wildlife/test/images/1 (168).jpg"
img_results = model(image_path, save=True)

以下に示す出力画像は、runs/detectディレクトリ内の「predict」フォルダーに保存されます。後続のテストでは、「predict2」、「predict3」などの新しいフォルダーが作成され、画像が保存されます。

テスト画像で微調整した Ultralytics YOLO11 モデルを使用して推論を実行している様子

図 4. テスト画像で微調整した Ultralytics YOLO11 モデルを使用して推論を実行している様子。

さまざまなソースからのテスト画像を試すには、以下のコードを使用できます。ここではPexelsの画像を使用しています。同じ画像またはその他の関連する画像を使用できます。

from ultralytics import YOLO

best_model_path = results.save_dir / "weights/best.pt"
model = YOLO(best_model_path)
img2_results = model("https://images.pexels.com/photos/18341011/pexels-photo-18341011/free-photo-of-elephant-and-zebras-in-savannah.png", save=True)

以下に示す出力画像は、適切なフォルダーに保存されます。

未見の画像で微調整した Ultralytics YOLO11 モデルを使用して野生動物を検出している様子

図 5. 未見の画像に対してファインチューニングされた Ultralytics YOLO11 モデルを使用して野生生物を検出。

野生生物保護のためのAI:実社会への応用#

Ultralytics YOLO11 などのモデルは、自動的に動物を検出し追跡することができ、さまざまな実用的なアプリケーションを可能にします。ここでは、ビジョン AI を使用して野生生物保全の取り組みを支援できる主要な分野のいくつかを紹介します。

  • 種モニタリング: ビジョンAIは、画像や動画などの視覚データを処理し、種を正確に識別し、個体数をカウントし、時間の経過に伴う移動を追跡するために使用できます。
  • スマートカメラアラート: 遠隔地では、コンピュータビジョンを使用して動物を継続的に分類し、リアルタイムのアラートを送信することで、野生生物当局が異常な動物の行動や人間と野生動物の衝突といった脅威に迅速に対応できるようにします。
  • 行動分析: ビジョンAIシステムは、移動、採餌習慣、社会的相互作用を監視することで、種間ダイナミクスに関する包括的な洞察を提供します。
  • 密猟防止: ビジョンAIを活用して、人間の無許可の立ち入りや密猟の兆候を検出し、機械学習や過去のデータを活用してリスクの高い場所を特定することができます。

重要なポイント#

Ultralytics YOLO11 のようなコンピュータビジョンモデルは、動物の検出と追跡を自動化することにより、野生生物保全において重要な役割を果たします。ビジョン AI を使用すると、さまざまなソースからの大量の画像や動画を処理できるため、正確な野生生物の評価を実行することが可能になります。

特にUltralytics YOLO11はリアルタイム物体検出に最適な選択肢であり、密猟防止監視、行動分析、生態系モニタリングなどのタスクに最適です。AI駆動型のモデルを保全活動に取り入れることで、種をよりよく保護し、生物多様性の追跡を改善し、絶滅の危機に瀕した野生生物を守るためのより情報に基づいた意思決定を行うことができます。

コミュニティに参加し、GitHub リポジトリを探索してコンピュータビジョンについて詳しく学びましょう。ソリューションページで医療分野におけるAI製造業におけるコンピュータビジョンに関連するその他のアプリケーションを見つけてください。Ultralytics ライセンスオプションを確認して、ビジョンAIを始めましょう。

Explore solutions

Real-time AI that works with your team

ロボティクスにおけるAI

Ultralytics YOLOモデルで、よりスマートなマシンを実現しましょう。ロボティクスにおけるビジョンAIは、自律航行、認識、物体追跡、リアルタイム制御を推進します。
詳細はこちら
Real-time AI that works with your team

物流におけるAI

Ultralytics YOLOモデルで物流を効率化しましょう。ビジョンAIにより、荷物の検査、仕分け、車両追跡、リアルタイムの倉庫安全モニタリングが可能になります。
詳細はこちら
Real-time AI that works with your team

小売業界におけるAI

Ultralytics YOLOモデルで小売を再定義しましょう。ビジョンAIは、在庫追跡、棚のモニタリング、キュー管理、そしてより賢明な顧客インサイトを促進します。
詳細はこちら
Real-time AI that works with your team

ヘルスケアにおけるAI

Ultralytics YOLOモデルを使用してヘルスケアソリューションを構築しましょう。ヘルスケア分野におけるビジョンAIは、より高速な医療画像診断、よりスマートな診断、患者モニタリングを推進します。
詳細はこちら
Real-time AI that works with your team

製造におけるAI

Ultralytics YOLOモデルで製造を最適化しましょう。ビジョンAIは、品質管理、欠陥検出、PPEコンプライアンス、組立ラインの自動化を促進します。
詳細はこちら
Real-time AI that works with your operation

自動車におけるAI

Ultralytics YOLOモデルを使用して、自動車分野にコンピュータビジョンを適用しましょう。ビジョンAIは、道路の安全性、運転支援、車両の自動化を向上させ、よりスマートな道路を実現します。
詳細はこちら
Real-time AI tailored to your operation

農業におけるAI

Ultralytics YOLOモデルを使用して、スマート農業にビジョンAIを導入しましょう。作物モニタリング、家畜のトラッキング、精密農業を強化し、より高くスマートな収穫を実現します。
詳細はこちら
Real-time AI that works with your team

ロボティクスにおけるAI

Ultralytics YOLOモデルで、よりスマートなマシンを実現しましょう。ロボティクスにおけるビジョンAIは、自律航行、認識、物体追跡、リアルタイム制御を推進します。
詳細はこちら
Real-time AI that works with your team

物流におけるAI

Ultralytics YOLOモデルで物流を効率化しましょう。ビジョンAIにより、荷物の検査、仕分け、車両追跡、リアルタイムの倉庫安全モニタリングが可能になります。
詳細はこちら
Real-time AI that works with your team

小売業界におけるAI

Ultralytics YOLOモデルで小売を再定義しましょう。ビジョンAIは、在庫追跡、棚のモニタリング、キュー管理、そしてより賢明な顧客インサイトを促進します。
詳細はこちら
Real-time AI that works with your team

ヘルスケアにおけるAI

Ultralytics YOLOモデルを使用してヘルスケアソリューションを構築しましょう。ヘルスケア分野におけるビジョンAIは、より高速な医療画像診断、よりスマートな診断、患者モニタリングを推進します。
詳細はこちら
Real-time AI that works with your team

製造におけるAI

Ultralytics YOLOモデルで製造を最適化しましょう。ビジョンAIは、品質管理、欠陥検出、PPEコンプライアンス、組立ラインの自動化を促進します。
詳細はこちら
Real-time AI that works with your operation

自動車におけるAI

Ultralytics YOLOモデルを使用して、自動車分野にコンピュータビジョンを適用しましょう。ビジョンAIは、道路の安全性、運転支援、車両の自動化を向上させ、よりスマートな道路を実現します。
詳細はこちら
Real-time AI tailored to your operation

農業におけるAI

Ultralytics YOLOモデルを使用して、スマート農業にビジョンAIを導入しましょう。作物モニタリング、家畜のトラッキング、精密農業を強化し、より高くスマートな収穫を実現します。
詳細はこちら
Real-time AI that works with your team

ロボティクスにおけるAI

Ultralytics YOLOモデルで、よりスマートなマシンを実現しましょう。ロボティクスにおけるビジョンAIは、自律航行、認識、物体追跡、リアルタイム制御を推進します。
詳細はこちら
Real-time AI that works with your team

物流におけるAI

Ultralytics YOLOモデルで物流を効率化しましょう。ビジョンAIにより、荷物の検査、仕分け、車両追跡、リアルタイムの倉庫安全モニタリングが可能になります。
詳細はこちら
Real-time AI that works with your team

小売業界におけるAI

Ultralytics YOLOモデルで小売を再定義しましょう。ビジョンAIは、在庫追跡、棚のモニタリング、キュー管理、そしてより賢明な顧客インサイトを促進します。
詳細はこちら
Real-time AI that works with your team

ヘルスケアにおけるAI

Ultralytics YOLOモデルを使用してヘルスケアソリューションを構築しましょう。ヘルスケア分野におけるビジョンAIは、より高速な医療画像診断、よりスマートな診断、患者モニタリングを推進します。
詳細はこちら
Real-time AI that works with your team

製造におけるAI

Ultralytics YOLOモデルで製造を最適化しましょう。ビジョンAIは、品質管理、欠陥検出、PPEコンプライアンス、組立ラインの自動化を促進します。
詳細はこちら
Real-time AI that works with your operation

自動車におけるAI

Ultralytics YOLOモデルを使用して、自動車分野にコンピュータビジョンを適用しましょう。ビジョンAIは、道路の安全性、運転支援、車両の自動化を向上させ、よりスマートな道路を実現します。
詳細はこちら
Real-time AI tailored to your operation

農業におけるAI

Ultralytics YOLOモデルを使用して、スマート農業にビジョンAIを導入しましょう。作物モニタリング、家畜のトラッキング、精密農業を強化し、より高くスマートな収穫を実現します。
詳細はこちら

AIの未来を共に築き上げましょう!

機械学習の未来とともに旅を始めましょう