一文看懂自然语言处理语言模型 n-gram word-embedding CBOW Skip-gram word2vec glove解读

35 篇文章 0 订阅

1.n-gram

自己理解:
  • n代表窗口长度,n-gram的思想就是先滑窗,然后统计频次,然后计算条件概率,你可以取前面n个的条件概率,不一定要取全部的,最后得到的是整个句子的一个概率,那这个概率可以代表句子的合理性。

详情见:
https://zhuanlan.zhihu.com/p/32829048
在这里插入图片描述
在这里插入图片描述

如何利用n-gram作为额外的特征呢?

例如:
我 爱 北京 天安门

这样词就有各种组合了:
它的一到三gram为:
[我,爱,北京,天安门,我爱,我北京,我天安门,…,我爱北京,我爱天安门,…]就是不同的组合,然后每一个词对应onehot特征里面的1维。

那么原来的我爱北京天安门的特征就是根据这段语句生成的一到三gram的组合。
在这里插入图片描述
https://zhuanlan.zhihu.com/p/29555001

2 NNLM(Neural Network Language Model)

NNLM模型的构造输入是前n个字的onehot特征,输出是这段文字的条件概率,也就是通过学习这个条件概率来学习embedding。
在这里插入图片描述
中间有激活函数,用的激活函数是双曲正切
在这里插入图片描述

在这里插入图片描述
其实是一个开创性的创举,然后word2vec改了一下,让他更容易训练,训练更快了,去掉了激活函数,直接预测下一个词,感觉改得好简单啊。

3 word2vec

  • 数据结构和算法——Huffman树和Huffman编码:https://blog.csdn.net/google19890102/article/details/54848262
3.1 分层softmax

https://www.cnblogs.com/guoyaohua/p/9240336.html
在这里插入图片描述

3.2 负采样

https://zhuanlan.zhihu.com/p/39684349

  • 高频词抽样
    在这里插入图片描述
  • 负采样
    在这里插入图片描述

4.Glove详解

看了之后一脸懵逼,实际情况是这样,因为word2vec是利用上下文特定长度窗口内的文本去训练一个词向量,这样每次看到的都是局部的信息,如果和全部词的信息利用起来呢?
g l o v e 首 先 构 造 一 个 共 线 矩 阵 , 这 个 矩 阵 通 过 一 翻 设 计 , 可 以 衡 量 两 个 词 之 间 共 同 出 现 的 概 率 关 系 , 然 后 类 似 于 w o r d 2 v e c , 去 学 习 这 个 共 线 矩 阵 , 这 样 得 到 的 中 间 结 果 作 为 词 向 量 , 注 意 这 里 有 两 个 词 向 量 , 都 可 以 用 , 只 是 随 机 化 参 数 不 一 样 , 最 后 可 以 取 二 者 的 平 均 , 最 后 就 是 加 了 一 个 权 重 因 子 , 来 更 好 的 对 频 次 较 高 和 较 低 的 词 做 一 些 修 正 , 具 体 详 情 如 下 : glove首先构造一个共线矩阵,这个矩阵通过一翻设计,可以衡量两个词之间共同出现的概率关系,然后类似于word2vec,去学习这个共线矩阵,这样得到的中间结果作为词向量,注意这里有两个词向量,都可以用,只是随机化参数不一样,最后可以取二者的平均,最后就是加了一个权重因子,来更好的对频次较高和较低的词做一些修正,具体详情如下: glove线word2vec线
在这里插入图片描述
通俗易懂理解——Glove算法原理:
https://zhuanlan.zhihu.com/p/42073620
GloVe详解
http://www.fanyeong.com/2018/02/19/glove-in-detail/
nlp中的词向量对比:word2vec/glove/fastText/elmo/GPT/bert
https://zhuanlan.zhihu.com/p/56382372

其他参考链接:
https://www.cnblogs.com/guoyaohua/p/9240336.html
https://zhuanlan.zhihu.com/p/53425736
https://zhuanlan.zhihu.com/p/61635013
https://blog.csdn.net/bitcarmanlee/article/details/82291968

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值