Deep Learning

ディープラーニング(Deep Learning)概要

Posted

Deep Learningとは、十分なデータ量があれば、人間の力なしに機械が自動的にデータから特徴を抽出してくれるディープニューラルネットワーク(DNN)を用いた学習のことです。

 

Deep Learningと人工知能、機械学習の違い

今までの話で、人工知能と機械学習、Deep Learningと3つのキーワードが出てきて、すでに混同している方も多いとは思いますが、そこまで難しく考えることはありません。

3つのキーワードの関係は、大まかにいうと「人工知能>機械学習>Deep Learning」という構造になっています。

どれも違う技術ということではなく、図解すると以下のようなベン図になります。

良くある誤解ですが、Deep Learning自体がAIというわけではなく、人工知能の要素技術の1つという位置付けです。

 

 

 

 

 

人工知能(AI)

“AI“、最近よく聞くワードになりつつあると思いますが、巷では何にでもAIと使われがちで、学者の中でも定義は人それぞれで統一的見解はありません。

今回は「大量の知識データに対して、高度な推論を的確に行うことを目指したもの 」(一般社団法人 人工知能学会設立趣意書からの抜粋)という立場を取りたいと思います。

AIは、大まかに2つに分類することができます。

■弱いAI:人間の知能の一部を代替する、一見知的な限られた問題解決を行えるもの

∟特化型AI:特定の決まった作業を遂行するためのもの(囲碁AIなど)

∟汎用型AI:特定の作業やタスクに限定せず人間と同様の、あるいは人間以上の汎化能力を持ち合わせているもの

■強いAI:脳科学などを取り入れながら人間の知能や心の原理を解明し、人間の脳機能と同等の汎用的な知的処理が実現可能なもの。人間のように自意識や感情を持ち合わせているもの。

機械学習(ML)

機械学習とは、機械学習のパイオニアの1人であるアーサー・サミュエルによると、

” The field of study that gives computers the ability to learn without being explicitly programmed.”

と定義されており、日本語に訳すと「人が明示的に挙動を指示することなしにコンピューターに学習能力を与えること」 ということになります。

具体的に機械学習にも以下のような学習の仕方に種類があります。

■教師あり学習:正解(正しい出力)付きのデータを機械に学習させる方法

∟回帰:データを入力すると、出力として数値を返す方法(予測)

用途:株価予測など

∟分類:データを入力すると、出力としてデータの属性や種類を返す方法(ラベリング)
用途:メールのスパム検知など

■教師なし学習:正解を必要とせず、膨大なデータから自動的に算出した特徴量から構造や傾向、法則などを導くことで機械に学習させる方法

∟クラスタリング:データを入力するとそのデータのグルーピング結果を返す方法

■強化学習:自ら試行錯誤して最適な行動を見つける学習で、直近の目標を達成し、報酬を与えることで上達していく方法。

Deep Learning (DL)

■DNN(Deep Neural Network,ディープニューラルネットワーク)

ニューラルネットワーク(NN)というパターン認識をするように設計された、人間や動物の脳神経回路をモデルとしたアルゴリズムを多層構造化したもの。

■CNN(Convolutional Neural Network,畳み込みニューラルネットワーク)

局所的な情報の抽象化及び位置普遍性をもたせた順伝播型ニューラルネットワークを利用したアルゴリズム。DNNを2次元データに対応させたもので、画像に対して高いパターン認識能力を示します。

主な用途:画像認識

■RNN(Recurrent Neural Network,再帰型ニューラルネットワーク)

音声、動画データのような可変長のデータを扱えるようにするために中間層に再帰的な構造をもたせた双方向に信号が伝播するニューラルネットワークを利用したアルゴリズム。

DNNを横に繋いで時間変化する、連続的なデータに対応させたものですが、あまり長時間のデータには向きません。

また最近では、Google Translateなど自然言語処理にも使われています。

主な用途:音声認識、動画認識、自然言語処理

そもそもビジネスに導入したい際には、Deep Learningのアルゴリズム等を検討する前に、それが機械学習の方が適切なのか、DeepLearningの方が適切なのかでも変わってきます。