Efficient Estimation of Word Representations/zh
| Research Paper | |
|---|---|
| Authors | Tomas Mikolov; Kai Chen; Greg Corrado; Jeffrey Dean |
| Year | 2013 |
| Venue | ICLR Workshop |
| Topic area | NLP |
| Difficulty | Research |
| arXiv | 1301.3781 |
| Download PDF | |
Efficient Estimation of Word Representations in Vector Space 是 Mikolov 等人於 2013 年在 Google 發表的論文,提出了 Word2Vec,一類用於從大規模文本語料庫中學習分布式詞表示(詞嵌入)的高效計算方法。該論文提出了兩種新穎的架構 —— Continuous Bag-of-Words(CBOW)和 Skip-gram —— 它們能夠在數小時內基於數十億詞進行訓練,產生能夠捕捉詞語句法和語義關係的向量表示,包括著名的詞類比特性。
概述
先前關於分布式詞表示的工作使用神經語言模型,聯合學習詞向量和語言模型,但這些方法計算開銷大,難以擴展到非常大的語料庫。較簡單的模型,如潛在語義分析(LSA),能夠捕獲共現統計信息,但無法保留詞語之間的線性規律。
Mikolov 等人提出了兩種架構,剝離了完整神經語言模型的複雜性 —— 去除了非線性隱藏層 —— 以專注於高效地學習詞向量。所得模型能夠在使用適度計算資源的情況下,在一天之內基於數十億詞的語料庫完成訓練,同時產生質量出人意料地高的詞向量。
主要貢獻
- CBOW 模型:一種根據周圍上下文詞預測目標詞的架構,使用上下文詞向量的平均值作為輸入。
- Skip-gram 模型:一種在給定目標詞的情況下預測周圍上下文詞的架構,實際上反轉了 CBOW 的目標。
- 詞類比評估:引入了用於評估詞向量質量的詞類比測試集,證明向量算術能夠捕捉語義和句法關係。
- 可擴展性:證明可以從非常大的語料庫(最多 60 億個詞元)中學習高質量的詞向量,訓練時間不到一天。
方法
兩種模型都在文本語料庫上以滑動窗口方式運行,學習根據上下文預測詞語(CBOW)或根據詞語預測上下文(Skip-gram)。
Continuous Bag-of-Words(CBOW)模型在給定上下文詞窗口 $ \{w_{t-c}, \ldots, w_{t-1}, w_{t+1}, \ldots, w_{t+c}\} $ 的情況下預測中心詞 $ w_t $。其輸入是上下文詞向量的平均值:
$ \mathbf{h} = \frac{1}{2c} \sum_{-c \leq j \leq c, j \neq 0} \mathbf{v}_{w_{t+j}} $
目標詞的概率使用 softmax 計算:
$ P(w_t \mid \text{context}) = \frac{\exp(\mathbf{v}'_{w_t} \cdot \mathbf{h})}{\sum_{w \in V} \exp(\mathbf{v}'_w \cdot \mathbf{h})} $
其中 $ \mathbf{v}_w $ 和 $ \mathbf{v}'_w $ 分別是詞 $ w $ 的輸入和輸出向量表示。
Skip-gram 模型則相反,從中心詞預測上下文詞。在給定中心詞 $ w_t $ 的情況下,模型最大化:
$ \frac{1}{T} \sum_{t=1}^{T} \sum_{-c \leq j \leq c, j \neq 0} \log P(w_{t+j} \mid w_t) $
其中:
$ P(w_O \mid w_I) = \frac{\exp(\mathbf{v}'_{w_O} \cdot \mathbf{v}_{w_I})}{\sum_{w \in V} \exp(\mathbf{v}'_w \cdot \mathbf{v}_{w_I})} $
在大詞彙表上計算完整的 softmax 代價過高。該論文採用了基於霍夫曼樹的分層 softmax,將複雜度從 $ O(V) $ 降低到 $ O(\log V) $。後續論文引入了 negative sampling 作為更簡單且通常更有效的替代方案。
一個關鍵的架構決策是去除了先前神經語言模型中存在的非線性隱藏層。這一簡化對計算效率至關重要,而且令人驚訝的是,並未損害所學習表示的質量。
結果
最引人注目的結果是詞向量之間出現了線性關係。所學習的表示通過向量算術支持詞類比:
$ \text{vector}(\text{"king"}) - \text{vector}(\text{"man"}) + \text{vector}(\text{"woman"}) \approx \text{vector}(\text{"queen"}) $
該論文引入了一個綜合的詞類比測試集,包含 8,869 個語義類比問題和 10,675 個句法類比問題。結果表明:
- Skip-gram 在 7.83 億詞的訓練語料庫上取得了最佳的語義準確率(55%)和具有競爭力的句法準確率。
- CBOW 訓練更快,取得了最佳的句法準確率,以及具有競爭力的語義準確率。
- 準確率隨訓練數據規模和向量維度的增加而持續提高,直至達到收益遞減的程度。
- 兩個模型在類比任務上均顯著優於包括 NNLM 和 RNNLM 在內的先前方法,且訓練速度快幾個數量級。
在 60 億詞的 Google News 語料庫上使用 300 維向量進行訓練(採用後續的 negative sampling 方法),生成了廣泛使用的預訓練 Word2Vec 向量。
影響
Word2Vec 通過將詞嵌入確立為神經 NLP 系統的標準輸入表示,變革了 NLP 領域。在 Word2Vec 之前,大多數 NLP 系統依賴於稀疏的高維表示,如 one-hot 向量或 TF-IDF。Word2Vec 證明,稠密的低維向量能夠捕捉豐富的語言結構,並在不同任務之間有意義地遷移。
類比特性吸引了公眾的想象力,成為所學表示編碼有意義結構的標誌性範例。Word2Vec 嵌入在 2010 年代中期幾乎每個 NLP 系統中都被用作特徵,從情感分析到機器翻譯。
這些模型直接影響了後續關於嵌入的工作,包括 GloVe、FastText 以及 ELMo 和 BERT 等上下文嵌入。儘管靜態詞向量在很大程度上已被來自大型語言模型的上下文表示所取代,Word2Vec 仍是一個基礎性的參考點,並且在計算效率至關重要的應用中仍被使用。
參見
- Attention Is All You Need
- BERT Pre-training of Deep Bidirectional Transformers
- Language Models are Few-Shot Learners
參考文獻
- Mikolov, T., Chen, K., Corrado, G., & Dean, J. (2013). Efficient Estimation of Word Representations in Vector Space. ICLR 2013 Workshop. arXiv:1301.3781
- Mikolov, T., Sutskever, I., Chen, K., Corrado, G., & Dean, J. (2013). Distributed Representations of Words and Phrases and their Compositionality. NeurIPS 2013. arXiv:1310.4546.
- Pennington, J., Socher, R., & Manning, C. D. (2014). GloVe: Global Vectors for Word Representation. EMNLP 2014.