• Word2vec


    一、Word2vec简介

      一个将词表示为含有语义信息的向量的模型。
      一段文本——> 向量表示——>含有语义信息的向量表示。
    例如:
    输入:自然 语言 处理 包含 很多

    二、CBoW

    CBoW原理图


      通过上下文预测中间词。设置窗口为2,根据同中心词距离不超过2的背景词,生成中心词。即根据“自然”、“语言”、“包含”、“很多”预测生成“处理”的概率。
      因为连续词袋模型的背景词有多个,我们将这些背景词向量取平均,然后使用和Skip-gram模型一样的方法来计算条件概率。设(v_{i})(u_{i})分别表示词典中索引为i的词作为背景词和中心词的向量(注意符号的含义与跳字模型中的相反)。设中心词w_{c}在词典中索引为c,背景词(w_{o_{1}},...,w_{o_{2m}})在词典中索引为o_{1},...,o_{2m},那么给定背景词生成中心词的条件概率:

    (W_{o}=left { w_{o_{1}},...,w_{o_{2m}} ight })(hat{v}_{o}=left ( v_{o_{1}}+...+v_{o_{2m}} ight )/left ( 2m ight )),化简后的公式如下:

      给定一个长度为T的文本序列,设时间步t的词为(w^{left ( t ight )}),背景窗口大小为m。连续词袋模型的似然函数是由背景词生成任一中心词的概率。

      损失函数定义为log函数处理最大似然估计后的反函数。


      可以计算出上式中条件概率的对数有关任一背景词向量(v_{o_{i}})(left ( i=1,...,2m ight ))的梯度

    三、Skip-gram

    Skip-gram原理图


      通过中心词预测上下文。设置窗口为2,生成与中心词距离不超过2的背景词的条件概率。即根据“处理”预测生成“自然”、“语言”、“包含”、“很多”的概率。
    (Pleft ( "自然","语言","包含","很多"mid "处理" ight ))
    假设给定中心词的情况下,背景词的生成是相互独立的,那么上式可以改写成
    (Pleft ( "自然"mid "处理" ight )cdot Pleft ( "语言"mid "处理" ight )cdot Pleft ( "包含"mid "处理" ight )cdot Pleft ( "很多"mid "处理" ight ))
      在Skip-gram模型中,每个词被表示成两个d维向量,用来计算条件概率。假设这个词在词典中索引为i,当它为中心词时向量表示为(v_{i}),而为背景词时向量表示为(u_{i})。设中心词(w_{c})在词典中索引为c,背景词(w_{o})在词典中索引为o,给定中心词生成背景词的条件概率可以通过对向量内积做softmax运算而得到:

      其中词典索引集(v=left { 0,1,...,left | v ight |-1 ight })。假设给定一个长度为T的文本序列,设时间步t的词为(w^{left ( t ight )})。假设给定中心词的情况下背景词的生成相互独立,当背景窗口大小为m时,跳字模型的似然函数即给定任一中心词生成所有背景词的概率。

      损失函数定义为log函数处理最大似然估计后的反函数。


      参数梯度的求导。

  • 相关阅读:
    godaddy 亚太机房 更换 美国机房 全过程(图)
    博客园设置访问密码
    GoDaddy Linux主机支持机房的更换
    今天电信宽代终于装上光纤了,升级或安装光纤需购光猫,可以自购。我来扫盲一下
    我来科普一下为毛很多人升级了20M的电信光纤宽带反而感觉速度更卡了
    百度浏览器使用率统计
    hdu 1281
    C#基于SMTP协议和SOCKET通信,实现邮件内容和附件的发送,并可隐藏收件人
    如何处理标注打架
    提高你的Java代码质量吧:谨慎包装类型的比较
  • 原文地址:https://www.cnblogs.com/wisteria68/p/13505576.html
Copyright © 2020-2023  润新知