「ディープラーニング(深層学習)」という言葉は、誰もが一度は聞いたことがあるものの、その実現にどういった手法が使われているか、またどのような分野での応用が研究されているかなどわからない方も多いのではないでしょうか。
本記事では、ディープラーニングで使われている具体的な手法や、その研究分野についてまとめました。
初見の用語が難しく感じられるかもしれませんが、それぞれが何を指しているかを把握していくと全体像が理解しやすいです。
ディープラーニングの手法
最初に、ニューロンを層状につなげたNN(ニューラルネットワーク)というモデルが考えられ、うち層が深いものをDNN(ディープニューラルネットワーク)と総称しています。
さらにDNNを応用すべく、様々な分野に特化した以下のようなニューラルネットワークに改良されました。
CNN(畳み込みニューラルネットワーク) | 画像認識に適した手法 |
RNN(再帰型ニューラルネットワーク) | 時系列データに適した手法(自然言語処理など) |
自己符号化器(オートエンコーダ) | 次元削減を行うための手法 |
GAN(敵対的生成ネットワーク) | 画像生成に適した手法 |
以下、それぞれのニューラルネットワークの説明をします。
CNN(畳み込みニューラルネットワーク)
CNN(Convolutional Neural Network: 畳み込みニューラルネットワーク)は、画像認識への応用で考案された順伝播型のニューラルネットワークです。
複数の層から成り立っており、それぞれ以下の処理を行っています。
畳み込み層 | フィルタを用いて積和演算+活性化関数の作用を行う |
プーリング層 | 平均値や最大値を用いサブサンプリングを行う |
全結合層 | 出力値を得る |
CNNは下記のようなモデルの変遷を遂げています。
→LeNet(畳み込み層とプーリング層からなるモデル、誤差逆伝播法を用いる)
→AlexNet(2012年にILSVRCで圧倒的な精度を誇ったモデル)
→VGG、GoogLeNet(AlexNetよりさらに深いモデル、GoogLeNetはInceptionモジュールを構成)
→ResNet(層を飛び越えるSkip connectionを導入)
RNN(再帰型ニューラルネットワーク)
RNN(Recurrent Neural Network: 再帰型ニューラルネットワーク)は、内部に再帰構造(閉路)を持っており、過去の情報を保持できるため、時系列データの解析に適したニューラルネットワークです。
特に自然言語処理への応用が盛んです。
さらに、RNNが遠い過去の入力を現在の出力へ反映できるよう改良された手法をLSTM(Long Short-Term Memory)といいます。
RNNは下記のようなモデルの変遷を遂げています。
→LSTM(RNNの勾配消失問題を解決したモデル)
→GRU(計算量が多いLSTMを簡略化したモデル)
→Bidirectional RNN(過去と未来両方の情報で学習できるモデル)
→RNN Encoder-Decoder(入力だけでなく出力も時系列のモデル)
→Attention(時間の重みをネットワークに組み込んだモデル)
自己符号化器(オートエンコーダ)
自己符号化器は、下記のように入力層と出力層のノード数が同じ、かつ中間層ノード数が入力層・出力層より少ないニューラルネットワークです。
正解ラベルとして入力自身を用いることにより、次元削減を得ることができるのが特徴です。
GAN(敵対的生成ネットワーク)
GAN(Generative Adversarial Network: 敵対的生成ニューラルネットワーク)は、イアン・グッドフェローらにより構想された教師なし学習手法で、画像生成への応用がされています。
生成ネットワーク(ジェネレータ)と識別ネットワーク(ディスクリミネータ)からなり、「生成ネットワークは識別ネットワークを欺く」、「識別ネットワークはより正確に識別する」目的で学習します。
GANはヤン・ルカンによって「機械学習においてこの10年で最もおもしろいアイディア」とまで形容されています。
前述のオートエンコーダを活用したもので、入力を統計分布に変換するのが得著うっです。
ディープラーニングの研究分野
ディープラーニングは、「画像処理」、「自然言語処理」、「音声認識」、「強化学習(ロボティクス)」など様々な研究分野で応用が進んでいます。
以下では、代表的な研究分野である「画像処理」、「自然言語処理」および「音声認識」について紹介します。
画像処理
前述のように、2012年のILSVRCにAlexNetが登場したことにより、一般画像認識の研究が模索、R-CNN(Regional CNN)と呼ばれるネットワークが注目され始めました。
R-CNNは、画像中のどこに何があるか(位置問題と検出課題)という2つの課題を、「領域の切り出し」と「領域の物体認識」により解決したものです。
一般画像認識のためのもう1つの研究が、セマンティックセグメンテーションです。
こちらもさらに、「個々の物体」を認識させるインスタンスセグメンテーションへ発展を遂げています。
自然言語処理
自然言語処理は、人間が日常的に使っている自然言語をコンピュータに処理させる技術、機械翻訳やAIアシスタント、アンケート結果分析などが活用事例となります。
自然言語は下記のフローで実行されます。
- 形態素解析を用いて、文章を最小単位(形態素)に切り分ける
- データクレンジングに用いて、不要な文字列を取り除く
- BoW(Bag-of-Words)を用いて、データをベクトル形式に変換する
- TF-IDFを用いて、単語の重要度を評価する
また、自然言語処理の解析技術には下記のようなものがあります。
形態素解析 | テキストを、意味を持つ最小単位である形態素に分割し品詞判定すること |
構文解析 | 形態素解析を基に、形態素間の構文的関係を解析すること |
含意関係解析 | 2つの文の間に含意関係があるかを判別すること |
意味解析 | 構文解析を基に、意味を持つまとまりを判定すること |
文脈解析 | 文単位で構造や意味を考えること |
照応解析 | 照応詞(代名詞・指示語)の指示対象、省略された名詞を推定すること |
談話解析 | 文章中の文同士の関係や、話題の推移を明らかにすること |
自然言語処理領域では、Googleによって開発された、「Word2Vec」という単語をベクトルとして表現し、意味の近さや計算のアナロジーを行う仕組みがあります。
両モデルの特徴は、訓練データに存在しない単語(OOV: Out Of Vocabulary)の表現が可能であることです。
音声認識
音声認識は、人間の発話を機械に認識させるための技術、昨今の活用事例ではAppleの「Siri」や、Amazonによる「Alexa」が挙げられます。
音声認識では、「隠れマルコフモデル」という言語モデルを用いて、前後の文字情報から、読み取れなかった部分の推測をしていましたが、現在はこのモデルがディープラニングに置き換えられ、音声認識精度が飛躍的に向上しました。
まとめ
ディープラーニングの応用となる、ディープラーニングの手法や研究分野についてご紹介しました。
非常に奥が深く難解なイメージがある「ディープラーニング」ですが、こういった具体事例を把握できると、その正体が見えてきたのではないかと思います。
ディープラーニングに興味を持たれた方は、続けて「ディープラーニング G検定 公式テキスト」を読まれてみるのもオススメです。
本書はAI・ディープラーニングの資格試験であるG検定のテキストですが、ディープラーニングの導入のための教科書でもあります。
コメント