DNN と word embedding
【 embeddingの不思議 】
このセッションから Tai-Danaeらの論文の "Embeddings in Natural Language Processing" 「自然言語処理でのembedding」セクションの紹介に入ります。
ここ10年、計算言語学と自然言語処理(NLP)の研究者たちは、当初はアルファベット順に並べられた集合の構造しか持たなかった単語を、ベクトルに置き換えるというステップを踏んできました。
語をベクトルで置き換えるというステップは、人工知能分野における現在の進歩の主な原動力のひとつです。
もちろん、こうした変化を引き起こした最大の転換点は「Word2Vec」論文の発表なのですが、Tai−Danaeの論文が興味深いのは、この変化を引き起こした背景を分析していることです。
画像認識や音声認識で大きな成功を収めてきたDeep Learning 技術が、次のターゲットとして向かったのは自然言語処理の世界でした。
【 DNNの働きの定式化 】
当時、Deep Learning 技術の発祥の地とも言える、Deep Neural Network の理論的な定式化が進みます。( DNN = Deep Neural Network は、"feed forward network" とか "full connect network" とか、いろんな名前を持っているのですが、それらはみな同じものです。)
それは、DNNは、ベクトル空間からベクトル空間への関数の連続した合成、しかもある同一の特徴で記述できる関数の連続した合成として記述できるという認識です。
この認識は、Deep Learning のシステムを構築を支援する様々なフレームワーク(TensorFlow, Keras 等々)登場の基礎として、実践的には非常に大きな意味を持ちました。
【 ある発見 】
そうしたなか、経験的なものですが、ある驚くべき発見がありました。Tai−Danaeの表現を引用します。
「ある言語タスク用に学習を済ましたモデルの第1層(先の図の𝑓_1)を、別の言語タスクを対象とした別のDNNの第1層として使用すると、この二つ目のタスクの性能が大幅に向上するのである。」
Word2Vecは、おそらく、こうした背景の中で生まれたものです。
こうして、現代なら、Pre−Trainingでもっぱらembedding を計算し、Fine-Tuning でそのembedding を、様々なタスクで使い回すというスタイルは、当たり前の、しかし基本的な「アーキテクチャー」として認識されていると思いますが、その萌芽的な認識が生まれたのです。
【 Word2Vec の登場の意味 】
語のベクトル表現は、そのベクトル上の演算が、予期していなかった言語学的意味を持つことで、大きなインパクトを与えました。
● 2つのベクトル間の内積は意味的類似度と高い相関を示す。
● 二つのベクトルの足し算と引き算は、それらが表す単語間の類似関係と相関している。
こうしたことから、語の意味ベクトルは、個々の単語が点として埋め込まれた意味空間のようなものに存在していることがわかったのです。こうした認識は、言語の意味にアプローチする上で、今日でも最も基本的なものです。
【 embedding の不思議 】
ただ、語のベクトル表現がすべて、言語学的意義を持つわけではないのです。
3万の語彙を持つ言語を考えましょう。この言語の語のベクトル表現で、一番簡単な選択は、一つの語に一対一で対応する、互いに独立するベクトル を3万個用意することです。要素の一箇所だけが1で残り全部が0であるベクトルを 1−hot ベクトルと言いますが、このやり方で、3万個の語に対応するベクトルはすぐ作れます。
ただ、この1−hot ベクトルによる語のベクトル表示には、大きな問題があります。
そこでは、二つの語のベクトルの内積は、いつも0になります。二つのベクトルの和も差も、意味のあるものになりません。
そこでは、二つの語のベクトルの内積は、いつも0になります。二つのベクトルの和も差も、意味のあるものになりません。
1-hotベクトルには、語埋め込みの意味的性質は存在しないのです。
言語学的に重要な特性は、埋め込みマップ 𝜎 と合成した後の、低次元で密なベクトルで、初めて現れるのです。それは不思議なことです。
私たちは、そのことの合理的な解釈を与えることがまだできていません。
Tai−Danaeの論文は、この不思議に数学的に挑戦するものです。
--------------------------------
ショートムービー「 DNN と word embedding 」を公開しました。
https://youtu.be/uG4mqUgU3Wk?list=PLQIrJ0f9gMcOJYKeUN_8q2K-yxtTfbIoB
「 DNN と word embedding 」のpdf資料
https://drive.google.com/file/d/1F3boJTSJgPNTUlgHZSUVQIJ0HTiik1YG/view?usp=sharing
https://drive.google.com/file/d/1F3boJTSJgPNTUlgHZSUVQIJ0HTiik1YG/view?usp=sharing
blog 「 embeddingの不思議 」
https://maruyama097.blogspot.com/2024/02/dnn-word-embedding.html
「言語の意味の数学的構造」まとめページ
https://www.marulabo.net/docs/embedding-dnn/
https://www.marulabo.net/docs/embedding-dnn/
ショートムービーの再生リスト
https://www.youtube.com/playlist?list=PLQIrJ0f9gMcOJYKeUN_8q2K-yxtTfbIoB
https://www.youtube.com/playlist?list=PLQIrJ0f9gMcOJYKeUN_8q2K-yxtTfbIoB
コメント
コメントを投稿