AI技術にかかせないアノテーションとは

最終更新日:2021年02月06日

アノテーションとは何か

アノテーション(annotation)は、日本語では「注釈」と訳されます。AI技術に欠かせないアノテーションは、機械学習に関係があります。機械学習にはたくさんのデータを必要としますが、このデータに注釈を付けて教師データを作り出す作業を「アノテーション」と言います。

機械学習とは、機械が学習していく仕組みのことです。AIは学習して答えの精度を上げるために、学習が必要なのです。勉強していけばいくほど、正解率が上がるのです。まるで人間のようです。

機械が学習して、どんどん正解率を上げていくためには、問題と正解が必要です。正解のない問題集がないように、機械の学習も同様に、問題と答えが両方ありますが、教師あり学習は、人間がたくさんのデータを入力してあげる必要があります。

例えば、この写真は猫だと、猫の写真「これは何?」という質問と、「これは猫だよ」という答え両方を人間が教えて、同じような写真をたくさんデータとして見せます。

そうすると、AIがどんどん「猫」を覚えていき、「これは何?」と写真を見せると、「これは猫です」「これは猫ではありません」という答えの正解率が上がっていきます。

そのために、たくさんの問題と答えが書かれたデータが必要になります。この、問題になる「猫」の画像と、答えとなる「猫」という言葉が両方書かれているものがアノテーションなのです。

この、AIが賢くになっていくために必要となるたくさんのデータがビッグデータと言われるものです。昔はビッグデータを集めるのが大変でした。今はインターネットで世界がつながり、たくさんのデータが収集できるようになりました。そのため、AIの学習がしやすくなったことが、AIが進化した理由の一つなのです。

アノテーション作業の種類

アノテーションには、用途に合わせ種類があります。今回は中でも、「画像」「テキスト」「音声」の3つについて、説明していきます。

画像や動画についてのアノテーション作業

画像のアノテーションには、「物体検出(Object Detection)」「領域抽出(Image Semantic Segmentation)」「画像分類 (Image Classification)」の3種類の手法があります。

「物体検出(Object Detection)」

画像に写っているものの中から物体を見つけて、「電車」「道路」など、それに沿って意味のあるタグ付けをします。

「領域抽出(Image Semantic Segmentation)」

画像の中の領域を特定し、その領域にタグ付けをします。「この領域は山」のように、領域部分にタグ付けをするということです。   

「画像分類 (Image Classification)」  

画像に対して、属性をタグ付けします。「犬か猫か」「どんな模様か」「どんな色か」などを分類していけるようにします。

アノテーションによって、教師データを作成し、学習することでさらに分類や検出が効果的に精度を増してできるようになります。また、テレビやSNSなどの動画から特定の場面を抜き出す作業などにも使われています。

テキストのアノテーション

テキストデータもいろいろな場面でアノテーションが行われています。例えば、複数のシステムに散らばる大量のデータから顧客になりそうなデータのみを抽出するのに使います。また、事前に決めた分類項目に従ってタグを付け、集計や分析が簡単にできるようにします。

ほかにも、SNSやブログなどの文章から情報を分類したり、不適切なコンテンツを取り除いたりすることにも使われます。教師データとしても使用されます。

音声データのアノテーション

音声もタグ付けすることで音声を文字おこしに使います。音声データも教師データとして使うことができます。

教師データの集め方

機械学習のために、たくさんのデータが必要になることはすでに述べましたが、ではデータが必要になった時、教師データをどのように集めることができるでしょうか。ここではビッグデータが必要になった時の入手方法について説明します。

自力で集める

教師データとして使えるデータ自体がすでにあり、技術力があれば、自分で用意しても良いでしょう。しかし、それが難しい場合は別の方法をとりましょう。

他者から入手する

データが手元にない場合は、教師データの作成依頼や、データ購入も必要になります。

データセットを使う

研究機関などから公開されているデータセットを利用する方法もあります。制限付きの場合もありますが、無料可能なものもあるため、必要に応じて利用してみるのもよいでしょう。

データはクレンジングが必要

データクレンジング(データクリーニング)とは、教師データとして使えない、破損したデータ、不正確なデータ、無関係のデータなどを使えるデータにするための前処理です。 AIにおけるデータクレンジングは、AI開発にも第一ステップとして必ず必要な作業です。

データクレンジングでは、特定の値を入力し、修正しなければならない場合もあります。また値をすべて削除しなければならない場合もあるのです。

これらのクレンジング前のエラーや矛盾を含むデータは「ダーティデータ」と呼ばれています。Harverd Business Reviewによると、基本的な品質基準を満たすデータは3%で、たくさんのデータを修正したり、削除したりするのは大変な作業のため、アメリカの企業では毎年3兆ドルを超えるコストがダーティデータによって発生していると推定されています。

総務省では、データクレンジングに関する教材を提供していますので、参照してみましょう。

総務省 ICTスキル総合習得教材[コース3]データ分析 3-2:データのクレンジングと可視化

AIにおける学習データの種類

学習データは3種類に分類されます。この学習データ3種について説明していきます。この3種類をまとめてデータセット呼びます。

学習データ(トレーニングデータ)

学習データは機械学習の訓練のために使われるデータです。このデータはデータセット全体の中でも、全データの約70~80%を占めます。

検証データ

AIが学習していくと、データに対して正解と思われるものを返すようになってきます。その際に検証用データを使って、これが正しいのかどうかを検証します。検証した結果、誤差が小さくなるように、AI のモデルを修正したり、初期値の調整を行ったりします。

モデルとは

モデル(model)とは、ITmediaのAI・機械学習の用語辞典によると、一般的に模型や模範を意味し、特に数学では対象となる事象の本質や仕組みを簡潔に表現する数式/理論(=数理モデル)を意味するが、機械学習においては、学習後の具体的な計算式/計算方法を指す。「学習済みモデル(Learned model、学習モデル)」「トレーニング済みモデル(Trained model、訓練済みモデル)」とも呼ばれる。※と、あります。

ごくごく簡単に言うと、入力データから出力データに変換するための、数学の関数のようなものです

※引用 ITmedia AI・機械学習の用語辞典

テストデータ

検証を繰り返し、調整を行って精度を上げたのち、テストを行うデータです。検証用とテスト用を別にするのは、検証用のデータを使ってモデルの調整を行っているため、テストだけを行うデータが必要になるからです。

AIの信頼度

このようにして、トレーニングを積み、その結果を検証しながら調整し、最終的なテストを行うためにデータを分けているということなのです。

例えば、「猫」という画像でいうと、まず「猫」のデータを大量に集め、データとしてつかえないダーティデータを取り除き、クレンジングし、トレーニングを繰り返し、検証して微調整していき、最終テストを終えて、初めて大量の画像から、正確に猫の画像を抽出できるようになるというわけです。

まとめ

AI技術の発展は、コンピューターの進化と共に、インターネット接続、スマートフォンの普及など、さまざまの要因が重なって可能になりました。今後はさらに、人間の感情や曖昧な表現を理解するようなAI技術が発見され、「汎用的AI」が生み出される日もいずれ来ることが期待されています。