词向量

我们以句子分类为例,我们使用深度学习模型对句子进行分类,本质上这个模型的接受的舒服需要是数值型。因为文字是人们抽象出来的一个概念,这个
东西是不能被计算机直接理解的,我们需要人为的将这个文字转为数值,换句话讲,我们需要把这个文字嵌入到一个数学空间中去,这中嵌入方式就是词嵌入方式。
Word2vec 就是词嵌入的一种方式(word embedding)

对于有监督的一个机器学习过程,我们可以这么理解这个模型,是一个 f(x) -> y 的映射关系。

在NLP中,x代表的是句子中的一个词,y是这个词的上下文词语,那么这里的f代表的就是NLP中出现的语言模型(language model),这个模型的目的,
最根本的就是判断(x,y)这个样本是否符合自然语言的法则,通俗点将,就是说x和y放在一起是不是人话。

关于语言模型来讲,
如果用一个词语作为输入,来预测它周围的上下文,这个模型我们称之为 skip-gram模型
如果用一个词语的上下文作为输入,来预测这个词语的本身,则是 CBOW 模型

[NLP] 秒懂词向量Word2vec的本质 - 穆文的文章 - 知乎
https://zhuanlan.zhihu.com/p/26306795
word2vec是如何得到词向量的? - crystalajj的回答 - 知乎
https://www.zhihu.com/question/44832436/answer/266068967
Word Embedding 如何处理未登录词? - 韦阳的回答 - 知乎
https://www.zhihu.com/question/308543084/answer/576517555

引申
哈哈,之前也突然懵逼过,word2vec那么简单,那么用的是输入还是输出矩阵?个人感觉,两者都可以用,甚至可以拿输入矩阵转置作为输出矩阵,也没必要存储两个矩阵,不管CBOW还是skip-gram都能保证相似语境下的相关性。主要是w2v太简单了,纯粹是内积运算,本身是对称的。其他例如fasttext或doc2vec就不太一样,加入了side infomation,更极端DNN中常用的embdding,都不能脱离网络直接拿来用了。相似性度量方法太多了,分应用场景吧,w2v本身就是内积,用cos很合适,还归一化了。
另外不知道item2vec是不是真的有效,在i2i挖掘上,graph embedding真的是神器。
不得不说,w2v虽然简单,但是影响了很多模型应用,五体投地了~

上面这个文字见下面这个文章的评论
万物皆Embedding,从经典的word2vec到深度学习基本操作item2vec - 王喆的文章 - 知乎
https://zhuanlan.zhihu.com/p/53194407

词向量1.md的更多相关文章

  1. Word Representations 词向量

    常用的词向量方法word2vec. 一.Word2vec 1.参考资料: 1.1) 总览 https://zhuanlan.zhihu.com/p/26306795 1.2) 基础篇:  深度学习wo ...

  2. [Algorithm & NLP] 文本深度表示模型——word2vec&doc2vec词向量模型

    深度学习掀开了机器学习的新篇章,目前深度学习应用于图像和语音已经产生了突破性的研究进展.深度学习一直被人们推崇为一种类似于人脑结构的人工智能算法,那为什么深度学习在语义分析领域仍然没有实质性的进展呢? ...

  3. 开源共享一个训练好的中文词向量(语料是维基百科的内容,大概1G多一点)

    使用gensim的word2vec训练了一个词向量. 语料是1G多的维基百科,感觉词向量的质量还不错,共享出来,希望对大家有用. 下载地址是: http://pan.baidu.com/s/1boPm ...

  4. Deep Learning In NLP 神经网络与词向量

    0. 词向量是什么 自然语言理解的问题要转化为机器学习的问题,第一步肯定是要找一种方法把这些符号数学化. NLP 中最直观,也是到目前为止最常用的词表示方法是 One-hot Representati ...

  5. word2vec生成词向量原理

    假设每个词对应一个词向量,假设: 1)两个词的相似度正比于对应词向量的乘积.即:$sim(v_1,v_2)=v_1\cdot v_2$.即点乘原则: 2)多个词$v_1\sim v_n$组成的一个上下 ...

  6. 学习笔记TF018:词向量、维基百科语料库训练词向量模型

    词向量嵌入需要高效率处理大规模文本语料库.word2vec.简单方式,词送入独热编码(one-hot encoding)学习系统,长度为词汇表长度的向量,词语对应位置元素为1,其余元素为0.向量维数很 ...

  7. 词向量-LRWE模型

    上一节,我们介绍利用文本和知识库融合训练词向量的方法,如何更好的融合这些结构化知识呢?使得训练得到的词向量更具有泛化能力,能有效识别同义词反义词,又能学习到上下文信息还有不同级别的语义信息. 基于上述 ...

  8. NLP︱高级词向量表达(三)——WordRank(简述)

    如果说FastText的词向量在表达句子时候很在行的话,GloVe在多义词方面表现出色,那么wordRank在相似词寻找方面表现地不错. 其是通过Robust Ranking来进行词向量定义. 相关p ...

  9. NLP︱高级词向量表达(二)——FastText(简述、学习笔记)

    FastText是Facebook开发的一款快速文本分类器,提供简单而高效的文本分类和表征学习的方法,不过这个项目其实是有两部分组成的,一部分是这篇文章介绍的 fastText 文本分类(paper: ...

随机推荐

  1. CentOS 6.5下安装Tomcat --专业增强版 非yum

    Tomcat安装 通常情况下我们要配置Tomcat是很容易的一件事情,但是如果您要架设多用户多服务的Java虚拟主机就不那么容易了.其中最大的一个问题就是Tomcat执行权限.普通方式配置的Tomca ...

  2. Vue-Cli 3 引入 SCSS 全局变量

    首先创建一个全局变量文件 global.scss $theme-color: #efefef; 编辑vue.config.js module.exports = { // ... css: { loa ...

  3. cf914F. Substrings in a String(bitset 字符串匹配)

    题意 题目链接 Sol Orz jry 和上一个题一个思路吧,直接bitset乱搞,不同的是这次有了修改操作 因为每次修改只会改两个位置,直接暴力改就好了 #include<bits/stdc+ ...

  4. Windows之CMD查看系统信息

    Windows 系统通过命令行(CMD)查询系统信息有两种方式: 1.图形化界面: 在“运行”中键入CMD,然后输入 dxdiag,回车后弹出图形化界面 ------ DirectX 诊断工具. 2. ...

  5. Java对象转换成Json字符串是无法获得对应字段名

    问题: 代码中已经标注 @JSONField(name = "attrs") private String abc; public String getA() { return a ...

  6. vue2.0高仿饿了么better-scroll

    首先安装better-scroll npm i better-scroll -S goods页面模板 <template> <div class="goods"& ...

  7. .Net CIL

    MachineCode->Assembly->CIL(.Net) or SpecialMachineCode(JVM)->Pogramming code CIL Instructio ...

  8. [原创]Debian9 从零编译配置Redis4.0

    序言 Redis 一.准备工作 1.1 更新系统安装包列表 没啥,就他喵想用个最新的. # apt update 1.2 创建需要使用的目录 创建目录source和web,分别用来放源码和编译后的文件 ...

  9. Azure CDN:氮气加速已开启,司机们请做好准备

    在上一周,我们向各位小伙伴介绍了通过 Azure CDN 高级版服务为 HTTPS 应用加速的做法,漏掉的小伙伴可以点击这里穿越回去补课哦.那我们今天讲点什么呢?当然是 CDN 最重要的价值:改善应用 ...

  10. ajax请求传过来的json数据直接转成对应的实体类时出错:400 Bad Request 不进入controller

    今天开发过程中,在SpringMVC中的Action中处理前台ajax请求传过来的json数据直接转成对应的实体类时出错:400 Bad Request,后台也不报错,400指的的是请求无效(请求有语 ...