• 序列模型-NLP和词嵌入


    1、词汇表征:

    one-hot表征、词嵌入

    2、学习词嵌入

    word2vec:Word2vec算法是一种简单的计算更加高效的方式来实现对词嵌入的学习

    Skip-gram:所做的是在语料库中选定某个词(Context),随后在该词的正负10个词距内取一些目标词(Target)与之配对,构造一个用Context预测输出为target的监督学习问题,训练一个如下图结构的网络:

    o(c)  -> E -> e(c) -> O(softmax) -> y_

    softmax:输出context下target出现的条件概率:

    p(t|c) = exp(θte(c))/∑exp()

    Word2vec中还有一种CBOW模型,它的工作方式是采样上下文中的词来预测中间的词,与Skip-gram相反

    负采样模型中构造了一个预测给定的单词是否为一对Context-target的新监督学习问题,网络结构可以是skip-gram或者cbow

     

     训练过程中,从预料库中选定Context,输入的词为一对Context-Target,则标签设置为1。另外任取k对非Context-Target,作为负样本,标签设置为0.只有较少的数据,k的取值5~20的话,能达到比较好的效果;拥有大量的训练数据,k的取值取2~5较为合适。原网络中的softmax变成多个Sigmoid单元,输出Context-Target(c,t)对为正样本(y=1)的概率

    模型中一般采用以下公式来计算选择某个词作为负样本的概率:

    其中代表语料库中单词wi的出现的频率

    softmax:

    将n维实值向量转化为取值范围在(0,1)之间的n维实值向量,且和为1,多用于表征函数,softmax(x) = softmax(x+c);

  • 相关阅读:
    JavaWeb-过滤器入门
    JavaWeb-监听器
    JavaWeb-session的钝化和活化
    Create-React-App项目外使用它的eslint配置
    三种方法在当前目录下打开cmd命令窗口
    js脚本实现自动上传至github
    js中的柯里化
    从小白到使用antd+react+react-router+issue+es6搭建博客
    react在router中传递数据的2种方法
    教你怎么看网站是用react搭建的
  • 原文地址:https://www.cnblogs.com/lxw003/p/8602765.html
Copyright © 2020-2023  润新知