さまざまな領域でAIが話題となるにつれ、その背景にある機械学習やディープラーニングの技術に関しても関心が集まるようになりました。
AIや機械学習のメカニズムを紐解くと数多くの専門用語が目に入りますが、その中でも「アノテーション」という言葉を耳にした方は多いのではないでしょうか。
AIには機械学習のベースとなる「教師データ」が必要不可欠ですが、アノテーションは教師データの作成において重要な役割を果たしています。したがって、AI活用を考えるうえでは、アノテーションについて正しく理解しておかなければなりません。
本記事ではAI開発におけるアノテーションの概要や実例、具体的なアノテーションの方法について解説します。
AIにおけるアノテーション作業とは
アノテーションとは、AIの学習データに「正解」にあたるラベル付けを行う作業工程です。
たとえば、リンゴの画像に対して「リンゴ・赤色・フルーツ・丸型」などの情報をラベルとして付与すると、与えられたラベルをAIが学習し、その後新しく提供された「赤くて丸いフルーツの画像」を「リンゴ」と判別できるようになります。
AIは、テキストや画像といったデータの属性に応じて、付与されたラベルに基づいた機械学習を進めます。したがって、AIの性能はアノテーションの良し悪しに大きく左右されるのです。
AIの学習とアノテーションの関係
AI開発の核心である機械学習において重要なアノテーションですが、機械学習とアノテーションの関係性についてさらに詳しく見ていきましょう。
機械学習は「教師あり学習」と「教師なし学習」の大きく2つに分けられる
機械学習とは大量のデータからパターンや構造を見つけさせる仕組みです。機械学習の方法は、「教師あり学習」と「教師なし学習」の大きく2種類のモデルに分けることができます。
あるデータに対して、事前に正解を定義したうえで学習させる教師あり学習に対して、教師なし学習は正解を定義せずに学習させるモデルです。
この2つのモデルはそれぞれ得意とする領域が異なり、教師あり学習は「識別・予測」を得意とするのに対し、教師なし学習は「抽出・グループ分け」を得意としています。
【教師あり学習と教師なし学習の違い】
特徴 | 実用例 | |
教師あり学習 | ・正解がわかっているデータを基準に学習モデルを構築して識別や予測をする手法 ・開発プロセス上でアノテーション作業が必要 | 株価予測、メールのスパム判定、チャットボット…etc |
教師なし学習 | ・正解のないデータから共通する要素を見つけ出したり特徴毎でグループ分けする手法 ・開発プロセス上にアノテーション作業は不必要 | データ仕分け、機械の異常検知、マーケティング領域のデータ分析…etc |
アノテーションは「教師あり学習」に必要
教師あり学習では、引き出したい情報の特徴を「正解」としてAIに学習させますが、この正解を与える作業こそがアノテーションです。アノテーションにより、大量のデータから正解となる情報やパターンを検出、あるいは生成することができるようになります。
たとえば、事前にリンゴの画像に対し「リンゴ・赤色・ヘタがある・丸型・フルーツ」などリンゴの特徴をそれぞれラベル付けすると、AIはこれらの要素から画リンゴの画像を判別するアルゴリズムを構築します。
教師あり学習を用いた基本的な学習モデルの構築は、以下の6ステップです。
- 目的を定義
- 目的に合ったタイプのデータを収集
- 入力と出力の変数を設定
- 用いるデータタイプに合わせた学習アルゴリズムの選定
- 学習アルゴリズムに正解付きの訓練データを与える(アノテーション)
- 学習済みモデルに新たなデータを与えテストする
教師あり学習は、アノテーション工程で「なにをもって正解とするか」を正しく設定しないとうまく機能しません。前述したリンゴの例で考えると、「赤色」の正解要素が欠けると梨をリンゴと認識することがあり、「ヘタがある」が欠けると梅をリンゴとして認識してしまう可能性があります。したがって、アノテーションが教師あり学習のモデルの良し悪し、ひいてはAIの性能に直結すると考えて良いでしょう。
「教師なし学習」はアノテーション不要
教師なし学習は、学習アルゴリズムに対し大量のデータを与え、全体の傾向や相関関係を分析する手法です。正解・不正解が存在しないデータ分析に用いるため、必然的にアノテーション工程は不要となります。
データ毎のアノテーションの例
教師あり学習におけるアノテーションの重要性がおわかりいただけたのではないでしょうか。しかし、アノテーションを行うといっても、対象データの種類によって適切なラベリング方式を取らなければなりません。ここからはデータ種別毎のアノテーションについて解説します。
テキストデータのアノテーション
テキストデータのアノテーションはAIが人間の言語を理解するために、テキスト情報にラベル付けを行います。
たとえばチャットボットに「1+1は?」の質問を投げて「2です」と答えてもらうには、チャットボットに搭載されたAIがテキストデータを「計算式」だと認識しなければなりません。
【テキストデータのアノテーション方式とラベルの例】
分類 | 特徴 | 例 |
セマンティックアノテーション | 単一の単語、固有名詞、概念を分類するラベル | 人、国、企業、日付、金額…etc |
センチメントアノテーション | 喜怒哀楽など感情表現を分類するラベル | ポジティブ、ネガティブ…etc |
インテントアノテーション | 文脈の意図を分類するラベル | 要求、疑問、提案…etc |
文章構造の解析 | 主語述語や品詞の文章構造解析し分類するラベル | 大きい、高い、〜のようだ、〜かもしれない…ect |
テキストアノテーションは0から始めると膨大な時間・コスト・労力がかかります。十分なリソースが用意できない場合は、専用のアノテーションツールや、ソリューションサービスを利用するのがおすすめです。
画像・映像データのアノテーション
画像や映像データをアノテーションするには、画像内で一体化している物体や風景をどのようにして個別認識させるかが重要です。
たとえば「家の中で皿に乗ったリンゴを持った女性の写真」をアノテーションでラベリングする場合、少なくとも家の背景・皿・リンゴ・女性の4つそれぞれをラベリングしなければなりません。
【画像・映像データの主要なアノテーション方式】
分類 | 特徴 |
物体検出(オブジェクディテクション) | 物体を長方形の枠線で囲みラベリングする |
領域抽出(セマンティックセグメンテーション) | 画像内の領域をピクセル毎で特定してラベリングする |
目印の検出(ランドマークアノテーション) | 対象の目、鼻、輪郭など顔のパーツを点で目印としてラベリングする |
画像分類(クラシフィケーション) | 画像そのものに複数の属性をラベリングする |
音声のアノテーション
音声データのアノテーションでは、音量や音の種類での分類や音声をテキストデータに変換・多様な人物の音声データのラベリングが必要です。
【音声データの主なアノテーション方法】
分類 | 特徴 |
文字起こし | 音声をテキスト化しラベリングする |
話者ダイアライゼーション | 会話の区切りと誰がどこまで話したのかを複数ラベリングする |
カテゴリ分類 | 人の声かそうでないか、ノイズかどうかをラベリング |
音声データのアノテーションは音声認識システムや翻訳機など、さまざまなツールに活用される教師データです。近年ではカスタマーセンターの応答記録を自動でテキスト化するツールが登場するなど音声データを活用したAIが注目を浴びています。
アノテーションの主な方法
実際にアノテーション作業を行うには、データ収集や人的リソースの確保、ツールの活用など多くのポイントがあります。相応のコストも発生するため、予算に合わせて最適な手段を選びましょう。
ツールを用いたアノテーション
アノテーションには各種データに応じた専用のアノテーションツールが必要不可欠です。アノテーションツールの主な調達方法は以下の3点があげられます。
- クラウドベンダのアノテーションサービスの利用
- OSS(オープンソースソフトウェア)から構築
- ツールの内製化
最も低コストなのはアノテーションサービスの利用です。サービス利用なら既存のツールを用いるため開発コストがかかりません。ただし、ほかの選択肢に比べ自由度は劣ります。
OSS、内製化は自社でツールを構築するため高コストですが、長期的運用を前提とするなら費用対効果は高いといえるでしょう。
アノテーション代行会社の利用
アノテーション作業のノウハウや専門の人材が自社にない場合、代行会社と契約して委託するのも有効な手段です。AI分野の人材はまだまだ乏しいため、アウトソーシングで代行してくれる企業は貴重な存在です。
委託先の選定や契約、条件の擦り合わせに時間はかかりますが、データの活用目的に沿った適切なアノテーション作業を期待できます。
クラウドソーシングでの委託
代行会社の利用が予算的に厳しい場合は、クラウドソーシングでフリーランスのアノテーターを探す方法も効果的です。アノテーション作業は副業として請け負っている人が多く、要件を絞って探せば格安で高い技術を持ったアノテーターと出会えるでしょう。
一番の魅力は低コストな点ですが、個人として請け負っている以上作業量には限界があるほか、品質に劣るケースも珍しくありません。フリーのアノテーターへ依頼する場合は、ユーザー評価や実績欄をこまめにチェックしましょう。
データセットの活用
アノテーション作業のデータ内容やラベルがシンプルな場合、AIやデータソリューション企業が提供するアノテーション済みデータセットで代用できる可能性があります。
アノテーションの要件や開発の用途がデータセットとマッチしている必要はありますが、データセットを用いればラベリングの手間もかけず、短時間かつ低コストで機械学習のプロセスへ移行できるでしょう。
アノテーションはAIベンダーと相談を
アノテーション作業はAIの精度を左右する重要な役割ですが、自社で賄うには専門知識を持った人材と、専用のツール、データ収集のノウハウが必要です。
データの活用目的によってアノテーションの作業規模やデータの粒度は異なるため、リソース配分に悩んでいる担当者の方も多いのではないでしょうか。アノテーションに関する要件定義や見積もりはAIベンダーと相談の上で進めるのが良いでしょう。