1、,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,2,#,词语表示方法简介,1,2,Menu,One-Hot,表示方法,PPMI,矩阵表示,基于,SVD,的表示方法,基于神经网络的表示方法,2,12/3/2024,One-Hot,表示方法,NLP,中最直观,也是到目前为止最常用的词表示方法是,One-hot Representation,,这种方法把每个词表示为一个很长的向量。这个向量的维度是词表大小,其中绝大多数元素为,0,,只有一个维度的值为,1(,或者出现的次数,),,这个维度就代表了当前的词。,“话筒”表示为,0 0 0,1,0 0 0 0 0 0
2、0 0 0 0 0 0,“麦克”表示为,0 0 0 0 0 0 0 0,1,0 0 0 0 0 0 0,3,12/3/2024,One-Hot,表示方法,这种,One-hot Representation,如果采用稀疏方式存储,会是非常的简洁:也就是给每个词分配一个数字,ID,。比如刚才的例子中,话筒记为,3,,麦克记为,8,(假设从,0,开始记)。,存在问题,词义鸿沟,维度灾难,4,12/3/2024,PPMI,矩阵表示,词语表示的向量长度等同于,term,表的长度,对于单词的表示,统计所有词语与该词语作为上下文时出现的次数,如要得到,cat,的单词向量,我们就统计,cat,和其他所有单词在
3、局部上下文中的共现情况,假设,cat,和,plays,在语料中共现,1000,次,plays,对应的维度是,55,那么,cat,单词向量的第,55,维就是,1000,。,5,12/3/2024,PPMI,矩阵表示,是一种和,one-hot,表示方法类似的稀疏表示方法,能够对于共现关系进行表示,同样存在维度爆炸的问题,(,英文单词有限,目前算力可以支持,跨语言时会出现维度爆炸问题,),6,12/3/2024,LSA/LSI,LSA(latent semantic analysis),潜在语义分析,也被称为,LSI(latent semantic index),主要对词语,-,文档矩阵进行,SVD
4、,,,对一个,t*d,维的矩阵,(,单词,-,文档矩阵,)X,可以分解为,U*D*V,t,其中,U,为,t*m,维矩阵,U,中的每一列称为左奇异向量,(left singular bector),D,为,m*m,维对角矩阵,每个值称为奇异值,(singular value),V,t,为,d*m,维矩阵,每一列称为右奇异向量。,7,12/3/2024,LSA/LSI,8,12/3/2024,LSA/LSI,优点,1,)低维空间表示可以刻画同义词,同义词会对应着相同或相似的主题。,2,)降维可去除部分噪声,是特征更鲁棒。,3,)充分利用冗余数据。,4,)无监督,/,完全自动化。,5,)与语言无关。
5、,9,12/3/2024,LSA/LSI,缺点,1,),LSA,可以处理向量空间模型无法解决的一义多词,(synonymy),问题,但不能解决一词多义,(polysemy),问题。因为,LSA,将每一个词映射为潜在语义空间中的一个点,也就是说一个词的多个意思在空间中对于的是同一个点,并没有被区分。,2,)特征向量的方向没有对应的物理解释。,3,),SVD,的计算复杂度很高,而且当有新的文档来到时,若要更新模型需重新训练。,4,)没有刻画,term,出现次数的概率模型。,10,12/3/2024,共现矩阵分解,类似于,LSA/LSI,,我们还可以对,PPMI,矩阵进行分解,使用,SVD,分解,设
6、,term,表大小为,n,,则矩阵为,n*n,大小的方阵,然后使用,SVD,进行分解,分解为,U*D*V,t,然后使用,U,阵作为词语表示的信息,11,12/3/2024,共现矩阵分解,特点,对于词语的共现频率有良好的支持,训练出的结果在近义词数据集上效果好,(ws353,等,),12,12/3/2024,Word2vec,Word2vec,是,Mikolov,提出的词语表示模型,主要包含两个模型:,CBOW,Skip-gram,两个框架:,Hierarchical Softmax(HS),Negative Sampling(NS),13,12/3/2024,Word2vecNerual Ne
7、twork Language Model(NNLM),14,12/3/2024,Word2vecNerual Network Language Model(NNLM),三层神经网络架构,输入层,投影层,输出层,输入单词使用,one-hot,编码,输入层是 单词数,*,词向量大小的矩阵,保存词向量,投影层是将输入的映射后的向量 用,tanh,激活,输出层使用,softmax,函数,训练目标:最大化下面的函数,15,12/3/2024,Word2vec,16,12/3/2024,Word2vec,模型与,NNRM,非常类似,也是输入层,投影层和输出层三层,CBOW,模型主要用当前词的上下文预测当前
8、词,Skip-gram,模型主要用当前词来预测上下文,所以,CBOW,目标函数为,Skip-gram,目标函数为,17,12/3/2024,Word2vecCBOW,18,12/3/2024,Word2vecCBOW,输入层,包含上下文中,n,个相关词的词向量,如我们选定,n,为,2,,则上下文长度为,2,,则会包含上文,2,个词和下文,2,个词的词向量,投影层,将输入的,2n,个词向量做累加,即,输出层,输出一颗二叉树,以语料中出现过的词作为叶子节点,以词语在语料中出现的次数作为权值构造出的,Huffman,树,叶子节点数,N,为,term,表的长度,非叶子节点为,N-1,个,针对,NNLM
9、,中隐藏层到输出层的计算以及,softmax,计算等计算复杂度比较高的地方进行针对性的优化,并引入了,Huffman,树,为,Hierachical Softmax,技术奠定基础,19,12/3/2024,Word2vecHierachical Softmax,HS,是,word2vec,中用于提高性能的关键技术,我们假设词典,D,中的词,w,使得,P,w,:,从根结点出发到达,w,对应叶子节点的路径,L,w,:,路径,P,w,中包含结点的个数,P,1,w,P,2,w,P,lw,w,:,路径,P,w,中的,L,w,个结点,其中,P,1,w,表示根结点,,P,lw,w,表示词,w,对应的结点,D
10、,1,w,D,2,w,D,lw,w,:,词,w,的,Huffman,编码,由,L,w,-1,位编码组成,,D,j,w,表示路径,P,w,中第,j,个结点对应的编码,1,w,2,w,lw-1,w,:,路径,P,w,中非叶子节点对应的向量,,j,w,表示路径,P,w,中第,j,个非结点对应的向量,20,12/3/2024,Word2vecHierachical Softmax,W=,足球,的时候,图中红色的边构成路径,P,w,该路径长度为,5,,则,L,w,=5,P,1,w,P,2,w,P,3,w,P,4,w,P,5,w,为路径,P,w,上五个结点,D,2,w,D,3,w,D,4,w,D,5,w,
11、分别为,1,,,0,,,0,,,1,1,w,2,w,3,w,4,w,分别表示路径,P,w,上,4,个非叶子结点对应的向量,21,12/3/2024,Word2vecHierachical Softmax,以,足球,为例,路径每经过一个结点都可以看成一个二分类,在,word2vec,中,编码为,1,的结点为负类,编码为,0,的结点为正类。,根据逻辑回归,我们可以发现每个结点被分为正类概率为,被分为负类的概率为,22,12/3/2024,Word2vecHierachical Softmax,在例子中,单词经过了,4,次二分类,概率分别为:,基于以上的概率,我们可以表示目标词的概率如下,23,12
12、/3/2024,Word2vecHierachical Softmax,对于词典,D,中的任意词,w,,,Huffman,树中必存在一条从根结点到词,w,的对应结点路径,路径上的每一个分支都可以看做是一个二分类,将这些概率乘起来就是我们需要的目标词概率,写成条件式为,写成整体表达式为,24,12/3/2024,Word2vecHierachical Softmax,基于神经网络语言模型目标函数通常选用对数似然函数,将概率计算式带入对数似然函数可得,25,12/3/2024,Word2vecHierachical Softmax,对于目标函数的最大化方式,,word2vec,采用了随机梯度上升法
13、,我们可以把目标函数的双重求和符号表示为,可得,由上式可知,该函数包含的参数包括向量 和,关于 的梯度计算如下,26,12/3/2024,Word2vecHierachical Softmax,对于 的更新公式可以写为,,n,表示学习率,同理,关于 的梯度,由于目标函数中,两个变量是对称的,所以其梯度可以表示为,由于 表示的是上下文词向量的累加,我们通过下式对词向量进行更新,27,12/3/2024,Word2vecSkip-gram,28,12/3/2024,Word2vecSkip-gram,输入层,只包含当前样本的中心词,投影层,恒等投影,主要方便与,CBOW,模型对比,输出层,与,CB
14、OW,一样,输出一颗二叉树,29,12/3/2024,Word2vecSkip-gram,参考,CBOW,,我们可以构造条件概率为,使用,HS,的思想,可以将,p(u|w),写为,然后可以使用类似于,CBOW,模型中的似然函数处理方法进行处理,30,12/3/2024,Word2vecHierachical Softmax,把上式代回对数似然函数可得,类似的,将三重求和符号简写,可以表示为,31,12/3/2024,Word2vecHierachical Softmax,类似于,CBOW,模型,我们可以把关于 的梯度用下式计算,可以将该变量的更新公式写为,32,12/3/2024,Word2vecHierachical Softmax,同样利用 和 的对称性,可以将词向量的更新公式表示为,33,12/3/2024,基于,CNN,表示,TextCNN,是利用卷积神经网络对文本进行分类的算法,34,12/3/2024,