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

一覧に戻る

 この章では、いくつかのディープラーニングの応用例について見ていきます。特に、自然言語などのシーケンシャルなデータ(連続するデータ)から特徴を学習する方法について説明します。自然言語(Natural Language)とは、日本語や英語のような、人間が生活の中で利用する言語です。基本となる要素は、語(word)とその並び(order)です。文章を読もうとするとき、注目する語とその語彙、その前後に並んだ語とその語彙を理解しながら読む必要があります。

 再帰型ニューラルネットワーク(RNN:Recurrent Neural Network)は、私たち人間が文章を読むのと同じように、自然言語を理解する課題に対して効果を発揮します。再帰型ニューラルネットワークでは、文章の一部から語を認識するために、多くのニューロンがお互いに協力し合い、上位の再帰層の内部状態を更新しながら、その出力の組み合わせで語の意味を表現します。この内部状態は、RNNによって読み取られる語の意味と深い関係があります。

 近年、RNNにより自然言語処理(Natural Language Processing)の分野で大きな進歩がありました。ニューラルネットワークがそれほど日を見ていない頃、それぞれの語は、0から数百万の規模の一意の整数(Unique Integer)で表現されていました。この整数は一意な語を示す番号として、数百万語を含む巨大な辞書に登録されます。コンピュータのモデルは語彙を理解せずに、人間のエキスパートによって構築された複雑なルールに基づいて、語に品詞(Part-Of-Speech)ラベルを付け、語の主語と述語の関係(Subject-and-Predicate)を判断するといった、文章のパターンを認識する方法でした。

 RNNと従来の自然言語処理の手法を比較すると、RNNが効率的に人間の言語(Human Language)をニューロンの言語(Neuron Langage)に変換していることがわかります。ここでいうニューロンの言語とは、例えばベクトル表現(Vector Representation)のことです。このベクトル表現は、ニューロンの言語による新しい意味の表現方法です。これを実現することは、従来の自然言語処理の手法のみでは不可能でした。RNNが自然言語の意味を理解することが可能になることが、これまでは難しいと考えられてきた多くの人工知能(AI)の課題の解決につながっています。例えば、機械翻訳やチャットボットなどです。

一覧に戻る

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA