各向量长度到固定长度(NLP)的向量方法

时间:2018-04-17 02:47:26

标签: nlp word2vec word-embedding dictvectorizer

最近,我一直在研究自然语言处理及其矢量化方法和每个矢量化器的优点。

我是要进行矢量化的角色,但似乎对每个单词的字符矢量化器最担心的是嵌入具有固定长度。

我不想只用0来嵌入它们,这就是众所周知的0填充,例如,目标固定长度为100且仅存在72个字符,然后在末尾填充所有28个0。

  

"段落和短语的例子.... ...在矢量化器形式" <长度为72

变为

  

[0,25,60,12,24,0,19,99,7,32,47,11,19,43,18,19,6,25,   43,49,0,32,40,14,20,5,37,47,99,11,29,7,17​​,47,18,20,   60,18,19,2,19,11,31,130,130,76,0,32,40,14,20,7,19,47,   18,20,60,11,37,43,99,11,29,99,17,39,47,11,31,18,19,   43,0,19,77,0,0,0,0,0,0,0,0,....,0,0,0,0,0,0]

我想让矢量处于N个固定维度的公平分布形式不像上面那个

如果你知道任何论文或算法更喜欢考虑这个问题,或者从不同长度的矢量产生固定长度矢量的常用方法请分享。

gojomo要求提供更多信息;

我正在尝试获取语料库中单词的字符级别向量。

让我们说,在上面的例子中,"段落的例子......"以

开头
  

T [40]

     

h [17]

     

e [3]

     

e [3]

     

x [53]

     

a [1]

     

m [21]

     

p [25]

     

l [14]

     

e [3]

请注意,每个字符都有自己的编号(等等,可以是ascii),word表示字符向量组合的向量,例如,

  

[40,17,3]

     

例子[3,53,1,21,25,14,3]

哪些向量不在同一维度。在上面提到的情况下,许多人在最后填充0以使其具有统一的大小

例如,如果有人想要将每个单词的维度设置为300,则将297个0填充为字母""并且将293个0填充到"示例"。,如

  

[40,17,3,0,0,0,0,0,......,0]

     

示例[3,53,1,21,25,14,3,0,0,0,0,0 ......,0]

现在我不认为这种填充方法适合我的实验,所以我想知道是否有任何方法将其矢量转换为统一形式而不是稀疏形式(如果允许这个术语)。

即使用两个单词的短语,"示例"只需要11个字符,但也不够长。

无论是什么情况,我想知道是否有一些众所周知的技术可以将非正式长度的矢量转换为固定长度。

谢谢!

0 个答案:

没有答案