詞向量(Word Embedding),也稱詞嵌入,是自然語言處理(NLP)中非常重要的詞彙表示方法。將詞彙表中的每一個詞彙映射到一個低維、實數向量空間中,使得語意上的詞彙相似在這個向量空間中的位置也互相接近。
詞的重要性:
- 將符號表示轉換為數值表示:傳統的詞彙表示方法(例如one-hot編碼)將每個詞彙看成一個獨立的符號,無法表達詞彙之間的語義關係。詞利用術語將詞彙轉換為連續的數值表示,使得機器可以更好地理解和處理詞彙。
- 捕捉詞彙之間的語意關係:相似的詞彙在詞連結空間中具有相近的連結表示,這意味著詞連結能夠捕捉到語意之間的語意、類比關係等。例如,「king」的字連接可能會與「queen」的字連接在某個維度上相似的特徵,而與「apple」的字連接則較遠。
- 降維與特徵提取: One-hot編碼通常會產生非常高的維且稀疏的利用率(支援的向量相當於詞彙表的大小)。詞向量將詞向量嵌入到一個低維空間中(通常是幾十到幾十維),有效降低了資料的維度,同時提取了詞彙的語義特徵。
- 其他 NLP 任務的輸入:詞處理可以作為許多下游 NLP 任務的輸入,例如文字分類、情緒分析、機器翻譯、問答系統等,幫助模型更好地理解文字訊息。
詞向量的目標是學習一個映射函數,將每個詞w
映射到一個詞向量v(w) ∈ ℝ^d
,其中d
是詞向量的維度。這個映射的過程是基於大量的文本資料進行訓練的,使得模型能夠從上下文語境關係學習到語義的語義。
常見的關鍵字監控生成方法:
- Word2Vec:由Google開發的第三方字詞支援生成模型,包括主要的架構:
- CBOW(連續詞袋):透過周圍詞彙(上下文)預測中心詞。
- Skip-gram:透過中心詞預測周圍詞彙(上下文)。 Word2Vec使用淺層的神經網路路模型進行,效率更高。
- GloVe ( Global Vectors for Word Representation):由史丹佛開發的模型,它是基於詞彙共現矩陣進行,利用全局的學習詞彙共現統計資訊來進行字詞管理。
- FastText:由 Facebook 開發的模型,它在 Word2Vec 的基礎上引入了子詞(子詞)的概念。即使是未登入詞(在訓練集中未出現的單字),FastText 也可以透過其組成的子詞來產生合理的單字管理。這對於處理具有豐富詞形變化的語言非常有用。
- 基於 Transformer 的模型(Transformer-based Models):近年來,基於 Transformer 架構的預語言模型(例如 BERT、RoBERTa、GPT)在生成詞處理方面取得了巨大的成功。這些模型通常透過學習上下文化的詞處理(即一個詞的處理表示會根據其在句子中的不同上下文而變化)來捕捉更豐富的語義資訊。
關鍵字管理的特點:
學習到的字詞處理通常具有一些有趣的功能,例如:
- 影像相似性:影像上影像的語意,它們的字詞在支援空間中的距離(例如,餘弦影像度)較近。
- 類比關係:詞向量可以表示類別比關係之間的詞彙。例如,可以透過危害“king” - “man”+“woman” ≈ “queen”來找到“queen”的字向量。
總結:
詞向量/詞嵌入是一種將詞彙表示為低維實數向量的技術,它可以捕捉詞彙之間的語義關係,降低資料維度,並作為許多NLP任務的重要輸入。不同的方法(如Word2Vec、GloVe、FastText和基於Transformer的模型)被用來產生詞向量,向量方法都有其優點和適用場景。