詞嵌入(Word Embeddings)是什麼?

將詞彙映射到連續向量空間的技術,使語義相似的詞在向量空間中距離相近,是自然語言處理的基礎表示學習方法。|本頁含完整原理、應用場景、iPAS 考試重點與 3 個常見問答。

英文
Word Embeddings
主題標籤
自然語言處理、NLP、表示學習
考點定位
非 iPAS 核心術語
最後更新
2026/06/22
詞嵌入(Word Embeddings)是什麼? 自然語言處理NLP
術語快查

搜尋意圖: 如果你在找「詞嵌入 是什麼」或「詞嵌入 和相近概念差在哪」,先看這頁的短定義、完整說明與延伸比較。

TL;DR: 將詞彙映射到連續向量空間的技術,使語義相似的詞在向量空間中距離相近,是自然語言處理的基礎表示學習方法。

實用情境: 適合用在閱讀 AI 文章、產品文件或和同事討論時,先用一頁快速對齊概念。

下一步: 先讀完定義,再往下看延伸比較與對應工具,把概念轉成實際應用。

將詞彙映射到連續向量空間的技術,使語義相似的詞在向量空間中距離相近,是自然語言處理的基礎表示學習方法。

詞嵌入(Word Embeddings)是自然語言處理(NLP)領域最重要的基礎技術之一,標誌著 NLP 從稀疏的符號表示(one-hot encoding)向稠密的分散式表示(distributed representation)的重大轉變,並為後來的 BERT、GPT 等大型語言模型奠定了概念基礎。

在詞嵌入出現之前,文本資料通常以詞袋模型(Bag of Words,BoW)或 one-hot 向量表示。One-hot 向量的維度等於詞彙表大小(可能數萬甚至數十萬維),且每個維度只有 0 或 1,所有詞之間的餘弦相似度為 0,完全無法捕捉詞彙間的語義關係(「貓」和「狗」的相似度等同於「貓」和「汽車」,都是 0)。詞袋模型雖然加入了詞頻資訊,但同樣無法表達語義。

詞嵌入的核心思想源自語言學的分佈假說(Distributional Hypothesis):出現在相似上下文中的詞傾向於具有相似的語義。基於此,可以透過分析詞彙的共現統計或預測上下文來學習詞的向量表示。

Word2Vec 是最具代表性的詞嵌入模型,由 Google 的 Tomas Mikolov 等人在 2013 年提出。Word2Vec 有兩種訓練架構:跳字模型(Skip-gram)以中心詞預測周圍上下文詞,適合頻率較低詞的表示;連續詞袋模型(CBOW,Continuous Bag of Words)以上下文詞預測中心詞,訓練速度較快。兩者都是淺層神經網路,輸出的隱層權重矩陣就是詞向量。Word2Vec 最令人驚豔的特性是詞向量的線性代數性質,例如 vector(「王」) - vector(「男」) + vector(「女」) ≈ vector(「王后」),揭示了向量空間中的類比關係。

GloVe(Global Vectors for Word Representation)由斯坦福大學在 2014 年提出,結合了基於共現矩陣的全局統計方法與 Word2Vec 的局部預測方法,在多項基準任務上表現優於純粹的 Word2Vec。FastText 由 Facebook AI 研究院提出,改進在於將詞分解為 n-gram 字元序列,使模型能處理未登錄詞(Out-of-Vocabulary,OOV)並更好地表示形態豐富的語言(如德語、土耳其語,以及中文的部分情況)。

詞嵌入的向量維度通常在 50 到 300 之間,是一個需要根據任務和資料量調整的超參數:維度太小無法捕捉足夠的語義資訊,維度太大則增加計算成本且容易過擬合。訓練詞嵌入通常需要大規模語料,實務上常直接使用在 Google News(Word2Vec)、Common Crawl(GloVe)等大型語料上預訓練的公開向量,再視任務需求做微調(fine-tuning)或凍結使用(frozen embeddings)。

評估詞嵌入品質常用兩類方式:內在評估(Intrinsic Evaluation)測試詞向量在詞語類比(word analogy)和詞語相似性(word similarity)基準任務上的表現;外在評估(Extrinsic Evaluation)則直接將詞嵌入應用到下游任務(如情感分析、命名實體識別)並觀察任務表現的提升。

從詞嵌入到語境化嵌入(Contextualized Embeddings)是 NLP 的重大演進。傳統詞嵌入為每個詞賦予一個固定的向量,無法區分一詞多義(「銀行」在「河岸」和「金融機構」的語義不同)。ELMo(Embeddings from Language Models,2018)首先提出使用雙向 LSTM 語言模型為每個詞生成根據上下文動態變化的向量。隨後 BERT(2018)和 GPT 系列(2018-)以 Transformer 架構大幅提升了語境化表示的品質,成為現代大型語言模型的基礎。

在向量資料庫(Vector Database)與 RAG(Retrieval-Augmented Generation)架構盛行的當下,詞嵌入的概念延伸為文本嵌入(Text Embeddings):將整段句子、段落或文件編碼為單一向量,用於語義搜尋、相似度比較與知識檢索。OpenAI text-embedding、Cohere embed 等 API 提供現成的文本嵌入服務,廣泛應用於企業知識庫問答、客服機器人等場景。

IPAS 中級考試中,詞嵌入的考點包括:詞嵌入的動機(解決 one-hot 的語義盲問題)、Word2Vec 的兩種訓練架構(Skip-gram 與 CBOW)、詞向量的代數性質與語義空間、靜態詞嵌入與語境化嵌入的差別,以及詞嵌入在 NLP 下游任務中的應用方式。

常見問題

詞嵌入(Word Embeddings)和 BERT 的嵌入有什麼不同?

傳統詞嵌入(如 Word2Vec、GloVe)為每個詞賦予一個固定的靜態向量,無論這個詞出現在什麼上下文中,其向量表示都相同。這導致無法處理一詞多義問題:「蘋果」在「蘋果手機」和「蘋果汁」的語境中會有完全相同的向量。BERT 等現代語言模型產生的是語境化嵌入(Contextualized Embeddings):相同的詞在不同句子中會根據周圍上下文產生不同的動態向量表示,能有效區分不同語義。BERT 使用多層 Transformer Encoder,每個詞的輸出向量融合了整個句子的語境資訊。在大多數 NLP 下游任務上,語境化嵌入的表現顯著優於靜態詞嵌入,但計算成本也更高。

為什麼詞嵌入可以做向量加減法並產生有意義的語義結果?

詞嵌入的向量加減法之所以有意義,是因為訓練過程中,語義相關的詞往往出現在相似的上下文中,模型學到的向量在方向上隱含地編碼了詞之間的關係(如性別、國家與首都、時態等)。以最著名的例子 vector(king) - vector(man) + vector(woman) ≈ vector(queen) 為例:king 和 queen 的向量差異類似 man 和 woman 的向量差異(代表某種「性別軸」),因此這個加減法可以找到最接近的詞。這個性質被稱為詞向量的線性結構(Linear Structure),但需要注意它並非完美:類比的精度因詞對而異,且不是所有語義關係都能被線性捕捉。這個現象反映了分散式表示在向量空間中對語義結構的隱含組織。

在實務專案中,應該自己訓練詞嵌入還是使用預訓練的詞嵌入?

大多數情況下,直接使用預訓練詞嵌入(如 Word2Vec on Google News、GloVe on Common Crawl)作為起點是更實際的選擇,原因是:自行從頭訓練詞嵌入需要大量文本語料(通常數十億詞以上),對一般專案而言成本高昂且容易訓練不充分。若下游任務的領域語言與通用預訓練語料差異不大,直接凍結使用或微調預訓練詞嵌入效果通常已很好。若有大量特定領域語料(如醫療、法律、金融),可以選擇在通用預訓練詞嵌入的基礎上繼續在領域語料上訓練(Domain-Specific Fine-tuning),以捕捉領域專有詞彙。若使用的是 BERT 等現代語言模型,則通常直接微調整個模型而非單獨關注詞嵌入層。