【群馬事業所】何でも屋の 補佐業務:作画監督編







Bonjour!! 群馬事業所のミロ(仮名)です。

今回は私の業務の中から、AI用アノテーションについてお話をさせていただきます。


え、題名から突っ込みが追い付かない?

Exactment,  まずは私についてからお話を始めましょう。


自己紹介

では私について。

・職歴:4年目 入社してからはそこそこです。
・現場:今の現場は3年目で、細P氏とは同じ現場です。
すなわち、運転支援システムに携わっています。
・仕事:一言で何でも屋、以上。
……とはいかないですね。正確には開発の支援業務、補佐になります。
とはいえ、その仕事傾向は多種多様で、
ツール開発から調査、テスト、使用言語に至るまで多岐に渡ります。
なので何でも屋です。

今回の内容

さて、本題に移りまして、今回は私の仕事の中からAI用アノテーションについて紹介をします。
AI開発とは何ぞやという話は細P氏の記事でご紹介されているのでそちらをご参照ください。


アノテーションとは?

まずはアノテーションとは何かについてからですが、
AI学習の手順が説明に絡むため、そこから説明します。
AI学習は主に、
・データを取り込んで頭脳を形成する「学習」。
・作成した頭脳をもとに結果を作成する「推論」。
の2フェイズで構成されています。

この中で「学習」を行う際に「何のデータ」を学習するかが重要になってきます。
ここで初めてアノテーションが出てきます。

アノテーションとは「AI学習用の教師データ」になります。

前提が長い? まぁAIは密接に関わっているので致し方ありません。
さて、そんなアノテーションですが、一体どんなものがあるのかという部分に移して、お茶を濁します。

アノテーションの種類

アノテーションは種類が様々ありますが、学習目的によって使うデータ形式がまちまちな為、ここでは自動運転周りで使われているものを取り上げます。

物体検出(Object Detection)

 人や障害物などを検知する目的で使用されます。
 主なアノテーションの付け方は矩形(Bounting box)で、
 対象の上下左右の端に沿って四角形を描画します。
 多くは一つの矩形で一つの意味を持ちます。


領域抽出(Semantic Segmentation)

対象の範囲をぴったりと覆い、その範囲で対象の領域を取得します。
矩形よりもさらに精密な範囲でデータを取りたい場合に使用します。

領域自体は重なっていても問題ありませんが、最終的に利用されるのは、
ツールで見たままの表示の範囲となります。なので重なり順が重要になります。




画像分類 (Image Classification)

前者の二つと比べてこれはシンプルです。
画像の中に移っているものを全てに分類タグを付けます。



ここまでの3種類が主に画像解析として使われているアノテーションになります。
この3つには共通点があり、それは「タグ」を付ける必要があることです。
タグとは、文字通りそれが何であるかを示す札のことです。
範囲・領域はそれぞれ毎にタグとして分類できるようになっており、 画像分類の場合は複数のタグを全てつけています。

AI学習は、このタグをもとにそれぞれのタグが付く条件を学習する方式になっています。

いかにアノテーションの精度が重要かが伺い知れますね。



アノテーションの作成

さて、アノテーションの種類については解説しましたが、ではどうやってアノテーションを行うのかについて触れていきます。

単純に言ってしまって、この地味…重要な作業ですが、作成に関しては全て人力で行う必要があります。
いや、そんな面倒…大変なことを人間に任せていいのかと思われますが、もちろん機械で作ることもできます。

ただし、その機会を作る為には学習済みのAIが必要で、そのAIにはアノテーションが必要で、そのアノテーションを作る機械が必要で…….
まさしく無限ループですね。ということで、始まりの部分はどうしても人の手が必要です。

アノテーションの作成ですが、これには専用のアノテーションツールを使用します。
現在はフリーで利用できるツールも多くあり、ツール自体に関しては自作する必要性はありません。
ですが、使い勝手や必要なタグによってはそのままでは使えない場合もあり、
プラグインの開発や、自作の必要が出てきたりと難儀する場面もあります。

作画監督

ここまでアノテーションについて説明をしてきましたが、題名にもある「作画監督」、
これは私が行っている業務そのものを指します。ここからはアノテーション固有の事情についてお話します。

今までの説明のから分かる通り、アノテーション自体は単純な作業です。
問題となるのはその量で、AI学習に必要な画像の量というのは最低でも

10万枚

からとされています。人力で作業をすると言いましたが、精度が必要でタグによって切り替えなければならないなどを考慮すると、一人では一日に10枚作成するのが限度になります。

当然そんな時間がかかる仕事をやっていては他に手が回せません。
その為、この手の作業には人件費の安いオフショア開発が使用されるのが世の常となっています。


Oui,  勘のいい方はお察しの通りです。
オフショア開発ということは外部委託、つまりデータの最終チェックはこちらで行う必要があります。 もちろん、チェックをする側は、アノテーションの仕様が何百ページあろうが把握している必要がありますし、間違いや差分を見出す眼力と集中力も必要になります。

そう、まるでアニメーション制作会社の作画監督の用ではありませんか。
私はエンジニアのはずなのになぁ……


以上、ここまで御清聴ありがとうございました。

冒頭から使われているフランス語への言及がない?
謎の一つくらいは残しておきましょうか。
それでは、Au revoir, à la prochaine!! (さようなら、また次回まで!!)

GITの応募ページを確認してみる!