詞語化為數字(分詞與嵌入)

嵌入矩陣(embedding matrix)

那些詞元向量都住在哪裡?住在一張叫做嵌入矩陣(embedding matrix)的大表裡——這張網格的每一列對應詞彙表中的一個詞元,每一行對應向量的一個維度。如果詞彙表有五萬個詞元、每個向量長 4,096 個數字,這個矩陣就是 50,000 乘 4,096,也就是超過兩億個數字坐落在同一張表裡。

查出某個詞元的嵌入,只是依編號挑出它那一列——不做乘法,只做索引。整個矩陣是一個可學習的參數:裡頭每個數字都會在訓練中被調整,所以這張表一開始是隨機的,再慢慢被填入意義。因為它為每個詞元都留了一列,它往往是模型中最龐大的單一組件之一,這也是詞彙表大小為何對記憶體影響這麼大的部分原因。許多模型在輸出端會重複使用這同一張矩陣,這個技巧叫權重綁定。

E \in \mathbb{R}^{V \times d}

嵌入矩陣有 V 列(每個詞元一列)與 d 行(向量長度)。

又称
embedding table