自然语言处理
solitude23
这个作者很懒,什么都没留下…
展开
-
GloVe模型训练
GloVe全称是Global Vectors,原文在这里,是2014年提出的模型。下面先对模型做一个大致的解释,然后讨论训练方法。有不当之处请指正。两类学习词向量的家族:1 全局矩阵分解方法:像LSA(latent semantic analysis),有效的利用语料库的统计信息,但是在单词类比任务上做的较差。2 局部上下文窗口方法:像skip-gram模型,在类比任务上表现较好,但是没有利用语料库的统计信息。模型有效地利用了统计信息,它对共现矩阵中的非零元素进行训练,而不是对整个稀疏矩阵或大型语原创 2020-05-26 15:53:09 · 1514 阅读 · 2 评论 -
CBOW(Continuous Bag-of-Words)模型原理
原文在这里,总结一下有关CBOW模型的原理,代码是搬运的。Skip-gram模型与之类似,就不展开详细说明了。有理解不正确的地方请指正。模型架构CBOW模型包含三层:输入层,投影层,输出层。与NNML相比,去掉了隐藏层。CBOW是根据上下文预测中心词,有点类似于完形填空。上下文的多少是个超参数,可以自己调整。在构建数据集时,根据CBOW的特点,一般是将上下文当作输入,中心词当作标签。训练时,首先随机初始一个矩阵C∈R∣V∣×dimC\in R^{|V|\times dim}C∈R∣V∣×dim,原创 2020-05-25 17:56:56 · 3950 阅读 · 0 评论 -
神经网络语言模型(NNML)
把自己对神经网络语言模型(NNML)的一些理解记录下来,有理解不正确的地方还请在评论区批评指正。原文可在这里阅读下载模型结构如下图所示:模型包含:输入层,投影层,隐藏层,以及输出层。输入层:将前N-1个词(wt−n+1,⋯ ,wt−2,wt−1)(w_{t-n+1}, \cdots,w_{t-2}, w_{t-1})(wt−n+1,⋯,wt−2,wt−1)用1-of-∣V∣|V|∣V∣编码方式(好像是dummy coding,可以参考pandas中的get_dummies函数)编码,VVV是原创 2020-05-19 21:03:08 · 2256 阅读 · 0 评论