コンピュータビジョンのデータセットは、今日、研究者や開発者が利用できる最も貴重なリソースの一つです。これらのデータセットには様々な画像やラベルが含まれており、機械学習エンジニアは、配置された環境内の物体、顔、その他の視覚的特徴を検出するような高度な機能のモデルを訓練することができます。しかし、これらのデータセットの多くでは、具体的にどのようなアノテーションが必要なのかを理解し、適切に行うことが困難な場合があります。
そのため、CVデータを最大限に活用するためには、アノテーションプロセスを可能な限り完璧にすることが重要です。これはML業界共通の課題であり、画像はバッチや個々のデータセットレベルで、外観や画像内容によるもの、あるいは主題によるものなど、様々な複雑さがあります。
画像のアノテーション作業を簡素化するために、画像内の最も重要な領域や細部を特定するいくつかの具体的な方法を採用することができます。このページでは、コンピュータビジョンデータセットの画像にアノテーションを施すための、重要なベストプラクティスをご紹介します。
ビジュアルデータのさまざまな種類
毎日、毎分、地球規模で無限のデータが生成されています。そのデータは、音声、動画、テキスト、画像など、さまざまな形態で提供されています。AIアプリケーションを導入すれば、複雑でめまぐるしい世界を読み解く力を身につけることができます。
その中でも特に注目すべきは、画像データです。多くのデータサイエンティストが知っているように、AI/MLアプリケーションフレームワークの運用に使用できるようにするには、生のままでは、画像はかなりの量のソート、レビュー、改善が必要です。画像分類のようなコンピュータビジョン技術は、MLプロジェクトが必要とするかもしれない画像や他のタイプのデータにアノテーションを施すための、より優れたベストプラクティスの基礎に過ぎません。
視覚データの種類によっては、ローカライゼーション、セグメンテーション、オブジェクト検出など、データ処理パイプラインの異なるステージで明確な目的を達成するために、他のテクニックを使い分けることが必要です。アノテーションの方法が複数あることで、より自由な実験が可能になり、あるユースケースから別のユースケースへのデータの準備に新しい道を開く機会も増えるでしょう。モデルによって必要とされるデータの種類は異なり、最も信頼性が高く一貫性のある結果を得るためには、データの多様化や専門性の向上が必要な場合もあります。
安定した正確な予測を行うモデルは、学習用のデータであれば簡単に作成することができます。このようなデータセットのカスタマイズを実現するには、アノテーションとデータラベリングに細心の注意を払う必要があります。どのようなツールでもそうですが、CVのアノテーション機能は、それらが指示され意図されたとおりに使用されたときにのみ、最も効果的に機能します。
画像アノテーションのベストプラクティス
どのようなCVプロジェクトも、実世界の物体を正確に検出するDeep Learningモデルを開発することを第一の目的としています。これらの物体は、画像や映像という入力データとして読み込まれ、処理されます。人工衛星から自動運転車まで、様々なモデルがこのイメージセグメンテーション技術に依存しています。
これらの技術は、モデルが学習した画像を最適に解釈するための効果的なCV-poweredメソッドとして開発・実用化されました。これらの手法は、各モデルに最も関連性の高いデータを十分に表現することが重要です。そのために、イメージセグメンテーションはセマンティック、インスタンス、パノプティックという3つのアプローチに分けられるます。
セマンティック
セマンティックセグメンテーションは、アノテーターが類似したオブジェクト間の境界を識別するのに役立つ方法です。この手法では、画像内の各オブジェクトを別々のクラスに分割するモデルを意味しますが、それ以上の機能は持ちません。基本的に、この手法は画像とそのコンテンツのトップレベルの分析に最適ですが、より詳細な情報が必要な場合は、他のセグメンテーション手法のいずれかを選択することを推奨します。
インスタンス
インスタンスセグメンテーションは、セマンティックと同様にオブジェクトを識別しラベル付けするために動作しますが、より深く、より個別なレベルでデータセット内の特定の分類をする機能を持っています。これは、自律走行車や医療画像アプリケーションのような、特定の産業とそれに貢献するCV駆動型アプリケーションで、最小の物やオブジェクトを拾うためにモデルを訓練する必要がある場合に有用となるものです。
パノプティック
パノプティックは、他の手法が持つ機能を統合し、さらに一歩進んだラベリングやアノテーションの機能を持つ、最も複雑なセグメンテーション手法といえます。パノプティックセグメンテーションは、画像の各ピクセルにラベルを付与し、それらをセマンティッククラスによって分離し、さらにインスタンスも区別します。インスタンスセグメンテーションのラベル構成の詳細さを超える、各ピクセルにインスタンスに対応するユニークなラベルを割り当てることで、アノテーションの際に重複を防ぐことができます。
セグメンテーションの方法を選択する
異なるタイプの画像セグメンテーション手法を選択する場合、全ては異なるプロジェクトのパラメータと必要とされる詳細度によって決定されます。モデル開発基準によると、各セグメンテーションタイプは、それらの要件にマッチし、満たすために実装できる特定の使い方があります。
セマンティックは、モデル学習の基礎となる一般的な大量の情報を扱う基本的なデータセットに最適です。インスタンスは、データセットの内容の特殊性にもう少し踏み込み、最後にパノプティックは、さらに詳細に踏み込みます。オブジェクトの検出から画像の背景やシーンまで、各データセットが全体として何を含んでいるかを徹底的に解釈し、包括的なアノテーションレポートを作成することで、その内容を理解することができるのです。
バウンディングボックスアノテーションのベストプラクティス
画像データセット内のオブジェクトを手作業でラベリングすることを考えるとき、おそらく最初に思い浮かぶのはバウンディングボックスでしょう。バウンディングボックスがなぜ人気があるのかは、そのシンプルさと使いやすさを考えるとよくわかります。しかし、バウンディングボックスは、オブジェクトのラベル付けに長方形か正方形のどちらかの形を形成するという制約があるため、制約が多いのも事実です。
実世界では幾何学的なものよりも不規則な形状の方が多いため、モデルは実際の状況やシナリオに基づいて学習する必要があり、バウンディングボックスのアノテーションは、それらのシナリオのオブジェクトを適切に解釈できるようにするために必要なものでしかないのです。
タイトアノテーション
バウンディングボックスを正確に形成することは、トレーニングの精度を高めるために非常に重要です。つまり、ボックスの端はターゲットとなるオブジェクトに可能な限り近づける必要があります。バウンディングボックスを使ったラベリングが不正確で一貫性がない場合、後々、予測データやグランドトゥルースデータを通して、モデルに問題やトレーニングギャップを生じさせる可能性があるのです。
アングルまたはローテーション機能
アノテーションツールは、画像データ中の様々なオブジェクトに対応するため、アノテーションを必要とするオブジェクトにフィットするよう、バウンドボックスを回転させたり、角度を変えたりすることが必要なケースに対応することが求められます。
オーバーラップの低減
画像のレイアウト上、特に密集した画像や雑然とした画像では、アノテーションをオーバーラップさせるしかない場合があります。アノテーションの重なりが大きいと、モデルが異なる要素を識別する際に問題が生じることが知られています。このような場合、バウンディングボックスを使用する際に、ポリゴンなどの二次的なアノテーション方法を検討することで、識別を助けるとともに、オーバーラップのインスタンスを削減することができます。
ポリゴンアノテーションのベストプラクティス
ポリゴンアノテーションは、基本的にバウンディングボックスのバリエーションです。ポリゴンアノテーションは複雑な形状を利用し、一般的なバウンディングボックスの長方形や 正方形よりも、ターゲットオブジェクトの構造を完全にまたはより正確に追跡し、アノテーションするのに役立ちます。
足し算と引き算
ポリゴンを使ったアノテーションの欠点として、バウンディングボックスよりも精度が高い反面、複数のオブジェクトを取り込んでしまい、重なりが発生してしまうことが挙げられます。そこで、アノテーション中にポリゴンの "分岐 "を減算・加算することで、このような重なりを防止することができます。Superb AI Suiteで利用可能な結合と減算の機能は、以下の画像でデモンストレーションされています。
ポリラインアノテーションのベストプラクティス
ポリラインのアノテーションは、画像データセット内の特殊なオブジェクトや基本的な形状に適合していないオブジェクトにラベルを付ける場合に便利です。他のアノテーション手法と併用することで、バウンディングボックスが固定形状であるために生じる隙間を埋めることができるため、非常に汎用性の高いラベリングツールとなります。
ラインの範囲内で使用する
現実的な話として、世界は箱や線でできているわけではないので、画像にアノテーションを施す際にバウンディングボックスやポリラインを単独で使用することは現実的ではありません。スプラインは、その第3の選択肢を実現します。スプラインは、直線や構造から外れたマークの輪郭を操作できるポリラインで、Superb AIスイートで利用可能です。
キーポイントアノテーションのベストプラクティス
キーポイントアノテーション技術は、主にCV-Poweredアプリケーションによる顔の特徴や動きの検出を可能にする技術として知られています。これは、顔の寸法を測定するために「点」や「キーポイント」をプロットし、特定の表情や顔の変化を分類する特徴を特定することで、アプリケーションが人間の感情を認識するのに役立つというものです。
構造重視
キーポイントは、画像データセット内の形状が、人間の顔や体の一部など、同じ構造的性質を共有している場合に最適です。これらの形状の中で、キーポイントを輪郭として使用し、大きな形状の中の小さな「キー」特徴、例えば顔にラベル付けする際の目や口の輪郭を囲みます。
マーク オブスキュア ポイント
キーポイントを使ってシェイプにアノテーションする場合、特定のポイントにアノテーションすることが難しい場合があります。そのような場合、そのポイントをマークしたり、アノテーションを完成させることが難しくても、個々のキーポイントは配置されていることを確認します。そうすることで、視認性に関係なく、ある点がそこに配置されて形状を完成させたとモデルが予測するための判断材料が得られます。
これは、Superb AIのスイートで提供される機能の一つで、キーポイントアノテーションのニーズに特化したものです。アノテーション担当者は、ポイントをマークせずに不完全なままにするのではなく、個々のキーポイントを可視または不可視としてマークすることが可能です。
正確でわかりやすい画像アノテーション
画像アノテーションの手法は、MLやCVモデルの取り組みによって異なることが多いです。しかし、どのチームも、最も正確なAIモデルを実現するという共通の目的に向かって取り組んでいます。彼らは、かつてはなかったツールやリソースが市場にあることを認識することで、その目的を達成しているのです。
これらのリソースの中には、様々なモデリングニーズに合わせてカスタマイズされた画像セグメンテーションとラベリング手法が含まれている。プロジェクトによって、エッジケースや教師あり学習アルゴリズムの基礎として使用されるグランドトゥルースデータセットなど、データの特定の部分にアノテーションを付ける際に必要な詳細度によって、異なるタイプのセグメンテーションやより一般的または特化したテクニックが求められます。
Superb AI Suiteを通じて、ユーザーは、反復的で時間のかかる基本的なデータラベリング作業の多くを自動化に任せて、モデルの精度と全体的なパフォーマンスに違いをもたらす最も複雑で有意義なエッジケースデータセットにその労力を集中的に割くことができるようになります。