前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >深度学习核心技术实战 NLP-word2vec

深度学习核心技术实战 NLP-word2vec

作者头像
微风、掠过
发布2018-10-09 11:28:37
3190
发布2018-10-09 11:28:37
举报

多分类的逻辑回归- softmax模型 word2vec:词向量 one-hot representation 对应位置为1,但不能表达词之间的关系 本质上是对词的一种表示,但是是结合了上下文内容的。无监督模型 词的两种表示: One-hot Representation(独热表示) “苹果”表示为 [0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 …] 优点:简介,缺点:词之间是孤立的,维数灾难。 Distributed Representation(分布式表示) 词向量或者词嵌入(word embedding)是用一个向量来表示一个词,一定程度上可以用来刻画词之间的语义距离。 给出一个文档,用一个单词序列比如 “我喜欢苹果”,然后对文档中每个不同的单词都得到一个对应的低维向量表示,“苹果”表示为 [0.11, −0.77, −0.71, 0.10, −0.50, …]。 优点:低维、相似词的词向量距离相近,缺点:计算复杂。

n-gram n=1上下文无关 n=5往前看4个词(n-1)。 n-gram n=2 bigram模型 无法建模出词之间的相似度,只能有前后的转换概率。出现没有见过的需要用laplace平滑。或者回退法。 训练目标一般都为最大似然+正则项,对最大似然的相反数可进行随机梯度下降优化。输出层为softmax。 基于决策树的,是否是xx词性,是否是XX词 最大熵模型:又叫指数模型,softmax形式。在只掌握关于未知分布的部分知识时,应当选取符合这些知识的但又能使得熵最大的概率分布。

自适应语言模型 单独训练一个局部模型,将全局和侦测到这个局部模型的区域用混合模型去解决。

CBOW continuous bag of words 连续词袋模型 使用当前预测词汇的前后各k个词(k为window-b,b为一个随机数) 一起输入到神经网络中projection中 再输出。 实际操作为上下文词向量(已经转换成向量的词)的加和。Neu1表示隐层向量。

有两种:hierarchical softmax negative sampling

Skip-gram模型: Skip gram模型词语指示方向与CBOW相反预测概率p(wi|wt) t-c<i<t+c 输出的是w(t+c) ~w(t-c)的概率 使用softmax输出。会计算窗口内两两之间的概率 Skip-gram每个词都表征了上下文的分布skip指在一定窗口内的词都会两两计算概率 即使间隔一些词也会容易识别为相同的短语。 Hierarchical softmax:借助分类的概念 对这些词按照类别区分 二叉树:使用二分类近似多分类 Word2vec中使用huffman编码(一定的聚类思想)构造一连串的二分类 Negative sampling:使用one-versus-one近似二分类 采样一些负例 不想把分母中的所有词都算一遍,就采样计算,采样多少就是模型中负例的个数,按照词频对应的概率分布来随机抽样。 GloVe LDA(Latent Dirichlet Allocation) PLSA(概率模型) LSA(潜在语义模型)用于生成词向量。这些模型对全局信息应用充分但是对词之间的关联体现不出来,GloVe是一种矩阵分解方法,结合了LFM(Latent Factor Model)只是分解对象变为共现频率的对数,对高低频做了一定的权重调整。Global vectors for word representation

结论:

word2vec去掉了非线性隐层 huffman相当于做了一定的聚类,越高频计算量越小; 采用negative sampling、随机梯度算法 不需要反复迭代 利用一些编程技巧 指数运算的与计算 高频词亚采样, 方便实行并行化。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018.09.11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档