💡一句話定義
Word2Vec 用「上下文預測」學詞向量,有兩種架構:CBOW 用上下文預測中心詞(多對一,快、對常見詞好);Skip-gram 用中心詞預測上下文(一對多,慢、對罕見詞與小語料較好)。
🎮互動:罕見詞「貔貅」拿到幾次更新
切換 CBOW / Skip-gram,按「下一步」滑動視窗。留意當中心詞是罕見詞「貔貅」時:CBOW 只累加 1 次更新;Skip-gram 對每個上下文詞各產生一次更新(+N)——罕見詞因此拿到更多訓練訊號。
罕見詞的魔鬼訓練:CBOW vs Skip-gram
中心詞 (Target)
上下文詞 (Context)
目前設定:視窗大小 (Window Size) = 2
💎 罕見詞「貔貅」累積更新次數
0
點擊下一步開始觀察
⚖️CBOW vs Skip-gram 對照
| 面向 | CBOW(多對一) | Skip-gram(一對多) |
|---|---|---|
| 預測方向 | 上下文 → 中心詞 | 中心詞 → 每個上下文詞 |
| 速度 | 較快(上下文平均後一次預測) | 較慢(每個上下文各一次) |
| 常見詞 | 表現好 | 也不錯 |
| 罕見詞 / 小語料 | 易被強勢詞淹沒 | 較好(罕見詞拿到更多更新) |
💪為什麼 Skip-gram 對罕見詞好?
🩹罕見詞問題與解法
📉問題
罕見詞出現太少、缺上下文,向量品質差、不穩定。
罕見詞出現太少、缺上下文,向量品質差、不穩定。
🧩子詞嵌入
FastText 用字元 n-gram 組成詞向量,連沒見過的詞也能推。
FastText 用字元 n-gram 組成詞向量,連沒見過的詞也能推。
📚更多語料
擴充資料量,讓罕見詞多出現幾次。
擴充資料量,讓罕見詞多出現幾次。
🧠情境式嵌入
改用現代 LLM 的上下文嵌入,罕見詞也能靠上下文推。
改用現代 LLM 的上下文嵌入,罕見詞也能靠上下文推。
⚠️靜態 vs 情境式
Word2Vec 是靜態詞向量——一個詞只有一個固定向量,無法區分多義(「蘋果」水果與公司同一個向量)。現代 LLM 用情境式嵌入:同一個詞在不同句子有不同向量,更能處理一詞多義。Word2Vec 仍是理解嵌入原理的經典起點。
✅自我檢測
Q1. CBOW 和 Skip-gram 的預測方向差在哪?
CBOW 用「上下文預測中心詞」(多對一);Skip-gram 用「中心詞預測每個上下文詞」(一對多)。前者快、後者慢但對罕見詞好。
Q2. 為什麼 Skip-gram 對罕見詞比較有利?
罕見詞當中心詞時,Skip-gram 要獨自預測周圍每一個詞,有幾個上下文就有幾次獨立更新;CBOW 只累加 1 次整體更新,罕見詞訊號還會被平均淹沒。
Q3. 罕見詞嵌入差怎麼改善?
用子詞嵌入(如 FastText 以字元 n-gram 組成、能推未見詞)、擴充語料,或改用現代 LLM 的情境式嵌入。
Q4. Word2Vec 和現代情境嵌入最大差別?
Word2Vec 是靜態嵌入(一詞一固定向量、無法區分多義);現代 LLM 是情境式(同詞在不同句子向量不同),更能處理一詞多義。
🎯重點整理
- CBOW:上下文→中心詞,多對一,快、對常見詞好。
- Skip-gram:中心詞→上下文,一對多,慢、對罕見詞好。
- 關鍵:Skip-gram 讓罕見詞拿到成倍的更新訊號。
- 罕見詞解法:FastText 子詞、擴充語料、情境式嵌入。
- 限制:靜態詞向量無法區分多義,LLM 情境嵌入已取代。