JDLA監修のE資格のシラバスにある深層学習分野「再帰的ネットワーク」について解説!

JDLA監修のE資格のシラバスにある深層学習分野「再帰的ネットワーク」について解説!

E資格は受験するにあたってシラバスが公開されています。出題範囲は大きく分けると応用数学機械学習深層学習の3つの項目に分かれており、そこからさらに項目が存在しているため、出題範囲を確認し1つ1つの項目に対して入念な対策を行う必要があります。

ここでは、深層学習分野の「回帰結合型ニューラルネットワークと再帰的ネットワーク」における再帰的ネットワークについて解説します。

そもそも再帰的ネットワークとは

「回帰結合型ニューラルネットワークと再帰的ネットワーク」においてはその名の通り、ニューラルネットワークについて出題されます。日本ディープラーニング協会が運営するAI(人工知能)検定の中でもE資格のニュートラルネットワークに関する分野は難易度が高く、認定講座を受けても理解するのが大変でしょう。そのため、この分野は基本的な部分からしっかり理解を深めることが大切と言えます。

まず、ニューラルネットワークとは人間の脳神経ネットワークのようなものです。人間の脳はたくさんの神経細胞が複雑に結合することにより、考えることができる仕様となっています。この仕組みを簡単にして、コンピュータ上で再現したものがニューラルネットワークです。そして、再帰的ネットワークは再帰型ネットワーク・再帰的ニューラルネットワーク・RNN(Recurrent Newral Network)などと呼ばれることもあり、従来のニューラルネットワークと比べ、時系列データを取り扱えるようにしたもののことを言います。

ちなみにこの分野でも出題され、再帰的ネットワークと比較されることが多いのが畳み込みニューラルネットワークです。これはCNN(Conbolutional Newral Network)とも呼ばれています。主に画像認識など静的処理で用いられる技術であり、上から下へ流れるように分析が進んでいきます。そのため、再帰型ネットワークでは分析する対象のデータの前後のデータも比較して分析を行うことができますが、畳み込みニューラルネットワークは条件をもとに徐々に絞り込みを行っていくので、データを遡って分析することができません。

長期依存性の課題について

人間の記憶には長期記憶と短期記憶の2種類があります。これは勉強で例えるとわかりやすいでしょう。テスト直前に一夜漬けで学んだことはしっかり定着していないので、時間が経つと忘れてしまいやすいです。それに対し、計画的にコツコツ勉強して身に着けた知識は時間が経過しても思い出しやすいです。このように、時間が経過すると忘れてしまうような知識が短期記憶、逆に時間が経過しても覚えている知識が長期記憶です。そして、従来のディープラーニングにおけるニューラルネットワークは短期記憶はできるものの、長期記憶ができないという問題を抱えています。この問題のことを「長期依存性」と言います。

再帰的ネットワークにおいて、長期依存性の問題を解決したのがLSTM(Long Short Term Memory)ネットワークです。元々ニューラルネットワークが長期記憶を苦手としている原因は、中間層出力に問題があるとされていました。そこで重要となるのが、中間層の状態を保持するパラメータであるメモリセルです。メモリセルを制御しているのが忘却ゲートと呼ばれる関数であり、ここで長期的に記憶すべき記憶は残しておき、必要ない記憶は削除するという作業を行います。これにより、再帰的ネットワークにおける長期記憶を実現しています。

複数時間スケールのための Leaky ユニットとその他の手法について

「複数時間スケールのための Leaky ユニットとその他の手法について」の分野では、Leakyユニットと異なる時間スケールのスペクトルなどについて出題されます。まず、Leakyユニットの正式名称は、Leaky ReLU(Lraky Rectified Linear Unit)であり、LReLUと略されることも多いです。このLReLUは関数への入力値が0より下の場合、入力値をa倍した値、0以上の場合は入力値と同じ値を出力値とする関数のことを言います。

特に回帰的ニューラルネットワークにおいて、より複雑な分析を行うために層を厚くすることが重要となりますが、層が厚くなればなるほど勾配分散や勾配消失が発生しやすくなってしまいます。そこで、この問題を解決したのがLReLUです。ちなみにこの技術は音声や画像認識などに用いられています。

ゲート付きRNNについて

ゲート付きRNNは「Gated recurrent unit」の頭文字を取ってGRUと呼ばれています。これは回帰型ニューラルネットワークにおけるゲートであり、先ほど解説したLSTMの忘却ゲートに似た特徴を持ったものです。これは入力ゲートと忘却ゲートを組み合わせたものであり、LSTMをシンプルにしたものと考えておくと良いでしょう。

これも先ほどと同様で長期依存性を解決し、長期記憶に対応できるようにすることを目的としています。ちなみにこの分野ではLSTMについても出題されるため、GRUと共に入念に確認しておきましょう。

長期依存性の最適化について

長期依存性問題を解決する手段としてLSTMやGRUを紹介しましたが、これらの手段は勾配が消滅してしまい、長期記憶を維持することができなくなる問題を解決できるものの、勾配が爆発してしまう問題には対応できません。そこで、解決策として勾配爆発の回避方法として登場したのが勾配クリッピングです。

勾配クリッピングとは勾配の上限値を決め、上限値以上になったら上限値で正規化する方法のことを言います。この方法により、上限値に達した時も勾配爆発を防ぐことができます。クリッピングの公式は上限値をM、勾配をgで表し、g=Mg||g||となります。

メモリネットワークについて

メモリネットワーク分野ではAttentionについて出題されます。Attentionとはデータの中から1つの重要な部分に着目して分析を行う手法のことであり、文章を翻訳する時などに用いられています。これは入力されたデータに対して重みづけを行うことによって、出力されるデータを予測するというものです。

例えば、英語を日本語に訳す場合、英単語は複数の意味を持っているので文脈からどの意味が適しているか判断しなければいけません。そこで、ディープラーニングを用いた翻訳では出力結果と相関の近い要素を持った入力値に対して重みを与え、抽出することで適切な意味を当てはめ、正しく翻訳することができるようになっています。

入念に対策してE資格に合格しよう!

日本ディープラーニング協会が運営するAI検定はG検定とE資格の2つです。中でも、E資格の試験は受験するにあたってJDLA認定講座のプログラムを受けなければいけない上に難易度もG検定と比べて大幅に上がることから、特に仕事でAIに触れる機会が無い人からするとハードでしょう。
ですが、入念に対策をすれば合格することが不可能ではありませんので、是非エンジニアの一歩としてE資格に挑戦してみてください。