gpt4 book ai didi

nlp - 如何将单词嵌入向量组合为一个向量?

转载 作者:行者123 更新时间:2023-12-04 14:23:38 26 4
gpt4 key购买 nike

我完全了解单词嵌入的含义和方法(skip-gram,CBOW)。而且我知道Google拥有word2vector API,通过获取单词可以生成矢量。
但我的问题是:我们有一个包含主语,宾语,动词...的子句,每个词以前都是由Google API嵌入的,现在“我们如何将这些向量组合在一起以创建一个等于条款?”
例子:
条款:V =“狗咬人”
在Google嵌入单词后,我们将V1,V2,V3分别映射到狗,狗,人。而且我们知道:
V = V1 + V2 + V3
我们如何提供V?
如果您以实际向量为例进行说明,将不胜感激。

最佳答案

向量基本上只是数字列表。您可以通过将每个列表中相同位置的数字加在一起来添加向量。这是一个例子:

a = [1, 2, 3]
b = [4, 5, 6]
c = a + b # vector addition
c is [(1+4), (2+5), (3+6)], or [5, 7, 9]

this question所示,在python中执行此操作的简单方法如下:
map(sum, zip(a, b))

向量加法是 线性代数的一部分。如果您不了解向量和矩阵的运算,那么很难理解围绕词向量的数学运算,因此,您可能通常希望学习更多有关线性代数的知识。

通常,将单词向量加在一起是一种近似句子向量的好方法,因为对于任何给定的单词集,都有明显的顺序。但是,您的 Dog bites manMan bites dog示例显示了添加向量的弱点-结果不会根据单词顺序而变化,因此,即使两个句子的含义非常不同,这两个句子的结果也将相同。

有关获取受词序影响的句子向量的方法,请查看 doc2vec或刚刚发布的 InferSent

关于nlp - 如何将单词嵌入向量组合为一个向量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44786174/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com