Ultralytics YOLO27: ウェイトリストに登録する
YOLOのライセンス
Ultralytics用語集に戻る

Data-Centric AI

データ中心型AIでは、モデルのアーキテクチャを固定したまま、学習データのラベル、網羅性、品質を体系的に改善することで、モデルの性能を高めます。

データ中心型AIとは、ラベルの一貫性、実環境の条件の網羅性、クラスのバランス、データのクリーンさなど、データを体系的に改善してAIシステムの性能を高める取り組みです。その間、モデルとトレーニングコードはほぼ固定します。Andrew Ngは2021年にこの用語を広め、畳み込みニューラルネットワークやTransformerなどのアーキテクチャが成熟した現在、多くの用途ではモデルの改良よりもデータの改善から大きな効果が得られると主張しました。対照的なモデル中心型AIでは、ベンチマークデータセットを固定し、アーキテクチャ、損失関数、ハイパーパラメーター調整を反復します。多くの学術リーダーボードで使われる手法です。

Ngがよく知られる例として挙げたのは、鋼板の検査でした。欠陥検出器の精度は76.2%で伸び悩んでいましたが、モデル中心型の改良では改善せず、一貫性のないラベルを修正すると93.1%に上昇しました。同年後半、DeepLearning.AIとLanding AIはデータ中心型AIコンペティションを開催しました。モデルは固定され、参加者が改善できるのは、手書きローマ数字のノイズを含む、画像10,000枚以下の画像分類データセットのみでした。

主な実践方法#

  • 一貫性のあるデータラベリング: アノテーターは、ボックスに車のサイドミラーを含めるか、半分隠れた人物にどうラベルを付けるかなど、判断に迷うケースに関する明文化されたルールに従います。こうしたケースの判断が2人のアノテーターで異なると、モデルが対処できないラベルノイズが生じます。
  • ラベル誤りの検出: モデルの予測と付与済みラベルの不一致は、誤りの可能性を示します。Northcutt、Athalye、Muellerによる2021年の研究では、一般的な10種類のデータセット全体で、テスト例の平均少なくとも3.3%にラベル誤りが見つかり、ImageNetの検証セットでは少なくとも6%に見つかりました。
  • 対象を絞ったデータ収集と合成データ: クラス、シーン、照明、物体サイズごとのエラー分析によってモデルが失敗する箇所を特定し、該当するデータの切り口に絞って新しいサンプルを追加すると、無作為に追加するよりも効果的です。
  • データクリーニング: 破損ファイル、無関係な画像、重複を削除します。特に、トレーニング分割とテスト分割の両方に含まれる類似画像の重複を取り除きます。
  • データ拡張: 新しい画像を収集せずに、モデルが見る照明、スケール、視点の幅を広げます。

分割間の重複はデータリークを引き起こし、テストスコアを水増しします。また、クラスの不均衡があると、製造業の欠陥検出のように重要な希少クラスを見逃しても、モデルが高い精度を達成することがあります。医用画像解析ではデータセットが小さく、専門家によるラベル付けには費用がかかるため、データ量よりも一貫性があり、レビュー済みのラベルが重要です。

データ中心型の改善サイクル#

データ中心のチームはモデルを固定し、混同行列などのツールでエラーを調べてから、それに応じてデータを変更します。最初のファインチューニングと反復ループのレッスンでは、YOLO26モデルで最も性能の低いクラスを次のデータセット修正に反映する方法を紹介しています。

この例では、scikit-learnの手書き数字データセットのラベルの20%を破損させ、アウト・オブ・フォールド予測とラベルが一致しないサンプルを検出し、それらを除いて同じモデルを再トレーニングします。

import numpy as np
from sklearn.datasets import load_digits
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import cross_val_predict, train_test_split

X, y = load_digits(return_X_y=True)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=0)

# Replace 20% of the training labels with random digits to mimic annotation errors
rng = np.random.default_rng(0)
noisy = y_train.copy()
flip = rng.random(len(noisy)) < 0.2
noisy[flip] = rng.integers(0, 10, flip.sum())
wrong = noisy != y_train  # some random digits match the true label

# The model stays fixed; only the training data changes
model = LogisticRegression(max_iter=5000)
print(f"noisy labels: {model.fit(X_train, noisy).score(X_test, y_test):.1%} test accuracy")

# Flag examples whose out-of-fold prediction disagrees with their label, then drop them
keep = cross_val_predict(model, X_train, noisy, cv=5) == noisy
print(f"flagged {(~keep).sum()} examples, {(~keep & wrong).sum()} of {wrong.sum()} wrong labels")
print(f"cleaned labels: {model.fit(X_train[keep], noisy[keep]).score(X_test, y_test):.1%} test accuracy")

モデルを変更せずに、テスト精度は87.0%から94.1%に上昇します。フィルターは354件を検出します。誤ラベル213件のうち211件に加え、正しいものの珍しい143件です。そのため、誤りのほぼすべてと一緒に、一部の有効なサンプルもクリーンなデータセットから除かれます。

データの変更を比較するには、どのデータでどのモデルをトレーニングしたかを正確に把握する必要があります。Ultralytics Platformは不変のデータセットバージョンを保存します。クラウドトレーニングの「Save Dataset Version」オプションを使うと、各モデルをトレーニングに使用したスナップショットに関連付けられます。「Compare Versions」には、2つのスナップショット間で変更された画像、アノテーション、クラスが表示されます。また、データセットの「Models」タブには、mAP50-95などの主要メトリクスと並んで、各モデルのデータセットバージョンが表示されます。

  • アクティブラーニング: 次にラベル付けする未ラベルのサンプルを選びます。通常、選ばれるのはモデルの確信度が最も低いサンプルです。データ中心型AIで使われる手法の1つです。
  • データフライホイール: デプロイ済みモデルの入力や誤りを新たなトレーニングデータにする本番環境のループです。リリースのたびにデータ中心型の取り組みを繰り返します。
  • 機械学習運用(MLOps): モデルのバージョン管理、トレーニング、デプロイ、監視を行うエンジニアリング手法であり、データの変更を再現可能かつ比較可能にします。

ソリューションを見る

スポーツにおけるコンピュータービジョン

スポーツにおけるコンピュータービジョン

Ultralytics YOLOが、選手やボールの追跡、パフォーマンス分析、コーチングへの知見、アスリートのリハビリを通じて、スポーツビジョンをどのように支えるかをご紹介します。
詳しく見る
航空画像向けコンピュータービジョン

航空画像向けコンピュータービジョン

Ultralytics YOLOを使用して、ドローンや航空画像をリアルタイムの知見に変換し、農業、水産養殖、自然保護、地理空間分析に活用できます。
詳しく見る
航空宇宙分野のコンピュータービジョン

航空宇宙分野のコンピュータービジョン

Ultralytics YOLOを活用して航空宇宙分野でコンピュータビジョンを導入し、航空機検査、滑走路上のFOD検出、空港の地上業務、複合材の欠陥検出に活用できます。
詳しく見る
セキュリティ分野のコンピュータービジョン

セキュリティ分野のコンピュータービジョン

Ultralytics YOLOモデルであらゆる施設を保護しましょう。ビジョンAIは、周辺監視、脅威検知、ナンバープレート認識、職場の安全管理を支援します。
詳しく見る
ロボティクス分野のコンピュータービジョン

ロボティクス分野のコンピュータービジョン

Ultralytics YOLOモデルで、よりスマートなマシンを実現しましょう。ロボティクスにおけるビジョンAIは、自律ナビゲーション、認識、物体追跡、リアルタイム制御を支援します。
詳しく見る
物流におけるコンピュータービジョン

物流におけるコンピュータービジョン

Ultralytics YOLOモデルで物流を効率化しましょう。ビジョンAIにより、荷物検査、仕分け、車両追跡、倉庫のリアルタイム安全監視を実現します。
詳しく見る
小売業におけるコンピュータービジョン

小売業におけるコンピュータービジョン

Ultralytics YOLOモデルで小売のあり方を変革しましょう。ビジョンAIにより、在庫追跡、棚の監視、行列管理、より高度な顧客インサイトを実現します。
詳しく見る
医療分野におけるコンピュータービジョン

医療分野におけるコンピュータービジョン

Ultralytics YOLOモデルで医療ソリューションを構築しましょう。医療分野のビジョンAIは、医用画像処理の高速化、より高度な診断、患者モニタリングを実現します。
詳しく見る
製造業におけるコンピュータービジョン

製造業におけるコンピュータービジョン

Ultralytics YOLOモデルで製造を最適化しましょう。ビジョンAIは、品質管理、欠陥検出、PPE準拠、組立ラインの自動化を推進します。
詳しく見る
自動車分野におけるコンピュータービジョン

自動車分野におけるコンピュータービジョン

Ultralytics YOLOモデルで自動車分野にコンピュータービジョンを導入しましょう。ビジョンAIは、道路の安全性、運転支援、車両の自動化を向上させ、よりスマートな道路を実現します。
詳しく見る
農業におけるコンピュータービジョン

農業におけるコンピュータービジョン

Ultralytics YOLOモデルでスマート農業にビジョンAIを導入しましょう。作物のモニタリング、家畜の追跡、精密農業を支援し、より高く効率的な収量を実現します。
詳しく見る

AIの未来を一緒に築きましょう!

機械学習の未来に向けた歩みを始めましょう