Data Labeling
データラベリングでは、MLモデルの学習に必要なコンテキストを付与するため、未加工の画像、動画、テキストにタグを付けます。アノテーションとの違いを比較し、ラベルの種類とワークフローを解説します。
データラベリングとは、画像、ビデオフレーム、テキスト、音声などの生データを特定し、情報を伝えるタグやメタデータを追加してコンテキストを与える基本的なプロセスです。機械学習(ML)では、アルゴリズムは物理世界を本質的に理解できないため、導いてくれる「教師」が必要です。この指針は、教師あり学習で使用するラベル付きデータセットによって与えられます。ラベルはグラウンドトゥルースとして機能し、モデルが予測を目指す正解を表します。単純な分類器をトレーニングする場合も、Ultralytics YOLO26のような複雑なアーキテクチャをトレーニングする場合も、ラベルの正確さ、一貫性、品質がモデルの成否を主に左右します。
データラベリングとデータアノテーション#
日常会話では同じ意味で使われることが多い用語ですが、留意すべき微妙な違いがあります。「データラベリング」は一般に、データにカテゴリやタグを割り当てる広範な行為を指します(例: メールに「迷惑メール」というタグを付ける)。一方、データアノテーションは、コンピュータービジョン(CV)においてより具体的な意味で使われることが多く、バウンディングボックス、ポリゴン、キーポイントを使って物体を正確に区分します。ただし、ほとんどのMLオペレーション(MLOps)ワークフローでは、どちらの用語も高品質なトレーニングデータの作成を指します。
コンピュータービジョンにおける主な種類#
ラベリングの方法は、モデルが実行するタスクによって異なります。一般的な種類は次のとおりです。
- 画像分類: 画像全体に単一のラベルを割り当てます。たとえば、天候を「曇り」または「晴れ」と判定します。
- 物体検出: 個々の物体の周囲に2Dのバウンディングボックスを描き、物体の種類と位置をモデルに学習させます。
- インスタンスセグメンテーション: 物体の周囲にピクセル単位で正確なマスクやポリゴンを作成します。これは形状や境界を正確に特定するために不可欠です。
- 姿勢推定: 骨格の関節など、対象の特定のキーポイントに印を付け、動きや姿勢を分析します。
実際のアプリケーション#
データラベリングは、AIを活用するほぼすべての業界で役立ちます。
-
自動運転車: 自動運転車は、あらゆる車両、歩行者、交通標識、車線標示に細心の注意を払ってラベルを付けた大規模なデータセットに依存しています。このラベル付きデータにより、認識システムは複雑な環境を安全に走行できます。自動運転車関連企業は、安全基準への適合を確実にするため、ピクセルレベルのラベリングに多額の投資を行っています。
-
精密農業: 現代の農業では、農業分野のAIを使用して作物の病気を検出したり、生育段階を監視したりします。農家は「健康」な葉と「病気」の葉の画像にラベルを付けてトレーニングしたモデルを使い、処置を自動化することで、農薬の使用量を減らし、収穫量を増やします。
ラベリングのワークフロー#
ラベル付きデータセットの作成は、AIプロジェクトで最も時間のかかる作業となることがよくあります。このプロセスでは通常、「Human-in-the-Loop」(HITL)アプローチを採用し、人間のアノテーターがラベルを検証して高い精度を確保します。最新のワークフローでは、データセット管理を簡素化し、チームでアノテーション作業を進められるUltralytics Platformなどのツールを活用します。また、アクティブラーニングなどの高度な手法も利用できます。モデルがデータに事前ラベルを付け、人間が信頼度の低い予測だけを修正することで、プロセスを大幅に高速化できます。
次の例では、事前トレーニング済みのUltralytics YOLO26モデルを使って新しい画像のラベルを自動生成(自動ラベリング)し、その後、人間が修正する方法を示します。
from ultralytics import YOLO
# YOLO26nモデル(nano版)を読み込みます
model = YOLO("yolo26n.pt")
# 画像に対して推論を実行し、物体を検出します
results = model("https://ultralytics.com/images/bus.jpg")
# 検出結果を標準YOLO形式のテキストファイルに保存します
# このファイルをデータラベリングの出発点として使用できます
results[0].save_txt("bus_labels.txt")









