【问题标题】:Creation of Position vectors in Convolution Neural Network for Relation Classification在卷积神经网络中为关系分类创建位置向量
【发布时间】:2018-03-24 21:59:23
【问题描述】:
这个问题与使用 CNN 中的位置向量进行关系分类有关,如 Zeng 等人在以下多个出版物中所述:http://www.aclweb.org/anthology/C14-1220
我正在尝试在 tensorflow 中实现这样的模型。我的问题如下:
使用随机初始化的向量来表示位置信息有什么好处吗?例如,为什么不使用 100 维的 one-hot 向量编码来表示位置?不建议将one-hot向量与稠密词向量结合吗?
位置向量是否有最小维度,取决于词向量的维度?例如,假设词向量维数是 500,那么位置向量的维数 10 会不会太小而在模型中没有价值?是否有一系列已知的维度在位置向量方面表现良好?
用于编码位置信息的随机初始化向量之间的距离是否重要?
非常感谢您花时间研究这个问题!
【问题讨论】:
标签:
nlp
deep-learning
conv-neural-network
【解决方案1】:
关于问题 1,我没有解释为什么将 one-hot 和密集表示相结合是不好的,但根据经验,看看其他人报告的结果,学习位置的嵌入似乎更好。
Yoav Goldberg 在他的 NLP Deep Learning book(第 96 页)中也提到了这一点:
在“传统”的 NLP 设置中,
距离通常通过将距离分成几组(即 1、2、3、4、5-10、
10+) 并将每个 bin 与 one-hot 向量相关联。在神经架构中,输入
向量不是由二进制指标特征组成的,分配单个输入似乎很自然
距离特征的条目,其中该条目的数值是距离。
然而,这
实践中没有采用这种方法。相反,距离特征的编码与其他特征类似
特征类型:每个 bin 与一个 d 维向量相关联,这些距离嵌入
然后将向量作为网络中的常规参数进行训练 [dos Santos et al., 2015, Nguyen
and Grishman, 2015, Zeng et al., 2014, Zhu et al., 2015a]。
也许您可以通过查看引用的论文找到更多关于为什么嵌入更好的见解。
关于问题 2,我想说,只要维度足够大,模型可以为您要编码的每个位置学习不同的嵌入,就应该没问题。所以它们在实践中可能非常小。