Data Labeling
機械学習のためのデータラベリングの基礎を学びましょう。オブジェクト検出のような主要なタイプと、Ultralytics YOLO26を使用してワークフローを加速する方法を解説します。
データラベリングは、画像、ビデオフレーム、テキスト、オーディオなどの生データを識別し、情報を含むタグやメタデータを追加してコンテキストを提供する基本的なプロセスです。機械学習 (ML)の領域において、アルゴリズムは物理世界を本質的に理解することはできず、導き手となる「教師」を必要とします。この指導は、教師あり学習中に使用されるラベル付きデータセットの形で行われます。ラベルはグランドトゥルースとして機能し、モデルが予測しようとする正解を表します。単純な分類器のトレーニングであれ、Ultralytics YOLO26のような複雑なアーキテクチャのトレーニングであれ、これらのラベルの精度、一貫性、品質がモデルの成功を決定する主な要因となります。
Link to this sectionデータラベリングとデータアノテーションの比較#
日常会話ではこれらの用語が混同されて使われることも多いですが、注目すべき微妙な違いがあります。「データラベリング」は一般的に、データの一部にカテゴリやタグを割り当てるという広範な行為(例:メールに「スパム」というタグを付ける)を指します。対照的に、データアノテーションはコンピュータビジョン (CV)により特化したもので、バウンディングボックス、ポリゴン、キーポイントを使用してオブジェクトを正確に描写することを含みます。しかし、ほとんどのMLOpsワークフローにおいて、両方の用語は高品質なトレーニングデータの作成を指します。
Link to this sectionコンピュータビジョンにおける主要な種類#
ラベリング方法は、モデルが実行すべきタスクに基づいて変化します。一般的な種類は以下の通りです。
- 画像分類: 天候を「曇り」や「晴れ」と識別するなど、画像全体に単一のラベルを割り当てること。
- 物体検出: 異なるオブジェクトの周囲に2Dのバウンディングボックスを描画し、そのオブジェクトが何であり、どこにあるのかをモデルに学習させること。
- インスタンスセグメンテーション: オブジェクトの周囲にピクセル単位で正確なマスクやポリゴンを作成すること。これは、正確な形状や境界を決定するために不可欠です。
- 姿勢推定: 骨格の関節など、被写体の特定のキーポイントに印を付け、動きや姿勢を分析すること。
Link to this section実社会での応用#
データラベリングの有用性は、AIを活用する事実上すべての業界に及んでいます。
-
自動運転車: 自動運転車は、すべての車両、歩行者、交通標識、車線マーカーが細かくラベル付けされた膨大なデータセットに依存しています。このラベル付きデータにより、認識システムは複雑な環境を安全に航行できます。自動運転車企業は、安全基準への準拠を確実にするために、ピクセルレベルのラベリングに多額の投資を行っています。
-
精密農業: 現代の農業では、農業におけるAIが作物の病気の検出や成長段階の監視に使用されています。農家は「健康」な葉と「病気」の葉のラベル付き画像でトレーニングされたモデルを使用し、処理を自動化することで、化学物質の使用量を減らし、収穫量を増やしています。
Link to this sectionラベリングのワークフロー#
ラベル付きデータセットの作成は、AIプロジェクトにおいて最も時間がかかる部分であることがよくあります。このプロセスには通常、人間がアノテーターとしてラベルを確認し、高い精度を保証する「ヒューマン・イン・ザ・ループ (HITL)」アプローチが含まれます。最新のワークフローでは、Ultralytics Platformのようなツールを活用してデータセット管理を簡素化し、チームがアノテーションで協力できるようにしています。また、アクティブラーニングなどの高度な手法を採用することもでき、モデルがデータを事前ラベル付けし、人間が確信度の低い予測のみを修正することで、プロセスを大幅にスピードアップさせます。
以下の例は、事前トレーニング済みのYOLO26モデルを使用して、新しい画像のラベルを自動的に生成(自動ラベリング)する方法を示しており、生成されたラベルは人間が修正可能です。
from ultralytics import YOLO
# Load the YOLO26n model (nano version)
model = YOLO("yolo26n.pt")
# Run inference on an image to detect objects
results = model("https://ultralytics.com/images/bus.jpg")
# Save the detection results to a text file in standard YOLO format
# This file can now be used as a starting point for data labeling
results[0].save_txt("bus_labels.txt")





