GTM-MML4VXJ
Skip to main content

English

Japan

  1. ホーム >
  2. コラム >
  3. オピニオン >
  4. >
  5. Deep Learning概説 ―AIの核となる機械学習技術の最先端―

Deep Learning概説
―AIの核となる機械学習技術の最先端―

2018年1月10日(水曜日)

最近、新聞やテレビでよく目にするDeep Learning。「名前は聞いたことがあるが、具体的に何ができて、どう使われているのだろう」「調べてみたが、数式が多くてよくわからない」そんな人が多いのではないだろうか。本コラムではDeep Learningの基本的な仕組みや応用について具体例を交えながら解説する。

2016年にDeepMind社のチームが開発したDeep Learningをベースとした人工知能が、世界トップレベルの実力を持つ囲碁のプロ棋士に勝利を飾った。一般に囲碁は、将棋やチェスと比べ圧倒的に選択肢が多く、複雑なゲームと言われる。手の数は約10360(10の360乗)パターンあり、この宇宙に存在する原子の数よりも多い。人工知能の開発者の間でも、人間を凌駕する人工知能の開発にはあと10年はかかるだろうと予想されていたが、DeepMind社のチームはDeep Learningを応用しこの難題を解決してみせた。

このような功績の背景にあったDeep Learningという技術。果たして、何がそんなに画期的で凄い技術なのか?

1.Deep Learningとは

そもそもDeep Learningとは何かを簡潔に定義しておこう。Deep Learningとは機械学習の手法(アルゴリズム)の1つであるニューラルネットワークを多層構造に構築したものである。機械学習とは人間が行っている学習機能をコンピュータで実現しようという技術であり、昨今のAIと名のついているシステムではこの機能が核になっている場合が多い(必ずしも機械学習が用いられているわけではない)。機械学習によりコンピュータはデータの中に潜む特徴を学習し、あたかも自ら成長しているように振る舞ったり、新たな未知のインプットに対応したり、時には人間の感覚を超えたアウトプットを見せる。機械学習自体は古くからある技術であるが、Deep Learningはこの機械学習の限界値を大きく引き上げた。よく混同されやすいAI、機械学習、Deep Learning等の関係を【図1】に示す。

【図1】AI、機械学習、ニューラルネットワーク、Deep Learningの関係
【図1】AI、機械学習、ニューラルネットワーク、Deep Learningの関係
機械学習:人工知能の要素技術の1つ、ニューラルネットワーク:機械学習のアルゴリズムの1つ、Deep Learning:多層に構築されたニューラルネットワーク

2.どのようなアルゴリズムか

突然だが、以下の画像を見たとき、あなたは何を考えるだろう?「白と黒の縞模様」、「たてがみ」、「大きな耳」などの特徴から無意識に「シマウマ」を認識するのではないだろうか。

【図2】認識対象とする画像の例(シマウマ)
【図2】認識対象とする画像の例(シマウマ)
「シマウマ」の画像。多くの人間は画像を見たときに、画像が「シマウマ」を描画していると無意識に認識するが、実際にはニューロンと呼ばれる神経細胞のネットワークにおいて認識プロセスが行われている。

人間が無意識のうちに「シマウマ」を認識するまでには、実際には以下のプロセスを辿っている。

  1. これまでに図鑑やテレビ、動物園等で「シマウマ」を目撃。
  2. 脳の中で「白と黒の縞模様」、「たてがみ」、「大きな耳」などの特徴を抽出し、対象が「シマウマ」であると記憶。
  3. 【図2】を見たとき、画像の特徴とこれまでに記憶した様々なものの特徴を照らし合わせ、最も類似するものを関連付け、対象が「シマウマ」であると判断。

実際には、人間は脳内でこれらのプロセスをニューロンと呼ばれる神経細胞のネットワークを用いて行っている。人間の脳内にはニューロンが1010(10の10乗)個以上あり、各ニューロンがシナプスと呼ばれる接合部位によってつながっている。ニューロンは入力される電気信号の閾値がある一定の量を超えると発火し、シナプスによって次のニューロンに電気信号を出力する。脳はこの動作の連続により信号の伝達を行い、「シマウマ」の認識を含めた様々な思考のプロセスを実現している。そして脳内の神経回路網とそのプロセスを模倣してコンピュータ上で再現したのが、ニューラルネットワークという機械学習ロジックである。

先ほどの「シマウマ」の認識を例に見てみよう。ここでは、対象がシマウマかどうか(シマウマの場合1、そうでない場合には0)の判断に「白と黒の縞模様:x1」、「たてがみ:x2」、「大きな耳:x3」という3つの特徴を入力として用いる。各入力(各特徴の尤もらしさを0~1の値で表現)はそれぞれの比重(シマウマを認識するうえでの各特徴の重要度を0~1の値で表現)を掛けたうえで足し合わされ、その合計が閾値を超えていれば出力は1、そうでなければ出力は0となる。例えば、各特徴の入力をx1=0.9, x2=0.6, x3=0.8、重みをw1=0.8, w2= 0.5, w3=0.6とすると、0.9×0.8 + 0.6×0.5 + 0.8×0.6 = 1.5 を計算して、閾値θと比較する。仮に閾値をθ=1.0とすると1.5(計算結果)> 1.0(閾値)となり、出力は1(画像が「シマウマ」を描画している)となる。今回は各入力の重要度を表す重みの値をw1=0.8, w2= 0.5, w3=0.6と定義したが、実際にニューラルネットワークを利用する際には、シマウマを認識するうえで最適な重みを大量のシマウマの画像から統計的に探索していく。このニューラルネットの重みを入力データから最適化していくプロセスのことを学習と呼ぶ。

【図3】ニューラルネットワークによる画像認識ロジック
【図3】ニューラルネットワークによる画像認識ロジック
機械学習の手法の1つであるニューラルネットワークにより、「シマウマ」を認識するまでの過程。対象がシマウマかどうかという判断に「白と黒の縞模様」、「たてがみ」、「大きな耳」という3つの特徴を入力とし、それぞれの比重を掛けたうえで足し合わせる。合計が閾値を超えていれば対象の画像が「シマウマ」であると判断する。

このように、脳内の神経回路網とそのプロセスを模倣し、コンピュータ上で再現したものがニューラルネットワークという機械学習ロジックであり、これを多層にして組み合わせたものの総称を「Deep Learning」と呼ぶ。シマウマの例では、各特徴とその入力の値を例として定義したが、「何についての特徴」を入力とし、それが「どのくらい尤もらしいのか」という点についてもニューラルネットワークで学習してしまおう、というのがDeep Learningの発想であり、こここそが、いかに画像から有用な特徴量を抽出するかについて人手で設計する従来の画像認識手法と大きく異なる点である。このプロセスを繰り返すことによって、最終的には画素単位の情報をもとに画像がシマウマかどうかという判断が可能となる。また、ニューラルネットワークの出力を【図4】の出力層のように複数設けることで、対象がシマウマなのか、猫なのか、といった、複数の動物の中から対象を識別する複雑な問題についても対応が可能となる。

【図4】Deep Learningの構成イメージ
【図4】Deep Learningの構成イメージ
中間層にニューラルネットワークを積み重ねることにより、画素単位の情報をもとにシマウマを認識することが可能となる。また、ニューラルネットワークの出力を上記のように複数設けることで、対象がシマウマなのか、猫なのか、といった、複数の動物の中から対象を判別する複雑な問題についても対応が可能となる。

3.Deep Learningによる革新

Deep Learning技術の発展はそれまでの機械学習の限界値を大きく引き上げ、第三次人工知能ブームの原動力となったことは確かである。今までのコンピュータの主な役割は決められた処理を高速にこなせることであった。現在のAIとしてのコンピュータは、ある部分においては人間の判断を代替したり、時には人間が気づかない事象を発見したりすることを期待されるようになってきている。

前出したDeepMind社が生み出したAI囲碁ソフト「アルファ碁」がトッププロ棋士に圧勝したニュースは人々の記憶にまだ生々しく残っているだろう。もはやルールが決められた知的ゲームでは人間は機械には勝てなくなってしまったと言っていいだろう。このアルファ碁もプロ棋士同士による棋譜16万局、3000万盤面の学習にDeep Learningを用いている。

画像認識でいえば、2012年画像認識の精度を競うコンテストであるILSVRC(ImageNet Large Scale Visual Recognition Challenge)において、トロント大学のHintonグループは8層の畳み込みニューラルネットワークを用い、1,000クラス識別の誤り率で2位以下のチームに10%以上もの大差をつけて圧勝した。それ以降、画像認識の手法は、人による特徴量設計に主眼を置いた従来のアプローチからニューラルネットワークを用いた手法へと一気に移行し、2015年にはついに人間の認識率を上回る結果を出すことに成功した。

言語処理においては2016年にGoogle翻訳がDeep Learningを用いた翻訳モデルにアップデートされ、劇的な精度向上を果たした。実際に使用してみるとその違いは明らかで、今までの翻訳結果はどうしても不自然な文章とならざるを得なかったのに対し、アップデートされたGoogle翻訳は実に自然な文章の生成を可能にした。これも元来の辞書ベース、ルールベース、古典的な機械学習手法による翻訳モデルではなく、大量の翻訳文書対を多層再帰型ニューラルネットワークで学習させることにより実現している。

その実力は音声認識分野でも発揮されている。この分野では2010年代以降、音波の特徴量抽出と文章予測にDeep Learningが使用されるようになり、誤認識率を10%以上下げることに成功した。現在では特定の環境下では誤認識率は5%程度まで達成できており、この数字は人間の認識率と同等の実力である。

上述のようにDeep Learningはその深く複雑なネットワークによる学習能力から、ルールが決められたゲームで人間に勝利するにとどまらず、画像や文書、音声の認識などの明確なルール付けが難しく、人間が自身の中にある感覚で認識、判断しているような問題設定に関しても人間と同等の能力を発揮するようになってきており、まさに人工知能としての振る舞いを再現するまでになってきている。

4.Deep Learningの難しさ

前節まででDeep Learningの概要と、それがもたらす革新に関して紹介してきた。現在空前のAIブームが訪れており、人間を超えるAIが出てきたり、いずれ多数の職業がAIに取って代わるとの予測がされたりするなど、AIに対する期待が大きく膨らんできている。ビジネスシーンにおいても、「とりあえずAIを使ってみたい」「自社内のデータをDeep Learningさせれば何かすごいことができないか」というように、漠然と期待する方もいるかと思われる。

確かにDeep Learningはデータ活用に革新を起こし、その応用分野も広く、現在も更なる進化を続けている。しかし実際には何でもかんでもDeep Learningをすればいいかというと、そうではない場合が多く、また実際の問題を適切に解くDeep Learningモデルを構築するには高度な数学、統計学、情報工学などの知識が必要となる。一言にDeep Learningとまとめられることが多いが、問題設定によって行われる処理は全く異なり、前出の囲碁、画像認識(【図5】)、翻訳(【図6】)、音声認識でもそれぞれで全く異なった構成のニューラルネットワークが使用されている。例えば画像認識では画像の一部分の特徴量を抽出する畳み込み層と特徴をまとめるプーリング層という役割の層を重ねて用いられる(【図4】)。翻訳では文書の単語列を時系列データとして処理するための再帰型ニューラルネットワークが用いられ、膨大な単語空間を符号化、複合化する層と組み合わされる(【図5】)。

【図5】ILSVRC2014の画像分類問題で優勝したGoogLeNetモデル
【図5】ILSVRC2014の画像分類問題で優勝したGoogLeNetモデル
畳み込み層(青)、プーリング層(赤)、全結合層(黄)と呼ばれる層を複数組み合わせ構成されている。
(出所:Going deeper with convolutions https://arxiv.org/pdf/1409.4842.pdf

【図6】Google翻訳で用いられているネットワークモデル
【図6】Google翻訳で用いられているネットワークモデル
事前情報を記憶する層、文書の需要箇所を学習する層、次元縮約のための層を組み合わせている。
(出所:Google’s Neural Machine Translation System: Bridging the Gap between Human and Machine Translation https://arxiv.org/pdf/1609.08144.pdf

Deep Learningはただ単に中間層を深くすることで問題を解決可能にしたわけではない。深く重ねられたニューラルネットの各層には特徴量を抽出する層、次元縮約をする層、事前情報を記憶しておく層、誤差を評価する層など、それぞれ異なった役割があり、その構成やパラメータは入力データと解きたい問題設定により緻密に設計しなくてはならず、そのノウハウは一朝一夕で身につけられるものではない。とりあえず今あるデータをDeep Learningに通してみようくらいの感覚では良い結果は得られず、適切なネットワークとパラメータを設定できないと、その結果は既存の機械学習手法に劣るものとなる注1。流行のAIやDeep Learningを活用してみたいという場合、その本質はデータ分析の発展であり、まだまだ我々人間がデータの特性を見ながら試行錯誤しなくてはいけないことを再度認識して取り組んでほしい。

とはいえDeep Learningは今までのコンピュータの可能性を押し広げ、我々に新たな体験を提供してくれており、その可能性は今なお発展の余地を残している。それは単に機械学習のアルゴリズムの研究分野としての発展だけでなく、それを支えるコンピュータの演算能力の進化とインターネットの発展による学習データの増加にも支えられている。2045年までに技術的特異点(シンギュラリティ)が起こるとの予言もあり、その真偽は別としても、それほどまでにこの分野は今なお目覚ましく発展し続けている。Deep Learningが今後も我々に様々な革新を提供してくれることを期待せずにはいられない。

注釈

(注1):富士通総研ではDeep Learningを用いた言語処理、画像認識技術の研究開発、またその業務適用事例を多く持ち、経験豊富なデータサイエンティストによるデータ活用視点のコンサルティングサービスを展開している。

関連サービス

【AI活用・ビジネスアナリティクス】

関連コンテンツ

課題認識とデータ分析によるAI活用の可能性


佐藤 文孝(さとう ふみたか) 佐藤 文孝(さとう ふみたか)
株式会社富士通総研 ビジネスアナリティクスグループ シニアコンサルタント
データサイエンティストの視点により、様々な課題をデータ分析で解決に導くAI活用のコンサルタント。

堀田 一真(ほりた かずま) 堀田 一真(ほりた かずま)
株式会社富士通総研 ビジネスアナリティクスグループ
製造業を中心に、自然言語や画像、動画などを対象とした組織内データ活用のモデリング・システム開発に従事。