注意機構を用いた文ベクトルの計算方法は従来手法と何が違うのか

今回は、自然言語処理における注意機構の火付け役となった論文の一つを紹介します。自然言語処理において、文ベクトルの計算にはRNNやLSTMといった系列データを扱うモデルや、CNNといった部分的な文脈を用いるモデルを用いますが、この論文では、頻繁に用いられるRNNやLSTMに対して注意機構を導入することで、より効果的な文ベクトルを計算する手法が提案されました。著者推定、感情分析、推論のタスクにおいてパフォーマンスの向上に寄与することが確認されています。

元論文:A Structured Self-Attentive Sentence Embedding

ニューラルネットワークを用いた自然言語処理ににおいて、注意機構は今や欠かせないテクニックとなっています。注意機構はBERTに採用されているTransformerというモデルにも組み込まれており、様々なタスクでその威力が確認されています。今回は、自然言語処理における注意機構の火付け役となった論文の一つを紹介します。この論文はTransformerが提案された有名な論文、Attention is All You Needからも引用されていたり、また、AIの有名なカンファレンス、ICLR-2017にも採択されていたりします。この論文の内容に絡めて、自然言語処理における文ベクトルの計算方法についても解説していきます。

注意機構(Attention Mechanism)

注意機構とは、複数の入力のうち「どの入力を重要視するか」を決定するニューラルネットワークの手法です。画像や自然言語に対して注意機構を用いることで、必要な情報をより重点的に考慮するようなモデルを作成することができます。また、注意機構による重要度はスカラ(一般に0.0~1.0の値)として計算されるため、「ニューラルネットワークがどの情報を見て問題を解いているか」という計算過程の可視化にも用いられます。実際にニューラルネットワークの性能が向上するだけでなく、ブラックボックスと呼ばれるニューラルネットワークの内部を人間にもわかりやすく可視化できるという点で、注意機構は様々な分野で用いられるようになりました。
本サイトにおいても、注意機構は様々な分野でたびたび紹介しています。

例えば感情分析において「私/この/店/大好き/!」という単語列が入力されるとします。この文が「ポジティブな感情」であると判断するためには、「大好き」という単語をより重点的に理解し、重要な情報として考慮する必要があります。一方でその他の単語はこの文の感情を分析するヒントになりにくいため、重要度を下げることで「無視」するようにします。

注意機構によって計算された重要度は0.0~1.0の値を取るため、色づけなどによる可視化が容易です。本論文でも自然言語を分析する上で「どこに注意が当てられているか」を視覚的に示した図を載せています。下図は感情分析において注意機構が計算した重要度を、色づけによって表しています。実際に感情分析を説く上で必要となる単語列に強い注意が当てられていることがわかります。

 

従来の文ベクトルの計算方法と問題

提案手法である「注意機構を用いた文ベクトルの計算」の説明に入る前に、本論文以前に広く使用されてきた文ベクトルの計算手法について紹介します。

RNN/LSTM

本論文以前の自然言語処理において、文ベクトルを計算するためにはRNNやLSTMといった時系列データを扱うことができるネットワークが用いらました。このモデルでは、最後の単語を入力した時点の出力を文ベクトルとして用います。以下の図で表すように「私/この/店/大好き/!」という単語ベクトルが各タイムステップに入力された時、最後の「!」に対応する単語ベクトルが入力された時点でのRNN/LSTMの出力が、そのまま文のベクトルとして用いられます。計算された文ベクトルは多層パーセプトロン(Multi-Layer Perceptron, MLP)などによってクラスタリングなどの学習に使用されます。

このようにして文ベクトルを計算すると、RNN/LSTMの性質上「最後に入力された単語」の影響がもっとも強くなってしまいます。LSTMは比較的長い系列の入力を受け取っても、最初の方に入力された内容を忘れにくいとされていますが、それでも最後の方に入力された単語の方が文ベクトルに強い影響を与えてしまいます。結果として、最初の方に入力された単語の情報を忘れてしまっていたり、離れた単語同士の依存関係をうまく捉えられなかったりしてしまいます。

CNN+Max Pooling

一方、CNNを用いた文ベクトルの計算も用いられています。CNNでは連続する数単語から一つの文脈ベクトルを作ります。図はCNNを用いた文ベクトルの計算方法を表しています。前から順番に「私/この/店」「この/店/大好き」…というように、連続する3単語からそれぞれの文脈ベクトルを計算します。作成された文脈ベクトルのMax Poolingを取ることで、入力の長さに依存せず同じサイズのベクトルを計算することができます。

CNNはRNN/LSTMの抱える「最後の単語の影響が強くなってしまう」という問題を持っていません。数単語ごとに計算される文脈ベクトルから文ベクトルを作成するため、文のあらゆる部分の情報を均一に考慮することができるためです。しかし、RNNやLSTMが持っていた長い系列全体をひとつのまとまりとして計算することができるという利点はありません。さらに、文脈からはみ出た情報をみることはできないため、長距離の依存関係を捉えづらいという欠点もあります。例えば図の文において、「私」という単語と「大好き」という単語を同時に見ている文脈ベクトルは無いため、このに単語の関係を直接的に捉えることが難しいと考えられます。

提案手法

本論文では上述した問題を解決するために、BiLSTMの各タイムステップに対して注意機構を適用する手法について提案しました。BiLSTMは双方向のLSTMで、順方向の文脈と逆方向の文脈を同時に考慮することができるモデルです。BiLSTMの出力は入力の系列長と同じだけあり、「それぞれのタイムステップをどの程度考慮するか」を注意機構によって制御します。図において、注意機構はBiLSTMの出力(青い角丸四角)に対して適応されていることに注目してください。

このように注意機構を適用することで、より重要な文脈だけを重視して文ベクトルを計算することができます。さらに文脈情報を後からまとめる操作を付け加えたため、BiLSTM自身が長い期間文脈情報を保持する必要がなく、近距離の文脈の分析に集中することができるというメリットもあります。これにより系列情報を扱うことが得意なLSTMの特徴を、より効果的に利用できると期待できます。

また、BiLSTMの出力に対して適用される注意の重みは、BiLSTMの出力自身から計算されるため、この機構は「自己注意(Self-Attention、あるいはIntra-Attention)」と呼ばれています。

本手法はこれまで用いられてきたRNN/LSTMという強力なモデルに追加する形で適用できるため、モデルを大幅に変える必要がないという点でも評価が高い手法です。さらに、自己注意によって計算された重みを見ることで、ニューラルネットワークがどのタイムステップの単語をより重要視していたのかを見ることができます。

評価

提案手法によって計算された文ベクトルの効果を確認するために、文分類のタスクが用いられています。文分類タスクとして、著者推定、感情分析、推論の三つが利用されています。

著者推定にはツイッターに投稿されたツイートから、投稿者の年齢を推定するタスクを設定しています。年齢層は18-24、25-34、35-49、50-64、65+に分割し、5値分類としてタスクを定義します。以下の表において、著者(年齢)推定タスクはAgeと表記されています。また、感情分析にはYelpというデータセットが利用されています。これはレビューサイトに投稿されたレビューコメントから、コメントと同時に投稿された評価(5段階)を推定するタスクです。

比較手法のうち「BiLSTM + Max Pooling + MLP」は、提案手法の注意機構部分を単純なMax Poolingに置き換えたもの、「CNN + Max Pooling + MLP」は上で図とともに説明したCNNのモデルです。実験結果より、著者推定・感情分析の双方で既存手法を上回る精度であることが確認されています。このことから、注意機構は単純に各タイムステップに対してMax Poolingを適用するよりも注意機構を用いることで精度が向上することがわかります。

また、本手法は推論タスクにおいても評価されています。推論タスクにはSNLIという有名なデータセットが使用されています。SNLIは文ベクトルを計算する手法の評価に広く用いられているため、非常に信頼性の高い検証用データと言えます。実験結果より、提案手法が既存手法に比べ遜色ない結果となっていることがわかります。特筆すべきは、BiLSTMの出力に注意機構を追加しただけというシンプルなモデルながら、高い精度を達成している点です。

まとめ

今回は自然言語処理において注意機構を導入した初期の論文について紹介しました。本論文では従来用いられていた文ベクトルの計算機構に注意機構を追加することで、文脈の重要度を考慮した文ベクトルを得られるように手法が改良されています。さらに、従来手法が苦手としていた離れた単語同士の依存関係の考慮もできるモデルとなっています。自然言語処理ではこの論文以降、Transformerを始め注意機構を採用した様々なモデルが提案されることとなります。一世を風靡した注意機構を語る上で、ぜひ押さえておきたい論文です。

この記事をシェアする