深度神经网络在NLP的应用!

↑↑↑关注后"星标"Datawhale

每日干货 & 每月组队学习,不错过

 Datawhale干货 

作者:张泽,华东师范大学,Datawhale优秀学习者

深度学习正在给自然语言处理带来巨大的变革,例如机器翻译,情感分析,问答系统等落地实践。深度学习对NLP的影响主要有如下几点:

  • 神经网络结构对自然语言处理领域的影响最深刻;

  • 深度学习可以对自然语言处理的各个层面制定学习任务;

  • 密集词汇表示的重要性和学习表示的方法。

今天,我们以文本分类为实践,详解深度神经网络在自然语言处理中的应用。

1. 数据及背景

https://tianchi.aliyun.com/competition/entrance/531810/information(阿里天池-零基础入门NLP赛事)

2. 文本表示

传统离散式文本表示主要是one-hot编码以及tf-idf等编码方式,但往往存在以下问题:

  • 无法衡量词向量之间的关系。

  • 词表的维度随着语料库的增长而膨胀。

  • n-gram词序列随语料库增长呈指数型膨胀,更加快。

  • 离散数据来表示文本会带来数据稀疏问题,导致丢失了信息,与我们生活中理解的信息是不一样的。

为了解决前面提到的离散表示文本存在的问题,我们接下来介绍文本的分布式表示。

2.1 词嵌入

将所有词语投影到K维的向量空间,每个词语都可以用一个K维向量表示。好处是Distributed representation — word embedding:这种非稀疏表示的向量很容易求它们之间的距离(欧式、余弦等),从而判断词与词语义上的相似性,也就解决了one-hot方法表示两个词之间的相互独立的问题。

下面介绍的Word2Vec属于NNLM模型,即神经网络语言模型(Neural Network Language model),它是通过训练得到词向量矩阵,这就是我们要得到的文本表示向量矩阵。NNLM说的是定义一个前向窗口大小,把这个窗口中最后一个词当做y,把之前的词当做输入x。通俗来说就是预测这个窗口中最后一个词出现概率的模型。

2.2 Word2vec

Word2Vec模型是一种简单化的神经网络,用于对文本的分布式表示。它包含了两个训练模型(Skip-gram,CBOW)以及两种加速的方法(Hierarchical Softmax,Negative Sampling)。

2.2.1 CBOW 模型

CBOW模型是在已知当前词上下文context的前提下预测当前词w(t),类似阅读理解中的完形填空。

2.2.2 Skip-Gram 模型

相反,Skip-Gram模型是在已知当前词w(t)的前提下,预测上下文context。Skip-gram 模型的目标是最大化对数条件概率:

里面的条件概率即softmax函数:

u是权重(也是这个词的词向量),v就是所要迭代的向量,将该式子代入上式并取log可以得到:

对上述目标函数求最大化,可以让相似的词具有相似的向量值。

Softmax 分母是词汇表大小的求和,其复杂度比较高,需要提出快速又有效的算法,于是就有了Negtive sampling 以及 Hierarchical Softmax。

2.2.3 Negative Sampling

正例:中心词是 w,它周围上下文共有2c个词,记为 。由于这个中心词 ,的确和 相关存在,因此它是一组正例。

负例:通过负采样,我们得到 (负采样的个数)个和 w 不同的中心词wi,i=1,2,..neg,这样

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值