基本描述
对于随机初始化词向量和其他相关参数的训练模型,总免不了随机性的存在,而这种随机噪声可能会对那些有用信息产生干扰,从而降低模型的效果。其次,对于一些小语种,可能并不能提供足够大的语料库以支持词向量模型的训练,故需要更加充分地利用仅有的数据。
将不同的模型整合成一个模型可能能够很好地解决上述两个问题。但是该文的方法和我预期的还是有点差距。我所期望的是将两个不同的模型整合成一个模型的方法,如将Word2vec和其他的什么模型进行结合,以提高词向量训练的效率,更有甚者,可以将词向量的训练模型同其他领域的一些模型相结合,以达到取长补短,优势互补的效果。但是该方法是将同一模型的不同训练结果进行线性变换,以综合若干个不同的训练结果。
线性变换方法
线性变换的目标是使下式最小。区中Y是指最后生成的词向量矩阵,W是通过某个模型训练出来的词向量矩阵,P是变换矩阵。
该文一共提出了两种不同的线性变换方法,其中一个是利用最小二乘法(the standard least squares solution)解决线性变换,另一个是the Orthogonal Procrustes problem的解决办法。最小二乘法解决的是这样一个问题,Y = PW,其中Y和W都是已知的矩阵,求的是转换矩阵P。求解方法如下所示。为了防止PW和Y趋向于0,产生一个无效解,需要对Y矩阵进行变换,使其每列的方差都为1.
the Orthogonal Procrustes problem的解决办法有一个限制条件,就是转换矩阵是一个正交矩阵,这个限制很好的解决了最小二乘法遇到的问题。首先,其需要计算
然后计算
最后转换矩阵P即是
算法过程
该算法通过迭代训练,每一轮迭代有两个步骤
其迭代的终止条件的阈值计算如下所示