
语言模型
皮果提
这个作者很懒,什么都没留下…
展开
-
word2vec 中的数学原理详解(六)若干源码细节
word2vec 是 Google 于 2013 年开源推出的一个用于获取 word vector 的工具包,它简单、高效,因此引起了很多人的关注。由于 word2vec 的作者 Tomas Mikolov 在两篇相关的论文 [3,4] 中并没有谈及太多算法细节,因而在一定程度上增加了这个工具包的神秘感。一些按捺不住的人于是选择了通过解剖源代码的方式来一窥究竟,出于好奇,我也成为了他们中的一员。读完代码后,觉得收获颇多,整理成文,给有需要的朋友参考。原创 2014-07-20 23:51:59 · 40953 阅读 · 34 评论 -
word2vec 中的数学原理详解(二)预备知识
word2vec 是 Google 于 2013 年开源推出的一个用于获取 word vector 的工具包,它简单、高效,因此引起了很多人的关注。由于 word2vec 的作者 Tomas Mikolov 在两篇相关的论文 [3,4] 中并没有谈及太多算法细节,因而在一定程度上增加了这个工具包的神秘感。一些按捺不住的人于是选择了通过解剖源代码的方式来一窥究竟,出于好奇,我也成为了他们中的一员。读完代码后,觉得收获颇多,整理成文,给有需要的朋友参考。原创 2014-07-19 22:46:40 · 103084 阅读 · 30 评论 -
word2vec 中的数学原理详解(一)目录和前言
word2vec 是 Google 于 2013 年开源推出的一个用于获取 word vector 的工具包,它简单、高效,因此引起了很多人的关注。由于 word2vec 的作者 Tomas Mikolov 在两篇相关的论文 [3,4] 中并没有谈及太多算法细节,因而在一定程度上增加了这个工具包的神秘感。一些按捺不住的人于是选择了通过解剖源代码的方式来一窥究竟,出于好奇,我也成为了他们中的一员。读完代码后,觉得收获颇多,整理成文,给有需要的朋友参考。原创 2014-07-19 22:42:50 · 264015 阅读 · 315 评论 -
word2vec 中的数学原理详解(五)基于 Negative Sampling 的模型
word2vec 是 Google 于 2013 年开源推出的一个用于获取 word vector 的工具包,它简单、高效,因此引起了很多人的关注。由于 word2vec 的作者 Tomas Mikolov 在两篇相关的论文 [3,4] 中并没有谈及太多算法细节,因而在一定程度上增加了这个工具包的神秘感。一些按捺不住的人于是选择了通过解剖源代码的方式来一窥究竟,出于好奇,我也成为了他们中的一员。读完代码后,觉得收获颇多,整理成文,给有需要的朋友参考。原创 2014-07-20 23:44:50 · 107763 阅读 · 36 评论 -
word2vec 中的数学原理详解(四)基于 Hierarchical Softmax 的模型
word2vec 是 Google 于 2013 年开源推出的一个用于获取 word vector 的工具包,它简单、高效,因此引起了很多人的关注。由于 word2vec 的作者 Tomas Mikolov 在两篇相关的论文 [3,4] 中并没有谈及太多算法细节,因而在一定程度上增加了这个工具包的神秘感。一些按捺不住的人于是选择了通过解剖源代码的方式来一窥究竟,出于好奇,我也成为了他们中的一员。读完代码后,觉得收获颇多,整理成文,给有需要的朋友参考。原创 2014-07-19 22:53:39 · 160379 阅读 · 123 评论 -
边界熵和边界多样性
在 NLP 任务中,特征是一个很重要的概念。在实际应用中,除一些常规的特征外,我们还经常会引入一些有用的额外特征,例如,进行命名实体识别(named entity recognition)任务时,可以提供一个这样的特征:指明一个字是否为常见中国姓氏。另外,也可以引入一些基于统计的量,例如 边界熵(boundary entropy),边界多样性(accessor variety)等就常用于非监督型的原创 2013-11-07 14:24:50 · 5338 阅读 · 0 评论 -
利用 word2vec 训练的字向量进行中文分词
最近针对之前发表的一篇博文《Deep Learning 在中文分词和词性标注任务中的应用》中的算法做了一个实现,感觉效果还不错。本文主要是将我在程序实现过程中的一些数学细节整理出来,借此优化一下自己的代码,也希望为对此感兴趣的朋友提供点参考。文中重点介绍训练算法中的模型参数计算,以及 Viterbi 解码算法。原创 2013-12-04 18:28:04 · 35839 阅读 · 24 评论 -
Deep Learning 在中文分词和词性标注任务中的应用
开源软件包 SENNA 和 word2vec 中都有用到了词向量(distributed word representation),当时我就在想,对于我们的中文,是不是也该有字向量(distributed character representation)的概念呢?最近恰好读到复旦大学郑骁庆博士等人的文章 [1]《Deep Learning for Chinese Word Segmentation and POS tagging》。这篇文章利用文 [3] 作者提出的算法框架,针对中文分词和词性标注任务,给原创 2013-10-30 01:20:21 · 27553 阅读 · 11 评论 -
关于词向量工作原理的理解
在知乎网站上看到一个关于词向量的问题:词向量( Distributed Representation)工作原理是什么,哪位大咖能否举个通俗的例子说明一下? 恰好最近在学习 word2vec, 尝试着根据对所读文献的理解写了个回答。 要将自然语言交给机器学习中的算法来处理,通常需要首先将语言数学化,词向量就是用来将语言中的词进行数学化的一种方式。原创 2013-10-16 17:14:24 · 12457 阅读 · 4 评论 -
word2vec 中的数学原理详解(三)背景知识
word2vec 是 Google 于 2013 年开源推出的一个用于获取 word vector 的工具包,它简单、高效,因此引起了很多人的关注。由于 word2vec 的作者 Tomas Mikolov 在两篇相关的论文 [3,4] 中并没有谈及太多算法细节,因而在一定程度上增加了这个工具包的神秘感。一些按捺不住的人于是选择了通过解剖源代码的方式来一窥究竟,出于好奇,我也成为了他们中的一员。读完代码后,觉得收获颇多,整理成文,给有需要的朋友参考。原创 2014-07-19 22:49:37 · 107566 阅读 · 79 评论