近年、新たな技術革新として話題に上がるAI(人工知能)を支えている技術がニューラルネットワークです。
本稿では、AIで「魅力」の予測や向上を図る「魅力工学」を研究し、さまざまな企業と共同研究を行っている、東京大学大学院情報理工学系研究科の山崎俊彦准教授監修のもと、ニューラルネットワークについて詳しく解説します。
山崎俊彦氏
東京大学工学系研究科電子工学専攻修了。工学博士。 現在、東京大学大学院情報理工学系研究科電子情報学専攻准教授。 2011~2013年まで米国・コーネル大学 Visiting Scientist。 ビッグ・マルチメディア・データを用いた魅力工学の研究に従事。
ニューラルネットワークとは?

Photo by Ahmed Gad on Pexels
ニューラルネットワークとは、脳の神経回路の一部を模した数理モデル、または、パーセプトロンを複数組み合わせたものの総称です。
ニューラルネットワークの歴史

ニューラルネットワークの歴史は1940年代までさかのぼります。
1943年、人間の脳を模したモデルが提唱され始めました。なかでも、1957年に、米国の心理学者フランク・ローゼンブラット氏が考案した「パーセプトロン」(後述)は、人間の視覚や脳の機能を模したニューラルネットワークとして注目を集め、1回目のAIブームとなりました。
しかし、1960年代に、マービン・ミンスキー氏が「*線形分離不可能な問題を学習できない」弱点を指摘。またその後、冷戦下での安全保障上の要請から人工知能による機械翻訳を推進していた米国政府が機械翻訳は当分成果がある見込みはないと判断し、研究費用を打ち切りました(ALPACレポート)。これにより、人工知能への失望感が広がり急速に勢いを失い、AI冬の時代を迎えます。
そして1986年、米国の心理学者デビット・ラメルハートらにより「誤差逆伝播法」が開発され、2回目のブームが起きます。誤差逆伝播法では、パーセプトロンを発展させたマルチレイヤーパーセプトロン(後述)が用いられ、より複雑な学習をこなすことが可能になりました。
しかし、インターネット登場以前の当時は、機械学習に利用可能なデータが少なかったため、**多層ニューラルネットワークの学習精度がなかなか向上せず、また学習そのものも安定しなかったためブームはまた下火に向かいました。
その後、2006年にトロント大学のヒントン教授らが開発した***「オートエンコーダ」という技術により、ニューラルネットワーク自身が特徴を捉えることが可能になりました。彼らは、畳み込みニューラルネットワーク (Convolutional Neural Networks, CNNs)を用いて2012年にILSVRCという画像認識コンテストで2位以下に圧倒的な差をつけて1位を取ったほか、同年にMerck Molecular Activity Challengeという化合物の活性予測精度を競うコンテストでも優勝。これは、化学の知識を全く持たないグループがニューラルネットワークを使っただけでほかのグループを打ち負かしたと話題になりました。
この技術と多層ニューラルネットワークを用いた学習方法は「ディープラーニング」と呼ばれ、3回目のAIブームのブレイクスルーとなり、現在に至っています。

*ふたつの集合が二次元平面上にあるとき、それらの集合を一本の直線では分離できない場合(上図)
**「入力層」「隠れ層(中間層)」「出力層」で構成されるニューラルネットワーク
***ニューラルネットワークの出力層の値が入力層と同じになるように、重みのパラメータを調整する手法。途中の層で次元数を落とす処理が入るため、入力の値を再現するのに本質的な情報を残したり、逆にノイズを除去したりする働きがあると言われている。
機械学習やディープラーニングとの違い・関係性

ニューラルネットワークとあわせて耳にすることが多い単語が「ディープラーニング」や「機械学習」です。混同されたり誤解されやすい、両者の違いについて解説します。
機械学習とは?
機械学習とは、コンピューターが大量のデータを学習し、分類や予測などのタスクを遂行するアルゴリズムやモデルを自動的に構築する技術です。
機械学習を機能させる技術・アルゴリズムとして、ニューラルネットワーク以外にも、
- ニアレストネイバー法
- 決定木
- ランダムフォレスト
- サポートベクターマシン
など、さまざまな手法が存在します。
ディープラーニングとは?
ディープラーニングとは、ニューラルネットワークを多層に結合して表現・学習能力を高めた機械学習の一手法です。
単純に多層にするだけでは、表現力不足や過学習などの問題がありましたが、Dropout法(後述)やReLU(後述)など、数々の工夫とビッグデータの助けにより、それらの問題が解決されました。
現在、ニューラルネットワークのアルゴリズムとしてもっともよく用いられている手法です。
ニューラルネットワークの仕組み
Photo by Gerd Altmann on Pixabay
ニューラルネットワークは、どのような仕組みで動いているのでしょうか。ここでは、過去3回のAIブームで、それぞれ用いられてきたニューラルネットワークを順番に解説します。
パーセプトロン

1回目のブームをけん引したのが「パーセプトロン」という技術です。
まず、入力層にデータを入力し、そのデータを認識をするための指標である*特徴量を入力します。その入力に対し、神経細胞間の接続強度に相当する重み w1 w2‥を掛けたものを、出力層のニューロンに入力します。出力層のニューロンは、この入力を足し合わせたものを**活性化関数に通し、最終的な結果を出力します。
わかりやすくこれを二次元で考えてみます。
――山崎
「直線で○と☓を分類する際に、最初はランダムに線を配置し、ここは違うから少し動かす、また違うから少し動かす、というように、数学的に最適な方法で境界線を動かします。これをすべて正しく学習させる、もしくは、回数を設定しそこに達するまで学習を繰り返すことで、正答率を上げます。これが「パーセプトロン」と呼ばれる初期のニューラルネットワークです」
*学習データにどのような特徴があるかを数値化したもの
**ニューラルネットワークにおいて、線形変換をした後に適用する、非線形関数もしくは恒等関数

しかしこれでは、複雑な分布を持つ(具体的には線形分離不可能な)問題については適用ができず、次のマルチレイヤーパーセプトロンの登場を待たないといけません。
マルチレイヤーパーセプトロン

2回目のブームをけん引したのは、入力層と出力層の間に隠れ層を取り入れ、多層にした「マルチレイヤーパーセプトロン」でした。この技術により、「パーセプトロン」では処理ができなかった非線形分離も可能になり、複雑な処理が可能になりました。
――山崎
「解くべき複雑な数式を分解し、シンプルな最適化問題の組み合わせににしていく。そのとき、最後の解くべき数式を最適化、次に最適化したものを最適化……と後ろから順に解いていけば、楽に最適化できるということが提案されました。これを『誤差逆伝播法』と言います」
しかし、この技術も、微分を繰り返すことにより、誤差がコンピューターの認識範囲を超え、「誤差がない」と判断する「ゼロ喪失」などの問題が発生し、学習がうまく進まなくなりました。
さらに、当時の技術では、層を3、4、5層と複雑にすることで、学習データに適合しすぎてしまい、学習データとは異なるデータでは、正答率が低くなる「過学習」が発生しやすくなりました。
――山崎
「多少の間違いを含んでもわかりやすさを優先して説明すると、コンビニに行くためだけに、スーパーカーで行くイメージかな、と思っています。スーパーカーを動かすには、複雑で完璧なチューニングが必要であるが、めんどくさくなりメンテナンスを怠ると車自体が動かない、という具合です」
このような欠点により、2回目のAIブームも下火になりました。
ディープラーニング
マルチレイヤーパーセプトロンまでは、入力層に人間が指定した特徴量を入力していました。しかし、ディープラーニングは、層を複数にすることで、特徴量そのものをコンピューターが判断できるようになりました。
――山崎
「たとえば、層が複数あると、ある層は色について考える、ある層はエッジ(境界線)について考える、のように分解して考えられます。実際に、各層のネットワークが画像認識においての画像の何を見ているかフィルタの可視化を行ったところ、初期のレイヤでは色や模様などより低次元の特徴を、後段に行くほど人の顔っぽい形などより高次で概念的な特徴をつかんでいるとする報告もあります。
何が重要なのかディープラーニングが自動的に学習できるようになり、人間が考えた特徴量を用いた場合よりも認識精度が高くなった要因のひとつです。しかし、特徴量もコンピューターが考えるため、出力の根拠がブラックボックス化してしまうという欠点もあります」
Pre-train & Fine-tune
ディープラーニングの学習手法のひとつとして、「Pre-train & Fine-tune」があります。
「Pre-train & Fine-tune」は、事前に一般の画像情報を学習させ、それを専門分野の画像に転移して学習させることで、解析を可能にする学習手法です。上の画像の例は、イラストに描かれた人や犬の検出を行う例です。イラスト画像に対する学習データはあまり存在しません。
それに対し、自然画像に対する学習データは多く存在します。そこで、まず自然画像で学習し、さらに二段目では自然画像をイラスト風に画風変換したもので再学習し、最後にイラストを使うという多段階のFine-tuningをしています。
――山崎
「たとえば医療画像を解析したいとき、医療の画像だけでは、学習のために十分な量を集めることが困難です。ゆえに、まずインターネット上のさまざまな画像を学習させ、一般的な『画像とはどういうものか』、つまり人間で言う『常識』を身に付けさせます。これを基本とし、専門知識として医療画像を追加で学ばせることで、専門的な画像を解析できるようになります」
現在のニューラルネットワークの学習手法
Photo by felix_w on Pixabay
このように、AIにおけるさまざまな技術の発展により、現在は3回目のAIブームに突入しています。現在のAIの主要な手法であるニューラルネットワークには、さまざまな学習方法が考案されています。そのなかで、主に活用されているふたつの例をご紹介します。
Dropout法

Dropout法は、「一度学習したネットワークの一部をわざと一度忘れさせる」学習法です。具体的には、ニューラルネットワーク中の重みの一部(たとえば半分)を強制的に0にリセットさせて再度学習を行います。
――山崎
「人間も何度も忘れては勉強するということを繰り返して知識が身につくように、Dropout法では、一度学習させた内容の一部をあえて忘れさせ学習、また忘れさせて学習……を繰り返します。現在の視野を一度忘れさせ、新しく広い視野で、また学習させる方法です。これにより局所的最適解に落ちることをできるだけ防ぎます」
確率的勾配降下法(SGD)
確率的勾配降下法とは、確率的に高く示された「最適化する」方向へ進んでいく学習方法です。
――山崎
「たとえば、樹海で遭難したとします。山の形の全貌がわからないのでどの方向に進めば助かるのかわからない。そんなときに、(多少のランダム性を許して)少しずつ動いては、助かる確率が高いと思われる方向へと進んでいくようなものです」
活性化関数(ReLU)

ReLUとは、負の値のときは0を出力し、正の値のときはその値をそのまま通す、最適化に用いられる活性化関数です。
この関数を通すことで、ニューラルネットワークの精度が上がると考えられており、研究が進められています。
代表的なニューラルネットワークの種類
ニューラルネットワークにはさまざまな種類が存在します。ここでは「CNN(Convulutional Neural Network)」「RNN(Recurrent Neural Network)」をご紹介します。
CNN(Convolutional Neural Network)

CNNとは、入力層と出力層の間に、入力データの特徴量を捉える「畳み込み層」と、その特徴への依存性を減らす「プーリング層」を加えたニューラルネットワークのモデルです。
主に、画像認識に用いられています。また、言語処理や音声処理においても何らかの形でデータを2次元行列の形にしてCNNを適用することもあります。
まず、畳み込み層において、画像などのデータから特徴を捉えます。プーリング層は、対象の特徴の位置が入力データのなかで多少ずれた場合も、同じ特徴として認識する機能を持ちます。このふたつの層をひとつのペアとして繰り返し、最終的に、画像全体から抽出された特徴を組み合わせることで、対象物を認識します。
RNN(Recurrent Neural Network)

RNNとは、不定長かつ順序関係のあるデータをより自然に扱うことができるニューラルネットワークのモデルです。
CNNとは異なり特徴的なのは、隠れ層での出力値をそのまま入力値として使うフィードバックループの機能を有していることです。主に自然言語処理や音声処理のような時系列データに多く使用されます。
たとえば、RNNの言語モデルに「寒い日は」と入力すると、その後、「続きます」「終わります」などの単語を、出力可能性が高いとして予測します。
山崎先生監修のAI研究・ビジネス活用事例
Photo by Gerd Altmann on Pixabay
今回、記事の監修をしていただいた山崎先生が研究されている「魅力工学」の分野で、ニューラルネットワークを使ったAIが活用されている例を4つ紹介します。
魅力工学とは、画像や写真といったデータに人工知能を用い「心に刺さる」「映える」といった魅力を定量化し、その要因を解析したり、増強したりする研究です。
プレゼン解析「プレトレ」

「プレトレ」とは、自分のプレゼンが視聴者にどう受け取られそうかを予測・解析できるサービスです。
内容や言葉遣いなどの言語情報、テンポや抑揚などの音声・音響情報を学習させ、14種類の評価尺度から、プレゼンテーションが観衆にどう受け取られるかを解析します。
以下の画像は、スティーブ・ジョブズ氏とビル・ゲイツ氏のプレゼンを解析した例です。

ジョブズのプレゼンは、「Funny(面白い)」に加え、ちょっとジョークがきついので「obnoxious(不快な)」、さらにはさすがジョブズと言いたくなる「Informative(情報豊かな)」「Fascinating(ワクワクする)」「Ingenious(天才的な)」といった項目がみられます。
対して、ビル・ゲイツのプレゼンは、ジョブズのような「Fascinating」や「Funny」といったきらびやかな印象はないものの、ジョブズにはない「Persuasive(説得力がある)」や「Courageous(勇敢な)」のような印象を与えると解析されています。
スライド制作支援
この実験は、プレゼンのためのスライドをAIに読み込ませ、「人間の目がどこに誘導されやすいか」や「改善すべき点はどこか」を可視化し、デザインの改善を支援する研究です。
以下の例は、生まれてはじめてスライドを作る参加者が、アインシュタインが何者かを説明するスライドを作成した経過です。

オリジナルのスライドでは文字のみの構成で、これをVisual Importance Map [Bylinski, UIST17]というAIを通してヒートマップで表すと、全体的に赤く表示され、視線の誘導が上手くできていないのではないかということが推察されます。そこで改善した中央のスライドでは重要なキーワドをハイライトしたり行間を空けたりして、そこに人間の目が誘導しやすく改善されています。
さらに、中央のスライドに改善点可視化のシステムを用いて見ると、ポイントが如実に現れます。中央スライドの例では、文字が詰まっているところ、不自然にスペースが空いているところが指摘されているようです。この結果を踏まえ、被験者が改善したものが、以下のスライドです。

最初のスライドに比べ、写真や文字に色が入り、行間も整っていて、見やすい資料に改善されています。
マッチングサービス「Pairs」

マッチングサービスの「Pairs」では、絞り込み検索に漏れた人同士を、AIがマッチングさせる機能を共同研究しており、開発が進んでいます。
条件検索では、年収や職業、学歴などを指定し絞り込むと、「素敵」と思える人も検索結果から漏れてしまいます。そこでAIが、条件には漏れたがうまくマッチングが成立しそうな人を示して可能性を広げてくれるという機能です。
穴場の観光地推薦

世界中の観光地のなかで、訪問者数が少ないものの、いいね数が多く、インスタ映えする写真が撮れる場所をAIが抽出し、推奨してくれるものです。
たとえば、ニューヨークでいうと、ハドソン川を渡ってニュージャージー側へいくと、マンハッタンの北から南まで一望できるいい写真が取れる場所、のように推薦してくれます。
技術で「匠」になる基礎をサポートしたい

最後に山崎先生の研究における考えについて聞きました。
――山崎
「現在のAIは、すごいと言われる反面、少しノイズを入れるだけで、簡単にミスをすることがあります(敵対性的画像生成と呼ばれます)。たとえば、自動運転において、止まれの標識で、ノイズによる誤認識が入り、車が止まらないと非常に危険です。現在我々は、これの原因と防ぎ方について、興味深い研究をしています」
あわせて、山崎先生のAI研究におけるポリシーについてもうかがいました。
――山崎
「僕は、AIにすべて任せることには興味がありません。人間の能力を高める、その手助けとしてAIを使うことに非常に面白さを感じます。
たとえば、さまざまな業界の一線で活躍する「匠」の技術力やそのセンスは可視化ができず、「匠」の領域にたどり着くには、大きな努力と時間をかけたトレーニングが必要です。その必要な基礎能力を得るために、3年のトレーニングが必要だとすると、僕はそこに技術を用いて、1年で得られるように支援したいと考えています。営業マン、家電量販店では販売員により売り上げが十倍違う場合もあります。
そのような初心者を0点から70点までの「匠」になる基礎を技術でサポートし、70点から上の「匠」の領域に早く人間がたどり着けるよう、支援したいと考えています」