データ分析基礎知識

“分析力をコアとするデータソリューションカンパニー”
株式会社ALBERTが、データ分析にまつわる基礎知識をわかりやすく解説します。

ディープラーニングとは

ディープラーニングは機械学習の分野で、現在最も注目を集めている手法です。その理由は「機械が特徴量を決めてくれる」という点にあります。体重を予測する場合に使ったのは「身長」という特徴量でした。従来の機械学習手法においても、この特徴量の決定は人間が行なう必要がありましたが、ディープラーニングはこの部分をも機械が行なうことが可能です。なぜこのようなことが可能なのかを含めて、ディープラーニングを解説します。

ニューラルネットワーク

ディープラーニングの解説を始める前に、まずニューラルネットワークとは何かを解説します。
ニューラルネットワークとは人間の脳を模した機械学習手法です。人間の脳は100億以上のニューロンと呼ばれる脳細胞が互いに繋がり複雑なネットワークをつくり、お互いに信号をやりとりすることで人間の複雑な思考を実現しています。ニューロンは弱い信号では活動電位を発生しないので、他のニューロンに信号が伝わることはありません。ある閾値を超えて初めて活動電位が発生し、活動電位に駆動されたシナプスから隣の樹状突起に神経伝達物質が伝わることができるのです。この際の閾値は、信号が通ることにより変化し、経験や学習によりニューロン同士の繋がりが強くなったり、つなぎ変えが起きたり、消滅したりします。ニューラルネットワークではこのニューロン同士の信号のやり取りをモデル化し、多数の入力信号を重みづけて足したものを活性化関数という活動電位の役割をまねたものに渡し、その値がある閾値を超えた時のみ次の層への出力を行なうということをしています。入力への重みはデータから学習し、ノード同士の繋がりは強くなったり弱くなったりします。

脳細胞とニューラルネットワーク
図1.脳細胞とニューラルネットワーク

ディープラーニングとは

ディープラーニングとは多層のニューラルネットワークのことです。ニューラルネットワークは1940年代に研究が始まって以来2度のブームが起こりながらも、多層のニューラルネットワークでの学習が難しいことから1990年後半から2002年前半までは冬の時代と呼ばれていました。しかし、出力から入力を復元し、元の入力との差を最小にするようにパラメータの重みを変える自己符号化や、コンピュータ処理能力、特にGPU(Graphics Processing Unit画像処理に特化したCPUのこと)の性能向上などを機に、その有効性が見直され、画像認識や音声認識などの複数の分野でこれまでの機械学習手法を圧倒するパフォーマンスを示しています。

ディープラーニングの特徴

ディープラーニングの特徴は、入力信号が多数の隠れ層を経由するうちに低次の特徴量から高次の特徴量を自動的に抽出することです。従来の機械学習では人の手でコンピュータが学習するために必要な特徴量を探し出さなければなりませんでした(体重の予測における「身長」の例を思い出してください)。しかし、ディープラーニングを用いれば、例えば人の顔の場合、比較的浅い層では目や鼻などの小さなパーツを、深い層では人間の顔全体といった人間が人の顔を認識するのに用いるような特徴量を自動的に抽出できるのです。これまで人間の長年の経験や勘に頼っていた特徴量抽出をコンピュータが自動的にできることになったことによって、機械学習の活躍の場が一気に広がったといえるでしょう。

ディープラーニングの種類と強い分野

ディープラーニングにもいくつかの種類があります。2種類の代表的なモデルの特徴を、簡単に見てみましょう。

・畳み込みニューラルネットワーク(Convolutional Neural Networks:CNN)

各ニューラルネットワークの算出した有効な特徴量を、入力側から出力側へ伝播させる際に、伝播させるノードに制限をかけることで、誤差の伝播を少なくするよう考案されたディープラーニングモデルです。局所的なノードの特徴量を抽出する畳み込み層(畳み込み演算と同義で、特徴量×重みを計算し、全て足し算すること)と、それらをまとめあげるプーリング層(プーリングとはノードの平均値や最大値といった代表値に置き換えること)の各々が1つのニューラルネットワークで表現されおり、それを複数階層に結合しています。細かい部分の認識から少しずつ広い部分の認識を行なう特徴量を作り上げていくといった動きをします。 このモデルが一般的に画像認識に強力な性能を発揮することで良く知られており、Google社が発表して有名になった「コンピュータによる猫の認識」もこのモデルを使用しています。

・リカレントニューラルネットワーク(Recurrent Neural Networks:RNN)

再帰型ニューラルネットワークとも言われます。再帰型という名前の示すとおり、ある時点の隠れ層の特徴量を次の時点の入力として再利用します。そのために入力データに方向性がある場合(例えば時系列データなど)に適したディープラーニングモデルです。動画や音声なども時系列データであるため、これらの認識に高い性能を示します。

ディープラーニングの応用

ディープラーニングは元々人間の脳の働きをモデル化したものなので、その応用分野は限りなく広いと考えられています。しかしながら、膨大な教師データがある場合を除いて、ゼロからフルスクラッチのモデルを作っても高い精度は望めません。数万程度の教師データ量の時は、オープンソースとして公開されている学習済みモデルを使い、これをファインチューニングしながら分析精度を上げていくのが現在の通常の方法です。
最も応用例が多いのが画像認識と音声認識の分野で、顔認証や声紋認証ではすでに実用化されています。次いで文章の構文解析への研究が進んでおり、人間の問い合わせに対して最適な答えを推論させることが可能になっています。
ALBERTでもECサイトの商品画像に人手を介さずに自動でタグ付けを行なうサービスを既に開始しています。その他、動画認識やレコメンドエンジンへの応用など様々な分野での研究も進めています。

このページをシェアする

About

ALBERTについて