近年さまざまな企業でディープラーニングの導入・普及が進んでいる。しかし、多くの企業は、ディープラーニングを活用する上で必要な2つの物を用意するところでつまづく。1つは膨大な量のデータと、データを処理できる能力を有するGPUなどの高価な計算機だ。
一方で、少量のデータから特徴を抽出し、学習と推論を行える技術がある。それが今回紹介するスパースモデリングだ。スパースモデリングについて、京都のAI企業、HACARUSのデータサイエンティストである増井隆治氏に話を聞いた。
中学生の頃からプログラミングに興味を持ち、鈴鹿高専で情報学の基礎を学び、その後京都大学に編入し、より高度な数学を学ぶ。大学の実験で仲良くなった大関先生の紹介でHACARUSでアルバイトを始める。3年間のアルバイトの後、HACARUS初の新卒として入社。データサイエンティストの仕事に邁進している。
スパースモデリングとは?スパース性から紐解くその仕組み
スパースモデリングとは何なのか。それを理解するには、まず「スパース性」という概念を理解する必要がある。
そもそもスパースとは、英語で「すかすか」という意味だ。スパースモデリングは、あらゆるものごとに含まれる本質的な情報はごくわずか=すかすかであるという仮定(スパース性)に基づき、入力から出力に対して「どこが本当に必要な情報なのか」を見極め、抽出する。
では、どのように本質を見極めるのか。その答えとなるのが、「データ間の関係性を特定する」という特徴だ。出力を行うとき、スパースモデリングでは入力となるデータそのものに注目するのではなく、入力と出力の関係性を洗い出す。データ同士の関係性に注目することで、入力データ自体の多寡や質は関係なくなり、結果的に必要なデータは少量で済む。
「スパースモデリングは、一見複雑そうな現象を『シンプルに説明できる』という仮定に基づいて分析する技術です。たとえば猫と犬を判別する際にデータが少なかったとしても、目や耳など、どの部分が特徴として効いてくるのかを分析できます」
スパースモデリングの強み・弱み。ディープラーニングとの違いは?
スパースモデリングは、どのようなケースにおいて有効なのだろうか。それはディープラーニングと比較するとわかりやすい、と増井氏は言う。
「昨今ディープラーニングの普及が進んでいますが、ディープラーニングは完璧ではなく、いくつか問題点もあるんです」
増井氏が教えてくれた問題点は以下の3つだ。
1つ目は、データが大量に必要なこと。ディープラーニングでは、データの関係性でなくデータのみから学習を行うため、データがあればあるほど良い出力が期待できる。
つまり、データの量ができることの複雑さに比例する。そのため、データが少ない場合は期待していた出力が得られなかったり、分析の精度が下がったりする。また、計算過程をシンプルにすればするほど、できることの複雑さは下がり、単純な推論しかできなくなっていく。
そんなとき、スパースモデリングが有用となってくる。データ同士の「関係性」に注目するスパースモデリングでは、大量のデータは必要ない(もちろん、あるに越したことはない)。
スパースモデリングを表すもっとも重要な数式。第一項は「説明できる」、第二項は「シンプルに」という意味で、この数式を使ってデータに潜む本質を抽出する。
2つ目はマシンリソースの問題だ。ディープラーニングを扱うには、GPUなど大量の計算を回せるマシンが必要となる。前述の通り、スパースモデリングは大量のデータを必要としないため、FPGAなどのチップでも学習と推論を回せる。そのため、ディープラーニングと比較して消費電力が安上がりな面があるという。
また、ディープラーニングでは膨大なデータに対してアノテーション(正解データをラベル付けする作業)が必要となるが、これもスパースモデリングでは少量のデータに対するアノテーションで済む。したがって、データ準備にかかる時間、工数を削減できる。
「とあるプロジェクトで、GPUを4枚使い、ディープラーニングで学習に100分かかっていたAIモデルがありました。これと同等の精度を、スパースモデリングを用いて、CPUのみで、学習時間20分で達成しています。CPUのみなので消費電力も80%ほど削減できました。
もちろん一般的に必ず良くなるという話ではありませんが、注目すべき数字です」
3つ目は、過程説明が容易な点だ。ディープラーニングは大量のデータから特徴を抽出するという特性上、計算の過程が非常に複雑だ。そのため、解釈可能な形での説明が難しく、ディープラーニングの計算過程はブラックボックスとも言われている。
対してスパースモデリングでは、「スパース性」を利用することで、できるだけ特徴を単純に解釈する。「入力と出力の関係をなるべくシンプルに説明するので説明可能な点が強み」だと増井氏は語る。
「結局、ディープラーニングでは判断に対する『なぜ?』が導けません。OKかNGの2択だけなんです。スパースモデリングのような説明可能なAIであれば、なぜ異常が出たのかがわかり、原因を導けます」
具体的な使用領域──医療、製造、宇宙の事例
具体的にスパースモデリングが向いている領域は製造業や医療分野だという。
たとえば、医療分野ではMRI撮影にスパースモデリングが使われている。MRI撮影には、磁石を用いて体内の情報を収集し、そこから体内の断面図を生成する。しかし、鮮明な画像を生成するには、長い時間をかけて撮影する必要があり、患者に負担がかかる。
かといって短時間で撮影すれば画像は荒くなる。そこで、画像のスパース性に注目し、体内の画像で本当に重要な部分を抽出することで、より短時間で鮮明な画像を再現できる。
MRI 出典:パブリックドメインQ
ビジネスに近いところでは、製造業の外観検査でスパースモデリングが活躍している。外観検査でディープラーニングを用いるには、良品、不良品を判定するために大量の異常データが必要だが、そもそも用意するのが難しい場合もある。
そこでスパースモデリングを使うことで、データの少なさをカバーでき、かつ軽量なのでチップなどエッジにも組み込むことができる。これらの技術はHACARUSの外観検査サービス「SPECTRO」にも使われているという。
ほかにも、変わったところでは2019年4月に話題になったブラックホールの撮影にも、スパースモデリングは使われている。
エッジAIとも親和性が高い。ディープラーニングでは計算量が必要な特性上、自前で計算機を用意しない場合はクラウドで学習を行うが、工場などでは情報流出のリスクから、そもそもクラウドに接続できないケースが多い。
スパースモデリングは軽量のため、エッジにモデルを置ける。チップなどにも組み込めるため、工場現場などでも使いやすいという。
ディープラーニングのためにデータ収集にリソースをつぎ込むのは本末転倒
ここまでスパースモデリングについて聞くといいことづくめだが、「データ量がそろっている状況では、スパースモデリングの精度はディープラーニングに負ける」と増井氏は語る。
「データ量がある状況では、スパースモデリングはディープラーニングに精度でかないません。ただ、現実世界でデータと計算機が揃っている理想的な状況は珍しい」
第4次AIブームと言われているものの、ディープラーニングに必要なデータをどう収集し、蓄積するかは、企業がAIプロジェクトを行う際のボトルネックになっている。外部パートナーと協力しようとしても、機密上、自社のデータを外部パートナーに委託できない企業も多い。
つまり、リソースが足りないからAIを活用し、本来の業務を効率化したいのにも関わらず、データ収集に業務を割かなければいけない現状は、本末転倒ともいえる。そのような場合は、ディープラーニングではなくスパースモデリングの活用も選択肢のひとつだ。当たり前だが、自社の課題に適合する技術を使えばいい。
「ディープラーニングはまさに今、さまざまな企業が取り組んでいるので知見を活かしやすい一方、スパースモデリングはまだまだ普及がこれから、というのもディスアドバンテージでしょう。そこはこれから我々のような会社が広めていきたいと思っています。
現在、AIブームの恩恵を享受できていないような業界が、より本質部分に工数を割けるようにするために、スパースモデリングも活用し課題解決をしていきたいと思っています」