词向量:如何评价词向量的好坏

2022-09-06 13:12:05 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

一、前言

词向量、词嵌入或者称为词的分布式表示,区别于以往的独热表示,已经成为自然语言任务中的一个重要工具,对于词向量并没有直接的方法可以评价其质量,下面介绍几种间接的方法。

二、评价方法

对于词向量的评价更多还是应该考虑对实际任务的收益,脱离的实际任务很难确定A模型就一定比B好,毕竟词向量方法更多是一种工具。

1、语义相关性任务

这个任务用来评价词向量模型在两个词之间的语义相关性,如:学生与作业,中国与北京等。 具体方法由监督模式实现,首先需要一份如下的标记文件,一般可以由人工标注:

代码语言:javascript复制
学生 上课 0.78
教师 备课 0.8
...

上述文件代表了词语之间的语义相关性,我们利用标注文件与训练出来的词向量相似度进行比较,如:词向量之间的cos距离等,确定损失函数,便可以得到一个评价指标。 但这种方法首先需要人力标注,且标注的准确性对评价指标影响非常大。

2、语义类比任务

这个任务词向量来考察不同单词间的语义关系能力,一般给定三个词,如a、b、c,要求寻找a b = c ?任务中最相似的词,一般使用向量间距离来进行寻找,如:

代码语言:javascript复制
queen-king man=women

同样需要准备标记文件,根据寻找出来的词的正确率判断词向量的质量。

3、文本分类任务

这个任务利用词向量构成文本向量,一般采用求和平均的方式,之后利用构成的文本向量进行文本分类,根据分类的准备率等指标衡量词向量的质量。

三、模型优化

1、模型

对于自然语言处理任务,在模型效果相差不大的情况下,选用简单的模型。 同样,复杂的模型对于大规模的语料效果更为明显,小语料尽量用简单模型。

2、语料

选用与自然语言任务同领域的语料,提升效果会非常明显,在一定语料规模范围内,语料越大,效果越好;如果使用不同领域的语料,甚至会有反面效果。 在语料的选择上,同领域的语料比大规模的其他领域语料重要。

3、向量维度

向量维度太小难以表现出语义的复杂度,一般更大的维度的向量表现能力更强,综合之下,50维的向量可以胜任很多任务。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/136392.html原文链接:https://javaforall.cn

0 人点赞