Deep learning for NLP(summary)

回顾一下cs224d中提及的神经网络在nlp中的应用.

word2vec

A Neural Probabilistic Language Model

z在nlp任务中, 我们希望将词表达为一个向量, 而通常来说词库都会非常大, 采用one-hot 编码的话, 假设词库的容量是 V , 那么每一个词都是一个 R|V|×1 的向量. 显然这个维度很大, 而根据统计, 英语中有13 million的token, 这样表达十分消耗内存. 而且 w(a)Tw(b)=0 (每个向量都是正交的) , 也就是说词与词之间的相关性都是0, 这显然与常识相违背,比如father和mother, hotel和room之间肯定是存在一定的相关性的, 必须作出修正(降维…)来更好的进行词的表达., 可以采用Window besed Co-occurrence Matrix 的方法, 这种方法有几个缺点:
1. 新词加入的时候矩阵的维度要改变
2. 矩阵过于稀疏, 因为大多数词是不相关的
3. 矩阵维度过大(≈106×106)
4. 训练时间过长, o(n2)
5. 需要一些技巧来解决词频的不均衡性

我们希望通过概率模型来改进这种算法, 如Unigram, Bigram模型就假设了词与前面一或两个词的出现相关. 这种都是基于统计的角度来考虑的. 在2003年, Bengio 发表了一篇用神经网络来训练词向量的文章[1].

这里写图片描述
通过前面的n 个词来预测下一个词:

y=b+Wx+Utanh(d+Hx)
. 其中 x 是词库矩阵 C的拼接.
x=
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值