ディープラーニングの種類まとめ

ディープラーニングは、その高い精度や応用性により、画像認識、音声認識、自然言語処理などのさまざまな分野で注目されています。本記事では、ディープラーニングの4種類の手法(畳み込みネットワーク、再帰型ニューラルネットワーク、オートエンコーダ、敵対的生成ネットワーク)についてまとめてみました。

ディープラーニングとは

ディープラーニングは、日本語で「深層学習」と呼んでいますが、ディープラーニングとは一体何でしょうか。ディープラーニングが何なのかを学ぶ前に、重要な2つのキーワード:「AI」と「機械学習」について、まずここで確認しましょう。

AIは、「Artificial Intelligence(人工知能)」の略称

「人工知能」と呼ばれるAIですが、AIとは何を指すのでしょうか。一般的には「人間のように考えるコンピューター」とか、「人間と同様の知能ないし知的な結果を実現したもの」とか、さまざまな表現による説明がありますが、AIが「考える」という目に見えないものを対象にしていることから、特定の定義付けをおこなうことが難しいと言えるかもしれません。そこで、今回はAIを「知的な機械、特に、知的なコンピュータプログラムを作る科学と技術」として捉え、話を進めてみることにしましょう。

AIは「汎用人工知能(または強いAI)」と「特化型人工知能(または弱いAI)」の2つに分類されます。汎用人工知能(Artificial General Intelligence)とは、人間のようにさまざまな問題を処理できるAIのことで、強いAIとも呼ばれています。例えば、想定外の問題が生じた場合でも、人間は過去の経験や知識を基にその問題を解決していくでしょう。汎用人工知能とは、このように、人間と同じような問題処理能力を持つAIのことですが、そのようなAIは未だ実現していません。それに対し、特化型人工知能(Narrow AI)は、弱いAIとも言われていますが、特定の知的作業領域に限定し、人間のような、あるいは人間以上の能力を発揮できるAIのことです。画像認識、音声認識などは、特化型人工知能を応用したもので、現在は、ビジネスで広く活用されています。

機械学習とは

機械学習とは、AIを実現するための手法です。具体的には、データを何度も学習させることで、コンピューターにより正確な予測をさせるというものです。この機械学習には3つの分野(教師あり学習、教師なし学習、強化学習)があります。まず、教師あり学習とは、学習するデータとその正解をセットにした状態でコンピューターに学習させる方法です。教師なし学習とは、正解が与えられない状態でコンピューターに学習させる方法で、データの傾向分析などが可能です。強化学習は、教師あり学習に似たところがありますが、学習するデータに正解がなく、むしろ目的として設定された環境の中で最適な行動を学習する方法です。

ディープラーニングとは、「機械学習」を実現する方法

「深層学習」とも呼ばれるディープラーニングですが、これは、人間の無意識な行動をコンピューターに学習させる技術のことを指します。ディープラーニングのベースは、ニューラルネットワークにあり、このニューラルネットワークは、一種の機械学習のことです。

ニューラルネットワークとは

ニューラルネットワークは、人間の脳内の神経細胞のしくみを真似たシステムのことで、基本的には、「入力層」「隠れ層」「出力層」の3層で構成されています。人間の脳では「ニューロン(神経細胞)」から電気信号が流れ、それにより情報伝達が行われます。同様に、ニューラルネットワークは、その各層が複数のニューロンにより構成され、各ニューロンが互いに結合される構造を持っています。複雑な情報に対応するためには、「隠れ層」の部分を2層以上に増やし、合計で4層以上にする必要があります。これをディープニューラルネットワーク(Deep Neural Network)と呼び、この構造が、ディープラーニングの極めて高い精度を誇る理由と言えるでしょう。

ディープラーニングの種類

ここでは、ディープラーニングの主要な手法として4種類(畳み込みネットワーク、再帰型ニューラルネットワーク、オートエンコーダ、敵対的生成ネットワーク)を紹介します。先にも述べましたが、ディープラーニングのベースは、ニューラルネットワークです。その多層化した構造がディープニューラルネットワークですが、これをベースにそれぞれの手法が存在します。

畳み込みネットワーク(Convolutional Neural Network:CNN)

ディープラーニングの手法として最も成功している手法がCNNでしょう。CNNは画像認識に適した手法で、自動運転、監視カメラ、ネットショッピングの商品検索などのさまざまな分野に応用されています。現在のディープラーニングの大多数が、CNNによるものと言われています。CNNの構造としては「畳み込み層」「プーリング層」の順に続き、「出力層」の前に「全結合層」が接続されます。「全結合層」は、「隠れ層」の最後にあたる「プーリング層」からの出力をまとめる働きとして、「出力層」の前に置かれています。「畳み込み層」は、特定の形状に反応するように構成され、特に画像のカテゴリ分類で優れた性能を発揮します。「プーリング層」は、入力した画像の位置ずれに対する柔軟性を向上させる働きをしています。「隠れ層」にある「畳み込み層」と「プーリング層」がCNNの構造上の特徴となっています。

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

RNNは、時系列データの扱いに適した手法です。時系列データとは、時間の経過とともに数値が変化するようなデータのことで、具体例としては、ホームページのアクセス数履歴、乗車率、SNSの使用が最も多くなる時間帯などが挙げられます。特に、自然言語処理分野では、ビジネスインテリジェンスや音声アシスタントなど多くの成功事例があります。RNNの特徴は、「再帰型(リカレント)」という言葉からもわかるように、「隠れ層」での情報処理が繰り返し行われる点にあります。これにより、時系列データや、データのサイズがまちまちである場合でも扱えるようになっています。

オートエンコーダ

オートエンコーダ(自己符号化器:Autoencoder)とは、入力されたデータを、再度復元処理できるように圧縮処理することを言います。つまり、オートエンコーダでは、重要度の高い情報を選択し、それ以外の部分を削ぎ落すことが行われます。構造上の特徴を説明するために、ここで例を挙げてみましょう。画像Aを学習させた場合、このオートエンコーダでは、どんな入力も画像Aに近づくように出力されます。つまり、画像BやCを入力しても画像Aに近い画像が出力されることになります。オートエンコーダにノイズ除去を学習させると、画像のノイズ除去や、異常検知に応用することができます。

敵対的生成ネットワーク(Generative Adversarial Network:GAN)

GANは、画像生成で有名ですが、データを新たに作り出す点で、ディープラーニングへの応用技術として注目されています。GANには2つのニューラルネットワーク(識別ネットワークと生成ネットワーク)が存在し、それらが互いに競いながら入力データの学習を深めていくという構造を持っています。例えば、最初に、生成ネットワークで画像が生成され、識別ネットワークでその成否を判断します。続いて、生成ネットワークが識別ネットワークを欺くよう学習し、識別ネットワークが、それを正確に識別しようと学習します。このように、互いに学習し合うことで全体の精度を自ら向上させていくという点がGANの特徴です。実例として、“ディープフェイク”と呼ばれる動画の存在を聞いたことがあるかもしれませんが、これはGANを利用して学習、生成されたものです。

ディープラーニングを扱える人材のニーズが非常に高いということ

ディープラーニングは、機械学習の手法の一つですが、その理解や習得には少し時間がかかるかもしれません。しかし最近では、ディープラーニングを簡単に実装できるソフトウェアやPythonライブラリが提供されているため、敷居は下がってきています。
ディープラーニングに長けた人材のニーズは高いにもかかわらず、それを扱える人材はまだまだ少ないというのが現状です。今から学習してAIを活用できる人材になることは、今後のビジネスにおいてもさまざまな面で応用がきくことに繋がります。より多くの人に関心を持ってディープラーニングを学び、AI人材を目指してほしいものです。

最新情報をチェックしよう!