投稿日
画像セグメンテーションにおけるActive Learning
もくじ
はじめに
戦略技術センターでActive Learningの研究に取り組んでいる梁です。本記事では、画像セグメンテーション (以下セグメンテーション) のアノテーションを効率化する方法の1つであるActive Learningについて紹介します。具体的には、セグメンテーションにおけるActive Learningの研究動向について紹介します。
セグメンテーションとは
セグメンテーションは、画像中の各ピクセルに、事前に定義したカテゴリの1つを割り当てるタスクです。図1に、実際の画像に対してセグメンテーションをした結果を示します。この図では、左に示す元画像の各ピクセルに対して、芝(GRASS)、猫(CAT)、木(TREE)、空(SKY)のいずれかのカテゴリを割り当てていることがわかります。セグメンテーションは、同一のカテゴリからなる領域(画素の集まり)を認識するために使うことができます。

セグメンテーションの課題
一般的なセグメンテーションでは教師あり学習が使われており、高い性能を実現するためには、データへのアノテーションが大きな負担となります。セグメンテーションのアノテーションでは、一般的に、次の図のように多数の頂点を指定し、ポリゴンを作成することで行うので、時間がかかります。また、医療画像のような分野では、アノテーションするために専門的な知識を持つ医師が必要なことがあり、多忙な医師にとって負担となりえます。
解決策:Active Learning
Active Learningはアノテーションの負担を減らすために使われる手法の一種であり、学習アルゴリズムがアノテーターに対話的に問い合わせることで、学習に有用なデータを優先して選択し、アノテーションをします。一般的には、少量の教師ありデータを用いてモデルを一旦学習し、そのモデルで教師なしデータに対して予測を行い、一定の基準で選ばれたデータに対して人手でアノテーションし、最初の教師ありデータと合わせて再度モデルを学習することを繰り返します。以下の図にそのサイクルを示します。

Active Learningは、ラベルの収集が困難であったり、時間がかかったり、コストがかかるプロジェクトで特に魅力的です。なぜなら、単にランダムにデータを選択してアノテーションする場合と比べて、より少ないラベル付きデータで高い性能を達成できるからです。以下の図では、ランダムにデータを選択した場合とActive Learningを使って選択した場合に対するモデルの性能を示しています。横軸がデータ数、縦軸がモデルの予測性能を表していますが、同じデータ数でもActive Learningを使って選択したデータのほうが高性能なことがわかります。

以降の節で、セグメンテーションにおけるActive Learningの研究動向について説明していきます。
研究動向
本節では、Active Learningにおいて重要な以下の2つに関する課題とアプローチを説明します。
- データを選ぶ基準
- アノテーションコスト
データを選ぶ基準に関する課題
データを選ぶ基準とは、データの有益さを測る指標のことです。Active Learningのサイクルにおけるクエリのステップでは、何らかの指標でデータを評価し、学習に有益なデータを優先して選択します。指標には、次のような種類があります。
- 不確定性指標:データを予測する時の不確かさを計算する指標です。各データに不確かさでスコア付けをし、スコアが高い順に取得します。
- 多様性指標:データ間の違いを計算する指標です。データ間の違いが大きなデータ集合を選択します。
- ハイブリッド指標:不確定性指標と多様性指標を同時に考慮する指標です。選んだデータは不確かさが高く、データの間は違いが大きなものになります。
不確定性指標のデメリットとして、冗長なデータ(類似度が高い)が選ばれる点を挙げられます[6]。このデメリットは画像分類だけではなく、セグメンテーションにも存在します。不確定性指標では、各データの不確かさだけを見ており、ミニバッチ内のデータ間の関係を考慮していません。つまり、ミニバッチ内のデータには、不確定性スコアが高くても、冗長なデータが存在します。冗長なデータは違いが少ないため、有益さも小さくなります。そのため、モデルを学習しても、汎化性能の向上に効果的ではないと考えられます。

冗長なデータが選ばれないようにするため、多様性指標を使うことが提案されています。多様性指標はデータ間の違いを測ります。よくある手法はデータ間の違いを類似度で計算します。類似度が低いほど、多様性が高くなります。たとえば、図6に対して、多様性指標を使うと、種類の違う(a)と(c)を選ぶことが期待できます。画像分類において、Core-setは初めての多様性指標として提案され、データ量を30%削減できることが報告されています[7]。しかし、その指標をセグメンテーションに使うと、効果的ではないという報告もあります[8]。
セグメンテーションにおけるActive Learningに対して、不確定性指標と多様性指標の両方を考慮する研究があります[8]。この研究では、1枚の画像を複数の領域に分割し、他の画像の領域との類似度を計算します(図7)。類似度の高い領域が存在する場合、ペナルティを与えます。こうすることで、似た領域が含まれる画像を選びにくくなります。実験では、5〜15%のデータを使うだけで、全データを使って学習した場合の90%〜95%の性能を達成できると報告されています(図8)。

アノテーションコストに関する課題
アノテーションコストとは、Active Learningのアノテーション段階で、データにラベルをつける作業量のことです。簡単なタスクであれば、コストはデータ数から直接予測できます。たとえば、画像分類の場合、図9のように1枚の画像に1つのラベルをつけます。作業が簡単なため、1枚の画像をアノテーションするのはすぐに終わります。その作業量は1枚あたりにかかる時間とラベルを付けたデータ数から求められます。

セグメンテーションにおけるActive Learningの効果を正しく評価するため、データの削減量ではなく、クリック数をベースにしたアノテーションコストが提案されています。クリックベースのアノテーションコストは、次に挙げるようなアノテーションの手法によって変わります。
- ポリゴンアノテーション:図3のように、物体の輪郭をクリックして囲むことでアノテーションします。
- スーパピクセルアノテーション:図10のように、画像をスーパピクセル(距離的・色的に近い画素のまとまり)に分割し、スーパピクセルをクリックすることでアノテーションします。
- インタラクティブアノテーション:アノテーターから与えられたヒントを活用して、モデルが自動的にアノテーションします。図11では、クリックでヒントを与えることでアノテーションしています。ここで緑はオブジェクトであること、赤はオブジェクトではないことを表し、青の領域はモデルによって自動選択されています。

クリック数をベースにした手法の欠点として、データを学習するモデルとは別にアノテーションコストを予測するモデルを用意しなければならない点が挙げられます。この問題を解決するため、Collingらはモデルの予測値からクリック数を直接推測する仕組みを提案しています[10]。これにより、使うモデルが1つで済むため、複数のモデルを同期して学習せずに済みます。データの重要性を計算する時は、不確定性スコアとクリック数の両方を考慮します。実験の結果、Cityscapesデータセットにおいて、アノテーションコストを90%削減しつつ、全データを使って学習した場合の95%のmIoUを達成しています。
アノテーションコストを減らすため、スーパーピクセルアノテーションをActive Learningのインタフェースに使う研究があります[11]。この研究では、図13に示すように、画像に対してスーパピクセルを生成し、アノテーターはスーパピクセルをクリックします。実験の結果、Cityscapesデータセットにおいて、アノテーションコストを92%削減しつつ、全データを使って学習した場合の95%のmIoUを達成しています。
おわりに
本記事ではセグメンテーションにおけるActive Learningを紹介しました。研究動向では、主にデータを選ぶ基準とアノテーションコストに関する課題と現状での解決策を紹介しました。この記事が読者のお役に立てれば幸いです。
参考資料
- CS231n: Deep Learning for Computer Vision | Lecture 9
- Motion-based Segmentation and Recognition Dataset
- 画像セグメンテーションにおけるアノテーションの効率化
- Microsoft COCO: Common Objects in Context
- The Cityscapes Dataset for Semantic Urban Scene Understanding
- Uncertainty-Based Active Learning via Sparse Modeling for Image Classification
- Active learning for convolutional neural networks: A core-set approach
- ReDAL: Region-based and diversity-aware active learning for point cloud semantic segmentation
- CEREALS – Cost-Effective REgion-based Active Learning for Semantic Segmentation
- MetaBox+: A new Region Based Active Learning Method for Semantic Segmentation using Priority Maps
- Revisiting Superpixels for Active Learning in Semantic Segmentation with Realistic Annotation Costs