ELMo(embeddings from language model)は、単語のシーケンスを対応するベクトルのシーケンスとして表現するための単語埋め込み手法である。これは、アレン人工知能研究所とワシントン大学の研究者によって作成され、2018年2月に初めて公開された。ELMoは、文字レベルの入力を受け取り単語レベルの埋め込みを生成する双方向LSTMであり、約3000万文と10億語のコーパスで訓練された。
ELMoのアーキテクチャは、トークンの文脈的理解を実現する。深い文脈化された単語表現は、共参照解決や多義性解決など、多くの自然言語処理タスクに有用である。ELMoは、自己教師あり生成的プレトレーニングとそれに続くファインチューニングの先駆者として歴史的に重要であり、大規模モデルが大規模コーパスを再現するように訓練され、その後、タスク固有の追加重みが付加され、教師ありタスクデータでファインチューニングされる。これは、トランスフォーマーベースの言語モデリングへの進化における重要なステップであった。
アーキテクチャ
ELMoは、トークン埋め込み層の上に多層双方向LSTMを重ねた構造である。すべてのLSTMの出力を連結したものがトークン埋め込みを構成する。入力テキストシーケンスは、まず埋め込み層によってベクトルのシーケンスにマッピングされる。次に、2つの部分が並行して実行される。前方部分は、4096ユニットと512次元の射影を持つ2層LSTMであり、第1層から第2層への残差接続を持つ。後方部分は同じアーキテクチャを持つが、シーケンスを後ろから前へ処理する。全5つのコンポーネント(埋め込み層、2つの前方LSTM層、2つの後方LSTM層)からの出力は連結され、線形行列(射影行列)によって乗算され、入力トークンごとに512次元の表現が生成される。
ELMoは、10億語のテキストコーパスでプレトレーニングされた。前方部分は次のトークンを繰り返し予測することで訓練され、後方部分は前のトークンを繰り返し予測することで訓練される。プレトレーニング後、ELMoのパラメータは凍結されるが、射影行列は例外であり、特定の言語タスクの損失を最小化するためにファインチューニングできる。これは、プレトレーニングとファインチューニングのパラダイムの初期の例である。元の論文では、6つのベンチマークNLPタスクで最先端技術を改善することでこれを実証した。
文脈的な単語表現
ELMoのアーキテクチャは、トークンの文脈的理解を実現する。例えば、最初の前方LSTMは、各入力トークンをそれ以前のすべてのトークンの文脈で処理し、最初の後方LSTMは、各トークンをそれ以降のすべてのトークンの文脈で処理する。次に、2番目の前方LSTMは、それらを組み込んで各トークンをさらに文脈化する。
深い文脈化された単語表現は、共参照解決や多義性解決など、多くの自然言語処理タスクに有用である。例えば、「彼女はお金を引き出すために銀行に行った」という文を考えてみよう。トークン「銀行」を表現するには、モデルがその多義性を文脈内で解決する必要がある。最初の前方LSTMは、「彼女は〜に行った」という文脈で「銀行」を処理し、これにより、その単語を主語が向かう場所として表現できる。最初の後方LSTMは、「お金を引き出すために」という文脈で「銀行」を処理し、これにより、その単語を金融機関として曖昧さを解消できる。次に、2番目の前方LSTMは、最初の後方LSTMが提供する表現ベクトルを使用して「銀行」を処理でき、これにより、主語が向かう金融機関として表現できる。
歴史的背景
ELMoは、言語モデリングの歴史的進化における一つのリンクである。文書分類の単純な問題を考えてみよう。ここでは、与えられたテキストにラベル(例:「スパム」、「スパムではない」、「政治」、「スポーツ」)を割り当てたい。最も単純なアプローチは「bag of words」アプローチであり、文書内の各単語を独立に扱い、その頻度を分類の特徴として使用する。これは計算コストが低いが、単語の順序や文内の文脈を無視していた。GloVeとWord2Vecは、大規模テキストコーパスでの共起パターンに基づいて単語の固定ベクトル表現(埋め込み)を学習することで、これを発展させた。
BERTと同様に(ただし、Word2VecやGloVeなどの「bag of words」手法とは異なり)、ELMoの単語埋め込みは文脈に敏感であり、同じ綴りを共有する単語に対して異なる表現を生成する。これは、約3000万文と10億語のコーパスで訓練された。以前にも双方向LSTMが文脈化された単語表現に使用されていたが、ELMoはこのアイデアを大規模に適用し、最先端のパフォーマンスを達成した。
2017年のTransformer (architecture)アーキテクチャの発表後、ELMoのアーキテクチャは多層双方向LSTMからトランスフォーマーエンコーダーに変更され、BERTが生まれた。BERTは同様のプレトレーニングとファインチューニングのワークフローを持つが、より並列化可能なトレーニングを可能にするトランスフォーマーを使用する。ELMoの影響は他のLarge language modelの開発にも及び、大規模コーパスでのプレトレーニングとそれに続くタスク固有のファインチューニングの力を実証し、このパラダイムは後のOpenAIやGoogle DeepMindのモデルなどの中核となった。
影響と遺産
ELMoの2018年2月の公開は、自然言語処理における転換点を示した。文脈化された埋め込みを提供することで、質問応答、感情分析、固有表現認識などのタスクのパフォーマンスを向上させた。その成功は、言語に対するDeep learningアプローチのさらなる研究を促進し、Artificial intelligenceアプリケーションの急速な進歩につながった。ELMoは、テキストに対するMachine learningの現代時代における基礎モデルとして、BERTと並んでしばしば引用される。
この手法はまた、長距離依存関係を捉えるNeural networkアーキテクチャの重要性を強調し、この概念は後にTransformer (architecture)ベースのモデルで洗練された。ELMoの文字レベルの入力処理は、語彙外の単語に対して堅牢であり、その後の埋め込み技術に影響を与えた。ELMo自体はもはや本番環境で広く使用されていないが、その原理は多くの現代のNLPシステムに組み込まれている。
参考文献
- Peters, M. E., et al. (2018). Deep contextualized word representations. Proceedings of NAACL-HLT.
- Allen Institute for Artificial Intelligence. (2018). ELMo: Deep contextualized word representations. Official release notes.