ディープラーニングの「教師なし学習」とは?教師あり・強化学習との違いと活用事例

ディープラーニングは今最も注目されている先端技術の一つですが、それにはこれまでの人工知能では難しかったことが可能になるという、実用性の高さが注目されているためです。今回は、そんなディープラーニングで実現する学習方法の教師なし学習や、具体的な使い方についてご紹介します。

ディープラーニングとは

ディープラーニング

まずは、人工知能開発において最も重要な技術とされる「ディープラーニング」について学びましょう。ディープラーニングは日本語で「深層学習」とも呼ばれ、人工知能の発展に大きく寄与している技術です。

機械学習の一種であるディープラーニング

ディープラーニングは全く新しい技術のように紹介されることもありますが、実際には機械学習の一種と言えます。

機械学習は大量のデータをプログラムに読み込ませ、そこから各データにおける特徴から必要な要素を学び、データの分析や自律的思考力を養わせるという方法です。多くのインプットからアウトプットする力を養うというのは、人間の学習方法にも近いものがあります。

そして、ディープラーニングはそんな機械学習をより人間的なアプローチで可能にし、効率の良いインプットを実現してくれる技術です。

ディープラーニングを支えるニューラルネットワーク

ディープラーニングが得意とするのは、自発的にインプットしたデータから特徴量を導き出し、独自の法則で正確な判断をこなせるようになる学習能力です。

ディープラーニングは、もはや人間では区別がつかないような共通項についても把握することができますが、それがいつも人間に可視化される形でアウトプットされるとは限りません。いわゆるAIのブラックボックス化と呼ばれる現象で、人では理解ができないものの、その結果を見れば驚きの精度を獲得できているという現象です。

このような抽象的な判断能力を実現したのが、ニューラルネットワークと呼ばれる技術です。ニューラルネットワークとは、人間の脳の動きを参考にして作られた数理モデルのことを指します。

人間の脳は何百億を超える神経細胞、通称ニューロンを有していますが、これらが違いに連携して電気信号を送り合うことで、物を考えたり、外的な刺激に反応する仕組みになっています。

ニューラルネットワークは、人工的にこのようなニューロンの動きを模倣しようという研究の成果です。ニューラルネットワークには「入力層」「隠れ層」「出力層」の三層構成となっており、層を通じてコンピューターは正しい答えを導こうと働きます。

ディープラーニングにおいては、このニューラルネットワークが持つ層の数を増やし、正答率を高めるべく設計されています。従来の技術では、層を増やすほど「過学習」と呼ばれる現象が発生しやすくなり、学習していないデータに対してめっぽう弱くなるリスクを抱えてきました。

しかし、近年は層を増やしても過学習のリスクは高まらないだけでなく、あらかじめ人間が特徴量を設定しなくとも、自ら特徴を見出すことができるようにもなったのです。これが、ディープラーニングの「教師なし学習」と呼ばれる学習プロセスです。

機械学習の3つのプロセス

機械学習

ここで、機械学習が主に採用している3つの学習プロセスについてご紹介しておきます。一般的には「教師あり学習」「教師なし学習」そして「強化学習」の3つが使われていますが、最もポピュラーなものが教師あり学習と呼ばれる方法です。

教師あり学習

教師あり学習は、人工知能の学習プロセスの中で最もポピュラーな方法です。あらかじめ答えが用意されているデータをコンピュータに読み込ませ、そのデータがどのような属性を持っているのか、正解を学習させるというものです。

データの特徴を表す特徴量を人間が指定し、答えとなるデータの目的変数を人工知能へ読み込ませると、この2つを参考にしながら精度の向上に貢献してくれます。

教師あり学習は、主に「分類」と「回帰」という2つの問題の解決に使用されています。

「分類」というのは、出力結果が何らかのカテゴリに属するとき、そのカテゴリが何なのかを当てるという問題です。たった今検知センサーを通過した果物はリンゴかオレンジか、顔認証を行ったのは男性か女性か、といった問題です。

一方の「回帰」ですが、こちらは出力結果に何らかの値が求められるときに使用します。来年の売り上げ予測や、不動産価値の算出など、具体的な数字の予測が欲しい場合には、回帰が採用されます。

どちらも汎用性の高い問題解決能力で、最も重宝される能力と言えます。

教師なし学習

続いては、教師なし学習です。教師なし学習というのは、教師あり学習とは対照的に、その名の通り答えとなる値やラベルが存在しないデータを読み込ませ、回答を導く方法です。

教師あり学習の場合、特徴量は人間が指定するため、コンピューターはその特徴量に合わせた判断をすれば良いだけです。一方、教師なし学習にはあらかじめ特徴量が与えられないため、求められているタスクに応じて、自ら特徴量を導き出し、答えを出力しなければなりません。

あらかじめ特徴量が与えられているかいないかという違いは、コンピューターにとってまったく異なるプロセスを命じることになります。回帰や分析といった教師あり学習に求められる課題についても、教師なし学習のアプローチでは行えないのです。

そのため、教師なし学習が使用される目的も、教師あり学習とは異なります。教師なし学習を行う目的としては、例えばデータのグルーピングです。与えられたデータが一体どの枠組みに当てはまるのか、特徴量を把握しながら各データを適切なグループへと導くことができます。

あるいは、異常検知のような外れ値への注目です。物事の正常と異常の区別を自ら導き、物体に何らかの異常を発見したときなどに活躍します。腐った果物が市場に出荷されるのを防いだり、不審物を持ってテーマパークに入場する人物を特定するといった使い方ができます。

教師あり学習、教師なし学習のどちらが優れているかというよりも、2つの学習方法を用途に応じて使い分けられるのが、ディープラーニングの能力です。

強化学習

ディープラーニングを用いた学習方法には、もう一つ強化学習と呼ばれるプロセスが存在します。

強化学習は、人工知能が自らトライアンドエラーを繰り返し、求められた結果に対して最大限の数値を出力しようと促す学習方法です。特定の目的に対して、長期的に見れば最もスコアを伸ばせる方法はどういった手段なのかをデータを与えることで学ばせ、深い思考力を身につけさせるというものです。

このような能力は、通常の検知センサーや顔認識機能といったAIには必要ありません。スコアを最大化することが必要な例としては、投資目的のAI運用や、将棋などのボードゲームにおけるスコアリング、自動運転技術などです。

強化学習においては、「環境」と「エージェント」という2つの要素が必要になります。

「環境」というのは、AIを取り巻くフィールドのような存在で、将棋で言う将棋盤そのものをイメージするとわかりやすいでしょう。「エージェント」というのは、環境下において主体的に行動する存在のことを指します。将棋でいう、プレイヤーに当たる人物で、盤上にある駒を操ります。

エージェントの行動に対し、環境が何らかの結果を常時提示することによって、AIはそのフィードバックからさらに優れた行動プロセスを自ら学習します。

実際にAIが将棋の勝ち方を学習している様子を見てみると、その挙動は実に不自然です。何しろ、何のノウハウも持たない状態から将棋を始めるため、将棋を見慣れた人であれば驚くかもしれません。

しかし、何度も対局を重ねていくごとに、その指し方に変化が訪れます。当初は支離滅裂な指し方をしていたAIも、何万回も対局を重ねることで、勝ちやすい方法を身につけるのです。

そうして幾重にも対局を重ね、最終的には最強の将棋AIが誕生します。これが強化学習の真価です。

教師なし学習を用いたアルゴリズム

教師なし学習

機械学習の主なアプローチを学んだところで、再び教師なし学習へ話を戻しましょう。教師なし学習の実践には、いくつかのアルゴリズムが使用されています。ここでは、その一例を紹介します。

GAN(敵対的生成ネットワーク)

GAN(敵対的生成ネットワーク)は、異なる2つのネットワークを用いて、相乗効果により高い学習効果を獲得する手法です。Generator(生成ネットワーク)とDiscriminator(識別ネットワーク)の2つに分かれ、お互いを敵対させて競争を仕向けます。

生成ネットワークは識別ネットワークを出し抜こうと、あえて偽物のデータを生成しようと学習します。対して、識別ネットワークは絶えず本物のデータと偽物のデータを比較検討し、その成否を判定する過程で、識別能力を高めます。

同時に相反するプログラムを使って学習能力を高めるというのはユニークなアプローチですが、注目度の高いアプローチです。画像識別や、動画の加工などに使われる技術です。

クラスタリング

クラスタリングは、特定のデータ群から命題に基づき、性質の近いデータ同士をグループ化する手法です。

教師なし学習におけるクラスタリングは、AIが独自の特徴量に基づいて判別します。りんごとみかんの違いを区別する場合、皮の色はもちろんのこと、ヘタの色や果実そのものの形状、さらには表面の質感の違いまで、多くの要素を比較対象とします。

AIによっては、このような人の目からはわからない要素も特徴量として検出し、クラスタリングに採用しているケースもあります。

主成分分析

主成分分析は、データ解析においてさまざまな変数が解析結果へ必要以上に介入しないよう、より少ない変数へと合成する手法を指します。これは次元の縮約とも呼ばれる方法で、データを可視化しやすく加工するアプローチです。

ディープラーニングの活躍が期待されている、ビッグデータのマイニングなどにおいて、課題となっているのがデータの持つ変数の多様性です。ビッグデータがそのままでは活用できないのは、変数が多すぎるあまりに持て余してしまうためです。

そこで、機械学習によって主成分分析を行い、AIに与えられた目的の達成に向けて、最も必要なデータは何かを判断し、要約することができます。

アソシエーション分析

アソシエーション分析とは、マーケティングや統計の世界で多用される分析手法の一つです。スーパーなどに導入されているPOSレジ向けに開発された分析方法で、記録されるデータの中から必要な情報を抽出するために使われます。

例えば、牛乳を購入するデータに注目し、牛乳を買う人にはどんな傾向が見られるのか、牛乳と一緒に買うものは何が多いのか、ということをアソシエーション分析から把握することができます。

小売店におけるビッグデータ活用の方法としては、非常にポピュラーな手法となっています。

教師なし学習の活用事例

自動運転

最後に、教師なし学習の活用事例について紹介しましょう。

GANによる人工歯のデザイン

2018年、カリフォルニア大学バークレー校と歯科先端技術研究所のGlidewell Dental Labの共同研究により、GANを活用した人工歯の生成技術を開発したことが発表されました。教師なし学習は人間には特定しづらい特徴量を見出す能力がありますが、GANを活用することで、人間では再現できないような自然な特徴を備えた、美しい人工の歯を生成することに成功しました。

義手や義足など、人工的な人体の再現技術は年々向上していますが、人間には意識できない特徴に目を向けられるAIを活用し、より自然な人工物の生成が可能になっています。

自動運転AIの進化

米カリフォルニアのスタートアップ、Helm.aiは、自動運転AIの開発にあたり教師なし学習を活用することで、大幅な運転技術の強化に成功したと紹介しています。

教師なし学習は高度な学習プロセスとなっている分、その効果にも期待が持てます。これまでは大量の学習データを自動運転実現のために必要としていましたが、教師なし学習の導入によって、より短期間・低予算での実現が可能になりつつあります。

まとめ

教師なし学習が人工知能にどのような変化をもたらす可能性があるかについて紹介してきました。教師なし学習は高度な学習プロセスですが、より人間的な思考力を持ったAIの実現には欠かせず、そのためにディープラーニングという技術も活躍します。

そして、高度な技術には優れたハードウェアも必要です。高性能なGPUの確保には相応の費用が発生しますが、クラウドGPUであれば、コスト削減の大きな手助けとなってくれるでしょう。

クラウドを用いたGPUを運用することで、オンプレミスと比べて様々な恩恵を受ける事ができます。具体的なメリットについては、以下の記事もご確認ください。

また、現在は様々なクラウドGPUサービスも提供が進んでいますが、大手クラウドサービスとなれば品質には優れているものの、その分コスト負担が大きくなる傾向にあります。

M:CPPは、大手GPUクラウドと比べて1/2以下の費用でありながら、最新のAMD製GPUの提供も可能です。お客様に合わせた最適なカスタマイズで、導入前の負担も最低限となるよう、サポート体制にも力を入れています。

M:CPPは、リーズナブルな価格でハイエンドなGPUリソースを、クラウド経由で提供しています。デートを始め、さまざまな現場で活躍できる高いポテンシャルを秘めたGPUクラウドです。一度ぜひチェックしてみてください。

MCPP