在一个好的词嵌入中,“king”(国王)减去“man”(男人)加上“woman”(女人)会落在“queen”(女王)附近。这种算术之所以有效,是因为向量编码的是含义,而不仅仅是拼写。每个词都变成了一个密集的数字列表,通常有100到300个维度,这些数字的位置使得相似的词在向量空间中彼此靠近。
早期的表示方法将词语视为孤立的符号。例如,“cat”的独热向量并不能表示“kitten”。词嵌入通过对大型文本语料库进行训练改变了这一点:出现在相似上下文中的词语最终会得到相似的向量。分布假设,大致相当于“词与词的关联性”,是整个概念的核心。
常用方法
- Word2Vec 可以根据单词的相邻单词预测另一个单词,反之亦然。
- GloVe,它考虑了全局共现矩阵。
- FastText 将单词表示为字符 n-gram 的词袋。
- 来自 BERT 和类似模型的上下文嵌入,其中单词的向量取决于其所在的句子。
静态词嵌入(例如 Word2Vec)为每个词分配一个向量,因此“bank”在“river bank”(河岸)和“bank account”(银行账户)中具有相同的表示形式。上下文模型解决了这种歧义,这也是它们目前占据主导地位的原因。但缺点是成本较高:计算上下文向量需要运行整个模型。
Comments
No comments yet. Be the first to share a thought.
Leave a comment