AIモデル学習に必要なデータ数を考える上で重要となるデータの多様性とは?

AIをビジネスに活用して業務の効率化を図ろうと考えられている方が最初に疑問に持つことの一つに、AIの学習データに必要なデータの数があげられます。

例えば、自社の商品やサービスを使うお客様から寄せられるクレームの仕分け作業や、商品画像の分類といったタスクをAIによって実施するには、学習データを用意して教師あり学習を行いAIモデルにタスクの実施ルールを学習させる必要があります。

ただ、学習に使うデータは人間が用意する必要があります。いざ、データを集めるとなるといったいどれくらいのデータを用意する必要があるのか、最初にAIプロジェクトに挑戦する方は気になるのではないでしょうか?

ちなみに、AIモデルの構築時にもっとも時間がかかる作業がこの学習データの収集と整理です。

オフィスのPCやタブレットといった端末、普段は目にしない業務システムのデータベース、時には紙に書かれた文書など様々なところに散らばっているデータをかき集めてきて、AIが理解できるデータに加工する作業は人がコツコツすすめる必要がり、AIによってデジタルに業務を推進するための、非常にアナログな作業になります。

多くの場合、AIモデルの学習を進めていく中で最初の見積もりよりも多くのデータ数が必要になり、プロジェクト実施中に学習データを追加することがほとんどですが、まず概算としてAI導入にかかるコストを見積もるためにプロジェクト開始時にどのくらいデータが必要か予測しておくことになります。

なかなか、定量的にこのAIモデルでこのタスクを実施するのに必要なデータ量はこれくらい!と定量的に捉えるのは難しいですが、このコラムでは、定性的にどのくらいのデータが必要になるのか考えるために重要となるデータの多様性について紹介します。

必要な学習データの見積もりに最も重要な要素はAIモデルで検出したい物の多様性

AIや機械学習について勉強し始めると、「このAIモデルは高性能だから通常より少ないデータ数で学習できる」や「学習データが少なければオーグメンテーション(人工的なデータ水増し)で増やせばいい」みたいな話を聞くと思います。

確かに、モデルによって必要な学習データの量はまちまちですし、タスクにあったAIモデルを選択すればより少ないデータ数で性能を引き出すことも可能です。

また、どうしても学習データが限られる場合は、データオーグメンテーションと呼ばれる手法を使って人が恣意的な加工によって学習データを生成することも重要になります。

ただ、これらのことを検討する前に、AIプロジェクト初期の段階で考えてほしいことがあります。

それは、AIに認識させるデータの多様性です。

この、多様性を考えることでAIで解決したい課題がどれほど難易度が高いものなのか検討することができます。

そして、多様性が高ければ多くの学習データが必要。逆に低ければ少ない学習データで問題ないというふうに必要なデータの判断基準が得られるのです。

架空の清掃会社のプロジェクトを例にデータの多様性について考える

このデータの多様性を明確に言葉で定義することは難しいです。ただデータを触りながらAIモデルを学習させているとなんとなく感じる概念だと思います。

しかし、実際にデータを要してモデルを構築し精度を改善するまでの1サイクルを回すには時間がかかるので、この記事では架空の清掃会社のAI導入プロジェクトを例にこのデータの多様性について考えて行きたいと思います。

A社は公園や駐車場といった公共施設の清掃業務を行っています。そして、清掃を依頼している現場の監視カメラの映像から汚れが画像処理AIによってある一定以上検出された場合、清掃員を自動的に派遣するシステムを構築するとします。

この場合、AIモデル入力はA社が清掃作業を請け負っている現場の監視カメラから取得した画像データです。

そして、AIモデルの出力は汚れの程度になります。この汚れの定義ですが、仮に汚れの程度を10段階評価としてAIモデルが出力し、評価が7を超えた場合清掃員がシステムによって自動的に派遣されるとします。

よって、学習データは清掃現場の画像と人間が定義したその画像に対する汚れの程度の評価のセットになりますね。

学習データにはAIの予測の正解ラベルとして清掃現場の画像に対して、「この画像は汚れの程度が6」、「こっちは3」のようにラベルを付けていきます。同じ現場の写真でも、取得したタイミングによって評価は異なるはずです。なので学習データには一つの現場に対して複数の画像が含まれている必要があります。

具体的な現場のイメージを写真として掲載したかったのですが、程よく汚れた道や公園の画像が見つかりませんでした。月曜日の朝の渋谷の路地の汚れの程度が9ぐらいとイメージしていただければと思います。

ここで、やっとデータの多様性の話になります。

AIモデルはゴミの量を判断する際に画像に写っている汚れを判断材料にします。ここで問題になるのが人間は汚れと言われればなんとなく汚そうなものは全部汚れと判断することができますが、AIははじめから汚いという概念を理解することはできないので、学習データにある情報しか汚れを汚れとして判断する手がかりがないということになります。

ここで、少し清掃現場における汚れを整理したいと思います。

まず最初に思いつくのが、地面に散らばったホコリや手すりや壁についたシミですね。あとは、深夜に誰かが書いたラクガキなんかも汚れのうちに入るのではないでしょうか。他にも道端に散らばった缶や吸い殻といったゴミ。さらに、苔や藻のような自然に増えいてく汚れもあり数えだすときりがないですね。

苔汚れをAIで評価する

そして、それぞれの汚れに対して、さらに大きさ、形、色、出現箇所の観点で細かく整理を行います。例えば苔や藻のような汚れも床を覆い尽くすような場合もありますし、壁や石の一部分だけに付着する場合もあります。緑色のこともありますが、茶色がかっている可能性もありますね。

更に、直線状に広がっている場合もあれば、放射円状に広がっている場合もあると思います。

他の汚れに関しても同様に色々なパターンがあります。それらすべてがデータの多様性になります。

AIは学習データに似ているデータがあれば正確に判断できる

AIモデルの学習を終えて学習データになかった未知のデータをAIに入力する場合、似たデータが学習した画像にあればAIは正確な判断ができますが、あまりにもかけ離れたデータに対しては誤った判断をする可能性が高いです。

例えば、先程の例で考えると、苔や藻による汚れは、大きさ、形、色、出現箇所の観点で様々なタイプの汚れが学習データにあったとします。その場合AIモデルは苔や藻による汚れに対して汚れの程度を正確に判断することができます。

しかし、落書きに関する学習データはほとんどないとします。すると、AIモデルがひどい落書きがあっても軽微な汚れと判断して、顧客からいくら待っても落書きが消されないとクレームが入る可能性がありますし、逆に地面に掘られた文字のように重要じゃない落書きに対して過敏に反応し、清掃員を送ってしまうかもしれません。

これはかなり主観的な指標ですが、種類、大きさ、形、色、出現箇所といった基準で分けた検出対象物のタイプに対して、それぞれのタイプに十分な数のデータがあればAIは高精度な判断を行うことができます。この十分な数がどのくらいなのかに関しては、データの性質やAIモデルの性能によって決まるので一概には言えません。

例えば、緑色で壁に広がった苔や藻の汚れしか学習データにない中で床に張り付いている茶色の苔や藻の汚れを評価するといった、学習データに存在していないタイプを判断することも可能ですがその場合は更に多くの学習データが必要になります。

忘れがちなのがデータの取得条件の多様性

ここまでは、検出したい、もしくは判断の手がかりになる物の多様性に関してまとめましたが、忘れがちなデータの多様性としてデータの取得条件の多様性があります。

上の清掃会社の例ですと、画像を撮影する清掃現場は環境は公園、公共施設の外壁、駐車場、道路と様々だったとします。

そうなると、公園ならこれくらいまでならそんなに汚れてないと判断できるけど、駐車場でこれくらい汚れていたら、かなり汚れているといったように撮影場所によって判断基準が異なるかもしれません。場所によって汚れの写りこみ方も違ってくる可能性が高いです。また汚れではない物体、例えば偶然写り込むのが人なのか車なのか、動物なのかによってもAIの判断は影響を受けます。

さらに、朝撮影した画像と夕方撮影した画像、夜撮影した画像で物体の見え方や移りやすい物体は異なります。また季節によっても、落ち葉の量や雪、光の加減が異なるのでリアルタイムで汚れ度合いを監視するには一定間隔で24時間365日分データを用意する必要があります。

データの多様性が高い場合は、まずは課題を制限することでAIの有効性を検証

こうして考えると、例としてあげたAIプロジェクトはデータの多様性が高いプロジェクトだということがわかります。

となると、最初から全ての現場でこのシステムを導入するのではなく、例えば担当してる現場が多い駐車場に絞ってまずはAIモデルを学習させてみるといった工夫が必要になるかもしれません。

さらに、監視する時間を正午のみなど限定すれば学習データとなる画像を撮影するタイミングを減らす事ができます。

ビジネスメリットは限定されますが、とりあえずある程度の精度が出せる部分に機能を絞って実運用をすすめます。

限定した機能で運用を進めている間に他の現場に対するデータも集め、徐々に対応する現場の種類を、駐車場から、道路、公園といったように拡大していきます。

結論、データの多様性を最初に整理するのは大事なこと

色々書きましたが、まずはデータの多様性を整理するのが大事だという話でした。

と、いっても目の前のデータが多様性が高いデータなのか、低いデータなのかというところは、AIの扱いになれてないとわかりにくいところだと思います。そんなときは、気軽にISIDのAITCに問い合わせください。これまで実施したプロジェクトの事例を踏まえてご支援させていただきます。

執筆
AITC AIコンサルティンググループ
徳原 光