one-hot(独热)、bag of word(词袋)、word-Embedding(词嵌入)浅析

目录

词袋模型

one-hot

word-embedding


我们知道,传统的数据挖掘任务面向的是结构化数据。结构化数据很好理解,就是很有结构的数据嘛。

比如下面这张银行客户数据库中的表格:

编号

姓名

年龄

年收入

职业

有无欠贷

01

夕小瑶

16(就好了)

100

学生

02

王大锤

40

1,000,000

副总裁

03

吴名

30

200,000

程序员

而基于上述历史信息来完成某项数据挖掘任务的话,每一维度的特征很明确,表格的每一列,或者说每个属性(attribute)就是一个特征。因此每一个样本,即每一行就可以轻松的表示为一个特征向量。

但是我们知道,自然语言文本是非结构化的。因此基于自然语言文本的数据挖掘任务,也就是文本挖掘任务,该如何下手呢?或者说,如何从文本中抽象出机器学习算法认识的特征向量呢?

词袋模型

一个很容易想到的是,将自然语言文本的每个词作为一个特征。因此对应的特征向量即这些特征的组合。这种思路虽然naïve,但是很有效哦。基于这种思想的模型就是词袋模型(Bag of Words),也叫向量空间模型(Vector Space Model)。

 

有了词袋模型后,每个特征(即每个词)的值该如何定义呢?或者说每个词该如何编码呢?如何进一步生成我们需要的特征向量呢?

one-hot

 

同样一个很naive的想法就是:设词典的大小为n(词典中有n个词),假如某个词在词典中的位置为k,则设立一个n维向量,第k维置1,其余维全都置0。这个思想就是one-hot编码,中文叫独热编码(茫茫0海中有一个1,不就是孤独的热点吗)。

比如这里有三句话,即三个样本:

“我喜欢你”;

“你喜欢你的狗狗”;

“你是狗狗”。

假设已经分词完成,那么如果我们要从这三个样本中挖掘信息的话,根据词袋模型的思想:

首先就要将这些句子中出现过的词构建一个词典。这个词典依次包含[我,喜欢,你,的,是,狗狗]这六个词。根据one-hot编码,“我”就会被编码为[1,0,0,0,0,0],而“喜欢”就被编码为[0,1,0,0,0,0],以此类推。

那么如何继续推进,利用one-hot编码来生成特征向量呢?

一个样本的特征向量即该样本中的每个单词的one-hot向量直接相加。这三个样本的特征向量便会表示为:

我喜欢你:[1,1,1,0,0,0]

你喜欢你的狗狗:[0,1,2,1,0,1]

你是狗狗:[0,0,1,0,1,1]

其中,第二个句子中“你”出现了两次,因此第三维的值为2。但是注意一下,在有的机器学习模型,比如贝努利分布的朴素贝叶斯模型中,仅考虑每个词出现与否,此时第二个句子的词袋模型就变成了[0,1,1,1,0,1]。

看,特征向量构建完成啦,剩下的就交给机器学习吧~

但是这样的话,仔细一想,好像麻烦挺大的。比如涉及到的单词很多时,词典会变得超大,动辄几千上万维。因此每个样本的特征向量也会变得极其稀疏(大部分维度的值为0),这么高的维数对于很多机器学习模型比如神经网络,那简直是训练的灾难呐。

再一想,好像更不合理。因为这样编码的话,还忽略了单词的语义!比如明明“喵星人”和“猫”是同一个意思,却被编码成了两个不同的词。

有没有办法同时解决上述这两个问题呢?

 

word-embedding

解决方案就是word-embedding,中文叫词向量,也叫词嵌入。实质就是将单词编码成低维实数向量。(专业的说法是将单词映射到一个低维空间,就像一个嵌入的过程,因此叫word-embedding)

比如“狗”或许会被编码成[0.192, 0.221, -0.442, ...],一般来说维度会控制在500维以下,几十维也是常有的。但是一般不会上升到千维。

那么怎么表示单词之间的语义关系呢?其实将每个词映射到低维向量空间后就很明朗啦。比如我们的词向量限制为2维。那么词“猫”、“狗”、“开心”、“惊讶”、“手机”映射成词向量后在向量空间中可能是这样子的:

可以看到,“狗”和“猫”都是动物,语义相近,因此具有很小的夹角,同理还有“开心”和“惊讶”。而“狗”和“手机”这两个关系不大的词语便会有很大的夹角。这种度量夹角来计算向量之间距离的专业说法叫计算余弦相似度

合格的词向量除了在语义上相近会被编码到邻近的区域,还应该支持简单的语义运算,将语义运算映射为向量运算。比如:

“中国”+“首都”=“北京”;

“王子”-“公主”=“男”-“女“;

在向量空间看起来是类似这个样子的

看,有了词向量这么智能的编码方法,是不是感觉用它来做文本挖掘的信心强了很多呢?

 

虽然词向量很智能,然而词向量的生成并不是一件容易的事情。至今如何训练高精度的词向量依然是NLP、IR领域的热门topic,也是深度学习在NLP领域的一个应用重点(小夕悄悄告诉你,其实目前来看,关于词向量的生成,浅层神经网络跟深度神经网络的效果差不多)。如果有喵喵对词向量的生成产生了极大的兴趣,又具备足够的机器学习,尤其是神经网络的基础的话,可以Google一下下面小夕推荐的论文:

 

1、Yoshua Bengio, Rejean Ducharme, Pascal Vincent, and Christian Jauvin. A neural probabilistic language model. Journal of Machine Learning Research (JMLR),3:1137–1155, 2003

2、Turian Joseph, Lev Ratinov, and Yoshua Bengio. Word representations: a simple and general method for semi-supervised learning. Proceedings of the 48thAnnual Meeting of the Association for Computational Linguistics (ACL). 2010

3、MikolovT, Sutskever I, Chen K, et al. Distributed representations of words and phrases and their compositionality[C]//Advancesin neural information processing systems. 2013: 3111-3119.

4、Mikolov T, Chen K, Corrado G, et al. Efficient estimation of word representations in vector space[J]. arXiv preprintarXiv:1301.3781, 2013.

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/480725.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

德勤发布《 2020 亚太四大半导体市场的崛起》报告,美国收入占比达到47%,中国大陆仅占 5%

德勤发布《 2020 亚太四大半导体市场的崛起》报告(以下简称《报告》),《报告》指出: 亚太地区半导体市场正在全球加速崛起,中国大陆、日本、韩国和中国台湾,占据全球半导体总收入前六大国家/地区的四席。美…

干货 | 机器学习算法在饿了么供需平衡系统中的应用

干货 | 机器学习算法在饿了么供需平衡系统中的应用 image:url(https://ask.qcloudimg.com/avatar/1292807/6341kxs4h2.png?imageView2/2/w/72)">用户1292807发表于携程技术中心订阅830作者简介陈宁,饿了么人工智能与策略部高级算法专家,负责供…

研讨会 | “人工智能与行业知识图谱技术实战”研讨会

人工智能时代2017年7月,国务院《新一代人工智能发展规划》明确提出“建立新一代人工智能关键共性技术体系”的重点任务和设立“新一代人工智能重大科技项目以及“1N”人工智能项目群”,特别强调“研究跨媒体统一表征、关联理解与知识挖掘、知识图谱构建与…

Sigmoid函数与Softmax函数的区别与联系

目录 缘起逻辑回归 Sigmoid Softmax 缘起逻辑回归 逻辑回归模型是用于二类分类的机器学习模型(不要说逻辑回归可以做多类分类啊喂,那是二类分类器的组合策略问题,而与逻辑回归分类器本身的构造没有半毛钱关系啊)。 我们知道&…

数据挖掘算法(logistic回归,随机森林,GBDT和xgboost)-腾讯云社区

机器学习就是样本中有大量的x(特征量)和y(目标变量)然后求这个function。(了解更多可以看: https://zhuanlan.zhihu.com/p/21340974?refermlearn ) 求函数的方法,基于理论上来说&am…

阿里P8高级架构师教你如何通过BAT面试顺利拿到offer

“ 在开始面试之旅之前还是要多说几句,选公司是要看时机的 ,建议先去小公司试试水,找找感觉,其次建议选熟人内推,也是对面试成功率有帮助的,那么就开始今天的面试之旅吧。 一:招聘方式 BAT技术…

论文浅尝 | SenticNet 5: 借助上下文嵌入信息为情感分析发现概念级别的原语

Citation: Cambria E, Poria S, Hazarika D, et al.SenticNet 5: discovering conceptual primitives for sentiment analysis by meansof context embeddings[C]//AAAI. 2018.概述目前大部分的人工智能的研究都集中在基于统计学习的方法,这些方法需要大量的训练数据…

文本匹配(语义相似度)综述

本文转载自公众号“夕小瑶的卖萌屋”,专业带逛互联网算法圈的神操作 -----》我是传送门 关注后,回复以下口令: 回复【789】 :领取深度学习全栈手册(含NLP、CV海量综述、必刷论文解读) 回复【入群】&…

大型网站架构设计

“ 大型网站的架构设计,涉及到的面非常多,并不像大家想象的那样,就是一个网站这么简单,今天抛砖引玉,希望能给想从事互联网行业的同学一点初步的概念。 架构设计,其实就要清楚整个大型网站技术架构的演变…

强化学习之原理与应用

PaddlePaddle原创2019/02/20 17:23强化学习之原理与应用强化学习特别是深度强化学习近年来取得了令人瞩目的成就,除了应用于模拟器和游戏领域,在工业领域也正取得长足的进步。百度是较早布局强化学习的公司之一。这篇文章系统地介绍强化学习算法基础知识…

论文浅尝 | 基于多原型mention向量的文本-实体联合学习

链接:http://anthology.aclweb.org/P/P17/P17-1149.pdf概述在知识库和文本的联合表示中,歧义是个困扰的难题。同一个 mention 可能在不同的语境下表述不同实体,同一个实体又有多种 mention 表示,如下图。本文提出了一个新的表示方…

NLP预训练模型综述:从word2vec, ELMo到BERT

目录 前言 word2vec 模型 负采样 char-level与上下文 ELMo BERT 深层双向的encoding 学习句子与句对关系表示 简洁到过分的下游任务接口 前言 还记得不久之前的机器阅读理解领域,微软和阿里在SQuAD上分别以R-Net和SLQA超过人类,百度在MS MARCO…

一篇文章了解架构设计的本质

“ 大型网站的架构设计,涉及到的面非常多,并不像大家想象的那样,就是一个网站这么简单,今天抛砖引玉,希望大家正确看待架构设计。 什么是架构设计的本质? 任何系统,自然情况下,都是…

看完这篇Linux基本的操作就会了

只有光头才能变强这个学期开了Linux的课程了,授课的老师也是比较负责任的一位。总的来说也算是比较系统地学习了一下Linux了~~~ 本文章主要是总结Linux的基础操作以及一些简单的概念~如果不熟悉的同学可下个Linux来玩玩(或者去买一个服务器玩玩【学生版的不是很贵】…

论文浅尝 | 基于知识图的问答变分推理

Zhang Y, Dai H, Kozareva Z, et al. Variational Reasoning for Question Answering with Knowledge Graph. Proceedings of 32th AAAI 2018动机传统的知识图谱问答主要是基语义解析的方法,这种方法通常是将问题映射到一个形式化的逻辑表达式,然后将这个…

阿里P8架构师谈:分布式架构设计(文章合集)

Docker容器 阿里P8架构师谈:Docker简介、组成架构、使用步骤、以及生态产品 阿里P8架构师谈:Docker容器的原理、特征、基本架构、与应用场景 消息中间件 阿里P8架构师谈:消息中间件介绍、典型使用场景、以及使用原则 阿里P8架构师谈:分布…

NLP史上最全预训练模型汇总

本文转载自公众号“夕小瑶的卖萌屋”,专业带逛互联网算法圈的神操作 -----》我是传送门 关注后,回复以下口令: 回复【789】 :领取深度学习全栈手册(含NLP、CV海量综述、必刷论文解读) 回复【入群】&…

论文浅尝 | 基于迭代的概率规则约束的知识图谱分布式表示

Citation:Shu Guo, Quan Wang, Lihong Wang, Bin Wang, Li Guo.Knowledge Graph Embeddingwith Iterative Guidance from Soft Rules. AAAI 2018. 动机知识图谱的分布式表示旨在将知识图谱中的实体和关系表示到连续的向量空间中,本文考虑的问题是如何将知识库的分布…

笔记:毫米波雷达传感器,优势、应用和产业规模

信息来源:https://www.sohu.com/a/314806539_465219 优势 非接触式传感,可检测物体的距离、速度和角度信息,唯一可以“全天候全天时”工作的传感器系统组件(比如天线)的尺寸可以做到很小穿透性:穿透塑料、墙板和衣服等特殊材料高…

「优知学院」淘宝架构的前世今生(下)

“ 淘宝技术架构前世今生就是一部架构活教材,今天仍然由陈睿mikechen为大家解读淘宝架构。 我稍微把前面淘宝架构的三个阶段简短总结: 淘宝1.0 采用LAMP mysql读写操作 淘宝2.0 把mysql替换为oracle,为了使用oracle的连接池,php采用代理连…