自然言語処理 (NLP) システムのコアコンポーネントとして、言語モデルは単語表現と単語シーケンスの確率的表現を提供できます。ニューラル ネットワーク言語モデル (NNLM) は次元の制限を克服し、従来の言語モデルのパフォーマンスを向上させます。この論文では、NNLM についてレビューし、まず古典的な NNLM の構造について説明し、次にいくつかの主要な改善方法を紹介して分析します。研究者らは、NNLM のいくつかのコーパスとツールキットを要約し、比較しました。さらに、本論文ではNNLMのいくつかの研究方向についても議論します。 言語モデルとは何ですか? 言語モデル (LM) は、多くの自然言語処理 (NLP) タスクの基礎となります。初期の NLP システムは主に手動で記述されたルールに基づいて構築されていましたが、これは時間と労力がかかり、さまざまな言語現象をカバーしていませんでした。 1980年代になって初めて、N個の単語からなるシーケンスsに確率を割り当てる統計言語モデルが提案されました。 ここで、w_i はシーケンス s の i 番目の単語を表します。単語のシーケンスの確率は、その先行詞(コンテキスト履歴またはコンテキストと呼ばれることが多い)を与えられた次の単語の条件付き確率の積に分解できます。 上記のモデルでは多数のパラメータを学習することが困難であることを考慮すると、近似的なアプローチを取る必要があります。 N-gram モデルは広く使用されている近似方法であり、NNLM が登場する前は最先端のモデルでした。 (k+1)-メタモデルはk次のマルコフ仮定から導出されます。この仮定は、現在の状態が前の k 個の状態にのみ依存することを述べています。つまり、 最大尤度推定法を使用してパラメータを推定します。 パープレキシティ(PPL)[Jelinek et al., 1977]は、確率モデルの品質を測定するために使用される情報理論的測定基準であり、言語モデルを評価する方法です。 PPL が低いほど、モデルは優れています。 N 語のコーパスと言語モデルが与えられた場合、言語モデルの PPL は次のようになります。 PPL はコーパスに依存していることに注意してください。 PPL は、同じコーパス上の 2 つ以上の言語モデルを比較するために使用できます。 LM にニューラル ネットワークを追加する理由は何ですか? しかし、N-gram 言語モデルには重大な欠点があります。この問題を解決するために、連続空間での言語モデリングにニューラル ネットワーク (NN) を導入しました。 NN には、特徴と連続表現を自動的に学習できるフィードフォワード ニューラル ネットワーク (FFNN) とリカレント ニューラル ネットワーク (RNN) が含まれます。そのため、自然言語の離散性、組み合わせ性、スパース性を考慮するために、NN を LM やその他の NLP タスクに適用することが期待されています。 最初のフィードフォワード ニューラル ネットワーク言語モデル (FFNNLM) は、2003 年に Bengio らによって提案されました。これは、単語の分散表現 (単語を「埋め込み」と呼ばれる低次元ベクトルとして表現する) を学習することで次元の呪いを克服します。 FFNNLM のパフォーマンスは N-gram 言語モデルよりも優れています。その後、Mikolovらは2010年にRNN言語モデル(RNNLM)を提案しました。それ以来、NNLM は徐々に主流の言語モデルとなり、急速に発展してきました。 2012 年、Sundermeyer らは、長期依存関係の学習問題を解決するために、長短期記憶再帰型ニューラル ネットワーク言語モデル (LSTM-RNNLM) を提案しました。トレーニング、評価、PPL のオーバーヘッドを削減するために、階層型 Softmax、キャッシュ モデルなどのさまざまな改善スキームが提案されてきました。最近、NNLM を改善するために、アテンション メカニズムが導入され、大幅なパフォーマンスの向上が達成されました。 古典的なニューラルネットワーク言語モデル 1. FFNN言語モデル Xu、Rudnickyらは2000年にニューラルネットワーク(NN)を言語モデル(LM)に導入しようと試みました。彼らのモデルはベースラインの N-gram 言語モデルよりもパフォーマンスは優れていますが、隠れ層がないため、一般化能力が低く、コンテキストに依存する特徴を捉えることができません。 式1によれば、LMの目的は条件付き確率P(w_k|w_1 · · · w_(k−1))を推定することと同等である。ただし、フィードフォワード ニューラル ネットワーク (FFNN) は可変長データを直接処理できず、履歴コンテキストを効果的に表現することもできません。したがって、LM のようなシーケンス モデリング タスクの場合、FFNN は固定長入力を使用する必要があります。 N グラム言語モデル (式 2 を参照) にヒントを得た FFNNLM は、前の n-1 語をコンテキストとして使用して次の単語を予測します。 図 1 に示すように、オリジナルの FFNNLM のアーキテクチャは 2003 年に Bengio らによって提案されました。この FFNNLM は次のように記述できます。 このうち、H、U、W は層間の接続の重み行列であり、d と b は隠れ層と出力層のバイアスです。 図1: 2003年にBengioらが提案したFFNNLM。 FFNNLM は、各単語の分散表現を学習することで連続空間でのモデリングを実現します。単語表現は言語モデルの副産物であり、他の NLP タスクの改善によく使用されます。 FFNNLM に基づいて、Mikolov らは 2013 年に「CBOW」と「Skip-gram」という 2 つの単語表現モデルを提案しました。 FFNNLM は、単語を低次元ベクトルに変換することで次元の呪いを克服します。 FFNNLM は NNLM 研究のトレンドをリードします。 ただし、FFNNLM にはまだいくつかの欠点があります。トレーニング前に指定されるコンテキスト サイズは限られており、これは人間が大量のコンテキスト情報を使用して予測を行うことができるという事実と大きく矛盾しています。シーケンス内の単語は時間的に関連しています。ただし、FFNNLM はモデリングに時間情報を使用しません。さらに、完全に接続された NN は多くのトレーニング可能なパラメータを学習する必要があり、これらのパラメータの数が N タプルより少ない場合でも、計算オーバーヘッドが大きく、非常に非効率的です。 2. RNN言語モデル 最初のRNN言語モデルは[Mikolov et al., 2010; Mikolov et al., 2011a]によって提案されました(図2参照)。t番目の時間ステップでは、RNNLMは次のように記述できます。 ここで、U、W、V は重み行列、b と d はそれぞれ状態層と出力層のバイアスです。 Mikolov の 2010 年と 2011 年の論文では、f はシグモイド関数を表し、g はソフトマックス関数を表します。 RNNLM は、Backpropagation through Time (BPTT) アルゴリズムまたは Truncated BPTT アルゴリズムのいずれかを使用してトレーニングできます。実験結果によると、RNNLM は、パープレキシティ (PPL) の点で FFNNLM や N-gram 言語モデルよりも大幅に優れています。 図 2: Mikolov ら (2010 年および 2011 年) が提案した RNNLM。 RNNLM は既存のコンテキストを使用して予測を行うことができますが、長期的な依存関係を学習するようにモデルをトレーニングすることは依然として課題です。これは、RNN トレーニング プロセス中に、パラメーターの勾配が消失または爆発する可能性があり、トレーニング速度が低下したり、パラメーター値が無限大になったりする可能性があるためです。 3. LSTM-RNN言語モデル Long Short-Term Memory (LSTM) RNN がこの問題を解決します。 Sundermeyerらは2012年にLMにLSTMを導入し、LSTM-RNNLMを提案しました。メモリユニットとNN部分を除いて、LSTM-RNNLMのアーキテクチャはRNNLMとほぼ同じです。情報の流れを制御するために、LSTM のメモリ ユニットに 3 つのゲート構造 (入力ゲート、出力ゲート、忘却ゲート) を追加しました。 LSTM-RNNLM の一般的なアーキテクチャは次のように記述できます。 このうち、i_t、f_t、o_t はそれぞれ入力ゲート、忘却ゲート、出力ゲートを表します。 c_t はセルの内部メモリ状態です。 s_t は隠れ状態ユニットです。 U_i、U_f、U_o、U、W_i、W_f、W_o、W、V_i、V_f、V_o、V はすべて重み行列です。 b_i、b_f、b_o、b、d はバイアスです。 f は活性化関数、σ は各ゲートの活性化関数 (通常はシグモイド関数) です。 上記の 3 つの従来の LM と比較すると、RNNLM (LSTM-RNNLM を含む) のパフォーマンスは FFNNLM よりも優れており、LSTM-RNNLM は常に最も先進的な LM となっています。現在の NNLM は主に RNN または LSTM に基づいています。 技術の向上 1. 混乱を軽減する方法 混乱を軽減するために、いくつかの新しい構造とより効果的な情報が古典的な NNLM モデル (特に LSTM-RNNLM) に導入されました。言語学と人間が自然言語を処理する方法に触発されて、研究者は、文字認識モデル、因数分解モデル、双方向モデル、キャッシュ モデル、注意メカニズムなど、いくつかの新しい効果的な方法を提案してきました。 (1)文字認識モデル 自然言語では、似た形式を持つ単語は同じ意味または似た意味を持つことがよくあります。たとえば、「スーパーマン」の「男」と「警官」の「男」は同じ意味です。 Mikolov et al. (2012) は、RNNLM と FFNNLM を文字レベルで調査しました。文字レベルの NNLM は、文字の特徴によって単語間の構造的な類似性が明らかになり、一般的でない単語や未知の単語のモデリングが改善されるため、語彙外 (OOV) 問題を解決するために使用できます。文字レベルの NNLM では、文字レベルの出力を持つ小さな Softmax レイヤーを使用するため、トレーニング パラメータも削減されます。しかし、実験結果によれば、文字レベルの NNLM を高精度でトレーニングすることは困難な作業であり、そのパフォーマンスは単一レベルの NNLM よりも劣ることが多いことが示されています。これは、文字レベルの NNLM では、次の単語を正しく予測するために、より長い履歴データを考慮する必要があるためです。 文字レベルと単語レベルの情報を組み合わせたソリューションが数多く提案されており、これらは文字認識言語モデルと呼ばれることがよくあります。 1 つのアプローチは、文字レベルの機能を単語ごとに整理し、それを単語レベルの言語モデルに使用することです。 2015 年に Kim らは、単語の文字レベルの特徴を抽出するための畳み込みニューラル ネットワークと、これらの文字レベルの特徴を 1 つの時間ステップ内で受け取るための LSTM を提案しました。 Hwang と Sung (2016) は、異なる時間スケールの複数のモジュールで構成される階層型 RNN アーキテクチャを使用して、文字レベルの NNLM の問題に対処しました。 もう 1 つの解決策は、文字レベルと単語レベルの両方の特徴を同時に NNLM に入力することです。宮本、長らは2016年に、BiLSTMを用いて単語から文字特徴ベクトルを抽出し、単語の特徴ベクトルを補間し、補間したベクトルをLSTMに入力することを提案した。 Verwimpらは2017年に「文字-単語」LSTM-RNNLMを提案しました。これは、文字レベルと単語レベルで特徴ベクトルを直接連結し、連結結果をネットワークに入力するものです。文字ベースの LM は、単語レベルの LM に適用される文字特徴抽出器として文字レベルの LM を直接使用します。このようにして、LM は予測のための豊富な文字と単語の情報を持ちます。 (2)因数分解モデル NNLM はトークンに基づいて単語の類似性を定義します。ただし、類似性は、単語の形式的な特徴 (接辞、大文字、ハイフンなど) や品詞タグ (POS) などのその他の注釈に基づいて導き出すこともできます。因数分解 LM に触発されて、Alexandrescu、Kirchhoff らは 2016 年に、単語と特定の単語の特徴から連続空間へのマッピングを学習できる新しいタイプのニューラル確率 LM である因数分解 NNLM を提案しました。 因数分解モデルを使用すると、同じ特性を持つ単語のカテゴリを要約できます。ニューラル ネットワークのトレーニング中に単語トークンの代わりに因子を適用すると、単語の連続表現をより適切に学習でき、セット外の単語を表現できるようになり、LM の困惑も軽減されます。ただし、さまざまな要素の選択は、さまざまな上流 NLP タスクと言語モデルの適用に関連しています。各要因ごとに個別に実験を行う以外に、要因を選択する方法はありません。したがって、特定のタスクでは、効率的な因子選択方法が必要です。同時に、因子ラベル付きのコーパスを確立する必要があります。 (3)双方向モデル 従来の単方向 NN では、過去の入力に基づいて出力を予測することしかできません。将来のデータに基づいて双方向 NN を構築できます。 2013 年に Graves ら、2014 年に Bahdanau らが双方向 RNN および LSTM ニューラル ネットワーク (BiRNN および BiLSTM) を音声認識やその他の NLP タスクに導入しました。 BiRNN は、入力データを 2 方向で処理することにより、過去と未来のコンテキストを使用します。現在、双方向モデルに関する最も人気のある研究は、2018 年に Peter らによって提案された ELMo モデルであり、これは BiLSTM-RNNLM に基づく新しい深層文脈単語表現です。事前トレーニング済みの ELMo モデルの埋め込み層のベクトルは、語彙内の単語から学習された表現ベクトルです。これらの表現は既存のモデルの埋め込みレイヤーに追加され、6 つの困難な NLP タスクにおける最先端モデルのパフォーマンスを大幅に向上させます。 過去と未来のコンテキストを使用する双方向言語モデル (BiLM) は進歩していますが、LM は現在の単語の前のコンテキストで定義されるため、BiLM を LM に直接使用できないことに注意することが重要です。単語のシーケンスは同時入力のシーケンスとして見ることができるため、BiLM は他の NLP タスク (機械翻訳や音声認識など) でも使用できます。 (4)キャッシュモデル 「最後に出現した単語が再度出現する場合があります。」この仮定に基づいて、キャッシュ メカニズムは当初、依存関係の長さ制限を克服して N-gram 言語モデルを最適化するために使用されました。このメカニズムは、新しい入力をキャッシュ内の履歴データと照合します。キャッシュ メカニズムは、もともと NNLM の複雑さを軽減するために提案されました。 Soutner らは 2012 年に FFNNLM とキャッシュ メカニズムを組み合わせることを試み、キャッシュベースの NNLM 構造を提案しましたが、これは離散確率変化問題につながりました。この問題に対処するために、Grave ら (2016) は、変更が隠し表現の内積に依存する連続キャッシュ モデルを提案しました。 もう 1 つのキャッシュ メカニズムは、NNLM の高速化技術としてキャッシュを使用することです。この方法の主なアイデアは、同じコンテキスト履歴を与えられた将来の予測のために、LM の出力と状態をハッシュ テーブルに保存することです。たとえば、Huang らは 2014 年に 4 つのキャッシュを使用してモデル推論を高速化することを提案しました。使用されるキャッシュは、「クエリから言語モデル確率キャッシュ」、「履歴から隠し状態ベクトル キャッシュ」、「履歴からクラス正規化係数キャッシュ」、および「履歴とクラス ID からサブ語彙正規化係数キャッシュ」です。 (5)注意メカニズム RNNLM はコンテキストを使用して次の単語を予測します。ただし、コンテキスト内のすべての単語が次の単語に関連し、予測に有効であるとは限りません。人間と同様に、注意メカニズムを備えた LM は、単語から有用な単語表現を選択することで、長期履歴を効率的に使用します。 Bahdanau らは 2014 年に初めて、NLP タスク (論文では機械翻訳) に注意メカニズムを使用することを提案しました。 Tran らと Mei らは 2016 年に、注意メカニズムによって RNNLM のパフォーマンスを向上できることを実証しました。 注意メカニズムは、各入力に対する一連の注意係数を通じて、焦点を当てる必要があるターゲット領域をキャプチャできます。注目ベクトルz_tはトークン{r_0, r_1, · · ·, r_(t−1)}の表現によって計算されます。 ここでの注目係数α_tiは、スコアe_tiのソフトマックス関数値を正規化することによって計算され、ここで これは、トークンの表現r_iと隠れ状態h_(t-1)の一致度を評価するアライメントモデルです。この注目ベクトルは、予測のためのコンテキスト履歴を適切に表現します。 2. 大規模コーパスの高速化技術 大規模な語彙を含むコーパスでモデルをトレーニングするのは非常に時間がかかります。これは主に、大規模な語彙に使用される Softmax レイヤーによるものです。ディープニューラルネットワークをトレーニングする際の出力空間が大きいという問題を解決するために、多くの方法が提案されてきました。一般的に言えば、これらの方法は、階層的ソフトマックス、サンプリングベースの近似、自己正規化、有限損失関数の正確な勾配の 4 つのカテゴリに分類できます。そのうち、最初の 2 つの方法は NNLM で広く使用されています。 コーパス 一般的に言えば、トレーニングとテストのコストを削減するためには、モデルの実現可能性を小さなコーパスで検証する必要があります。一般的に使用される小規模コーパスには、Brown、Penn Treebank、WikiText-2 などがあります (表 1 を参照)。 モデル構造が決定された後、モデルが信頼できる一般化機能を備えていることを証明するために、大規模なコーパスでモデルをトレーニングして評価する必要があります。一般的に使用される大規模なコーパスは、Web サイト、新聞、その他のメディア (ウォール ストリート ジャーナル、Wikipedia、ニュース レビュー、ニュース クロール、コモン クロール、AP 通信 (AP) ニュースなど) に基づいて時間の経過とともに更新されます。 ただし、通常はさまざまな大規模コーパスで LM をトレーニングします。同じコーパスであっても、さまざまな前処理方法や異なるトレーニング/テスト セットの分割が実験結果に影響を与える可能性があります。同時に、トレーニング時間の提示方法も異なっており、論文によってはトレーニング時間が記載されていないものもあります。さまざまな論文の実験結果は十分に比較されていません。 ツールキット 従来の LM ツールキットには主に「CMU-Cambridge SLM」、「SRILM」、「IRSTLM」、「MITLM」、「BerkeleyLM」が含まれており、さまざまなスムージング手法を使用した N グラム言語モデルのトレーニングと評価のみをサポートしています。ディープラーニングの発展に伴い、NNLM ベースのツールキットが数多く提案されてきました。 Mikolov らは 2011 年に RNNLM ツールキットを構築しました。このツールキットは、音声認識と機械翻訳を最適化するための RNNLM のトレーニングをサポートしていますが、並列トレーニング アルゴリズムと GPU コンピューティングはサポートしていません。 Schwenk 氏は、FFNN のトレーニングと評価をサポートするために、2013 年にニューラル ネットワーク オープン ソース ツール CSLM (Continuous Space Language Modeling) を構築しました。 Enarvi 氏と Kurimo 氏は 2016 年に、LM をトレーニングして文章にスコアを付け、テキストを生成するスケーラブルなニューラル ネットワーク モデル ツールキット「TheanoLM」を提案しました。 調査の結果、従来の N-gram 言語モデルと NNLM の両方をサポートするツールキットは存在しないことがわかりました。また、一般的に使用される LM をロードする機能は通常は含まれていません。 今後の研究の方向性 まず、計算オーバーヘッドとパラメータの数を削減する方法を引き続き検討し、それによって、複雑さを増大させることなく、トレーニングと評価の速度を向上させます。第二に、人間の作業方法をシミュレートし、LM のパフォーマンスを向上できる新しいアーキテクチャを生成したいと考えています。たとえば、LM 用の生成モデル (GAN など) の構築が新たな研究方向になる可能性があります。最後に、現在の LM 評価システムは標準化されていません。そのため、論文で提示すべき前処理と実験結果を統一するための評価比較ベンチマークを構築する必要がある。 [この記事は51CTOコラム「Machine Heart」、WeChatパブリックアカウント「Machine Heart(id:almosthuman2014)」によるオリジナル翻訳です] この著者の他の記事を読むにはここをクリックしてください |
MWC 2024カンファレンスで、Nvidiaは、ARM、ServiceNow、SoftBankと...
人工知能の開発にはまだまだ長い道のりが残っているようです。エルサレムのヘブライ大学の研究者らは、単一...
コンピューター ビジョンは、驚くほど急速に発展している分野です。本質的には、コンピューターに人間と同...
この記事はLeiphone.comから転載したものです。転載する場合は、Leiphone.com公式...
[[238055]] [[238056]]患者は青い「ボックス」に手首を入れ、赤外線スキャン後に脈...
AIエージェントは今話題になっています。OpenAIの応用研究ディレクターであるLilian Wen...
生成型 AI の破壊的な脅威から抜け出す方法を模索している IT リーダーは、LexisNexis ...
この記事はLeiphone.comから転載したものです。転載する場合は、Leiphone.com公式...
6月27日、マイクロソフトの研究者らは、大規模なAIモデルのトレーニング時に遭遇しやすいデータ転送コ...
最近、ネイチャー誌に、新しい数式を生成できる AI アルゴリズム プロジェクトを研究者が構築したプロ...
最近、鄭州市鄭東新区龍湖区の無人バスシステムプロジェクトの調達入札公告が発表された。自動運転バス路線...
1. グラフニューラルネットワーク入門グラフ ニューラル ネットワークについて説明する前に、まずグラ...