云摘录︱Word2Vec 作者Tomas Mikolov 的三篇代表作解析
本文来源于公众号paperweekly
谈到了word2vec作者的三篇论文:
1、Efficient Estimation of Word Representation in Vector Space, 2013
2、Distributed Representations of Sentences and Documents, 2014
3、Enriching Word Vectors with Subword Information, 2016
(原标题:一周论文 Word2Vec 作者Tomas Mikolov 的三篇代表作)
——————————————————————————————————————————————
一、Efficient Estimation of Word Representation in Vector Space, 2013
词向量word2vec诞生稿!
传统的NNLM模型包含四层,即输入层、映射层、隐含层和输出层,计算复杂度很大程度上依赖于映射层到隐含层之间的计算,而且需要指定上下文的长度。RNNLM模型被提出用来改进NNLM模型,去掉了映射层,只有输入层、隐含层和输出层,计算复杂度来源于上一层的隐含层到下一层隐含层之间的计算。
本文提出的两个模型CBOW (Continuous Bag-of-Words Model)和Skip-gram (Continuous Skip-gram Model)结合了上面两个模型的特点,都是只有三层,即输入层、映射层和输出层。CBOW模型与NNLM模型类似,用上下文的词向量作为输入,映射层在所有的词间共享,输出层为一个分类器,目标是使当前词的概率最大。Skip-gram模型与CBOW的输入跟输出恰好相反,输入层为当前词向量,输出层是使得上下文的预测概率最大,如下图所示。训练采用SGD。
softmax(with huffman trees)来计算词概率。
sentence2vec和doc2vec,仿佛一下子进入了embedding的世界。NLP的这些思想也在用于recommendation等方面,并且与image结合,将image跟text之间进行转换。
二、Distributed Representations of Sentences and Documents
小结
matrix,这样在训练过程中保留了一部分段落或者文档信息。这点在目前看来也是有一定优势的。但是目前深度学习发展迅速,可以处理非常大的计算量,同时word2vec以及其变种被应用得非常普遍,因此该文章提出的方法思路大于模型,思路我们可以借鉴,模型就不具有优势了。
三、Enriching Word Vectors with Subword Information
方法上,本文沿用了word2vec的skip-gram模型,主要区别体现在特征上。word2vec使用word作为最基本的单位,即通过中心词预测其上下文中的其他词汇。而subword model使用字母n-gram作为单位,本文n取值为3~6。这样每个词汇就可以表示成一串字母n-gram,一个词的embedding表示为其所有n-gram的和。这样我们训练也从用中心词的embedding预测目标词,转变成用中心词的n-gram
embedding预测目标词。
实验分为三个部分,分别是(1)计算两个词之间的语义相似度,与人类标注的相似度进行相关性比较;(2)与word2vec一样的词类比实验;(3)与其他考虑morphology的方法比较。结果是本文方法在语言形态丰富的语言(土耳其语,法语等)及小数据集上表现优异,与预期一致。
小结
文章中提出的思路对于morphologically rich languages(例如土耳其语,词缀的使用极为普遍而有趣)来说十分有意义。词缀作为字母与单词之间的中层单位,本身具有一定的语义信息。通过充分利用这种中层语义来表征罕见词汇,直观上讲思路十分合理,也是应用了compositionality的思想。
利用形态学改进word embedding的工作十分丰富,但中文NLP似乎很难利用这一思路。其实个人感觉中文中也有类似于词缀的单位,比如偏旁部首等等,只不过不像使用字母系统的语言那样容易处理。期待今后也有闪光的工作出现在中文环境中。
云摘录︱Word2Vec 作者Tomas Mikolov 的三篇代表作解析的更多相关文章
- 第三篇:解析库之re、beautifulsoup、pyquery
BeatifulSoup模块 一.介绍 Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式.Be ...
- word2vec Explained: deriving Mikolov et al.'s negative-sampling word-embedding method
最近接到任务研究word2vec,感觉网络上关于这个的资料层次不齐,总感觉解释的都没有那么完善.或许就连作者本人也不是非常清楚为什么他的模型好使.论文中提到的negtive sampling给了我很大 ...
- 阿里云服务器Linux CentOS安装配置(三)yum安装mysql
阿里云服务器Linux CentOS安装配置(三)yum安装mysql 1.执行yum安装mysql命令:yum -y install mysql-server mysql-devel 2.启动mys ...
- JDFS:一款分布式文件管理系统,第三篇(流式云存储)
一 前言 看了一下,距离上一篇博客的发表已经过去了4个月,时间过得好快啊.本篇博客是JDFS系列的第三篇博客,JDFS的目的是为了实现一个分布式的文件管理系统,前两篇实现了基本的上传.下载功能,但是那 ...
- 使用亚马逊云服务器EC2做深度学习(三)配置TensorFlow
这是<使用亚马逊云服务器EC2做深度学习>系列的第三篇文章. (一)申请竞价实例 (二)配置Jupyter Notebook服务器 (三)配置TensorFlow (四)配置好的系统 ...
- TDSQL|三篇论文入选国际顶会SIGMOD,厉害了腾讯云数据库
好消息!6月13日,腾讯云数据库三篇论文再次入选数据库行业顶会SIGMOD,被SIGMOD 2022 Research Full Paper(研究类长文)收录. 本次被收录的研究成果中,新型数据结构设 ...
- SpringCloud核心教程 | 第三篇:服务注册与发现 Eureka篇
Spring Cloud简介 Spring Cloud是一个基于Spring Boot实现的云应用开发工具,它为基于JVM的云应用开发中涉及的配置管理.服务发现.断路器.智能路由.微代理.控制总线.全 ...
- 一年三篇IF大于7的牛人告诉你怎么写SCI
一年三篇IF大于7的牛人告诉你怎么写SCI 1 研究生必备四本 俗话说好记性不如烂笔头,所以一定要首先养成做笔记的好习惯!作为研究生下面这几个本子是必不可少的: 1.实验记录本(包括试验准备本),这当 ...
- Spring第二篇和第三篇的补充【JavaConfig配置、c名称空间、装载集合、JavaConfig与XML组合】
前言 在写完Spring第二和第三篇后,去读了Spring In Action这本书-发现有知识点要补充,知识点跨越了第二和第三篇,因此专门再开一篇博文来写- 通过java代码配置bean 由于Spr ...
随机推荐
- 锐捷配置telnet
.组网需求 通过Telnet功能远程登录管理设备. 二.组网拓扑 三.配置要点 1.需要给交换机配置一个管理IP,如果PC与交换机不是同一个网段,需要给交换机配置一个默认网关 2.需要配置一个 ...
- ASP.NET Core 2.0 : 一. 概述
为什么要使用 ASP.NET Core? .NET Core 刚发布的时候根据介绍就有点心里痒痒, 大概看了一下没敢付诸于行动, 现在2.0发布了一段时间了, 之前对其"不稳定" ...
- spring实例化bean三种方式
我看了这篇博文<https://www.cnblogs.com/zhanglei93/p/6221546.html>,以及自己实践总结了关于spring实例化bean对象的3种方式. 一. ...
- Django中模板的用法简介
1. 模板系统的介绍 Django作为一个Web框架,其模板所需的HTML输出静态部分以及动态内容插入 模板由HTML代码和逻辑控制代码构成 Django框架的模板语言的语法格式: {{var_nam ...
- 解决mysql、vsftp远程连接速度慢的问题
以 centOS 6.3(其他操作系统类似,同样适用)说明: 当我们的服务都配置正常的情况下,有时会出现连接速度慢而导致连接失败的问题 问题分析:这些情况一般都是DNS解析惹的祸 mysql连接速度慢 ...
- AWWWB.COM网站克隆器
AWWWB.COM建议收费软件实行免费化的倡议书:AWWWB.COM原打算对软件中的高级功能收取260元的注册费,但是,考虑到网友使用软件的同时也是对软件的支持和传播,所以,放弃收费计划,实施一种免费 ...
- 对把JDK源码的一些注解,笔记
//对treeMap的红黑树理解注解. 2017.02.16 by 何锦彬 JDK,1.7.51 /** From CLR */ private void fixAfterInsertion(Entr ...
- Kibana安装配置
Kibana 是一个开源的分析和可视化平台,是ELK的重要部分.Kibana提供搜索.查看和与存储在 Elasticsearch 索引中的数据进行交互的功能.开发者或运维人员可以轻松地执行高级数据分析 ...
- jq实现碰到边缘反弹的动画
先上效果图: 录出来有点卡顿的赶脚,实际上还是挺顺畅的. 1.HTML: <div class="box"></div> 2.CSS: body{ back ...
- Vi/Vim的快捷方式
1 vi/ vim键盘图 2 文字解说 进入编辑模式的6种方式: i在光标前插入 I在行首插入 a在光标后插入 A在行末插入 o在下一行插入 O在上一行插入 删除字符 x 删除当前字符 X 删除前一个 ...