word2vec词向量模型

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

CBOW模型结构
输入层是上下文的词语的词 向量,是CBOW模型的一 个参数。训练开始的时候, 词向量是个随机值,随着训 练的进行不断被更新。当模 型训练完成之后可以获得较 为准确的词向量。
时间复杂度: O(|V|) O(log2(|V|))
Softmax
CBOW模型结构——霍夫曼树
在训练阶段,当给定一个上下文,要 预测词(Wn)的时候,实际上知道要的 是哪个词(Wn),而Wn是肯定存在于 二叉树的叶子节点的,因此它必然有 一个二进制编号,如“010011”,那 么接下来我们就从二叉树的根节点一 个个地去遍历,而这里的目标就是预 测这个词的二进制编号的每一位.即对 于给定的上下文,我们的目标是使得 预测词的二进制编码概率最大。形象 地说,我们希望在根节点,词向量和 与根节点相连经过logistic计算得到的 概率尽量接近0(即预测目标是 bit=1);在第二层,希望其bit是1, 即概率尽量接近1……这么一直下去, 我们把一路上计算得到的概率相乘, 即得到目标词Wn在当前网络下的概率 (P(Wn)),那么对于当前这个sample 的残差就是1-P(Wn)。于是就可以 SGD优化各种权值了。
两个语言模型 CBOW:Continuous Bag-of-Words Skip-Gram:Continuous Skip-Gram Model
两种优化方法 Hierarchical Softmax Negative Sampling
CBOW and Skip-Gram
初始化值是零向量, 叶节点对应的单词的词向量是 随机初始化的。 CBOW 的目 标 是 根 据 上 下 文 来 预 测 当 前 词 语 的 概率Skip-Gram恰好相反, 它是根据当前词语来预测上下文的概率。这 两 种 方 法 都 利 用 人 工 神 经 网 络 作 为它们的分类 算法。起 初, 每 个 单 词 都 是 一 个 随 机 N 维 向 量,经过训练之后, 利用 CBOW 或者 SkipGram方法获得每个单词的最优向量。
目录
1 2
基本概念 模型与方法 实际应用
3
词向量 • 自然语言中的词语在机器学习中的表示符号 • One-Hot Representation
例如: “话筒”表示为:[0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, …] “麦克”表示为:[0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, …] 实现时可以用0,1,2,3等对词语进行计算,这样的“话筒”可以用4表示,麦克 可以用10表示
目录
1 2
基本概念 模型与方法 实际应用
Βιβλιοθήκη Baidu
3
Word2Vec
Google的Mikolov在2013年推出了一款计算词向量的工具
word2vec作为神经概率语言模型的输入,其本身其实是神经概率模型的副产品,是为了通过神经网 络学习某个语言模型而产生的中间结果。具体来说,“某个语言模型”指的是“CBOW”和“SkipGram”。具体学习过程会用到两个降低复杂度的近似方法——Hierarchical Softmax或Negative Sampling。
Skip-Gram模型结构
小明 喜欢 吃 甜甜 的 苹果
d吃 c b a
目录
1 2
基本概念 模型与方法
3
实际应用
词相似度 训练数据集:经过分词后的新闻数据,大小184MB查看
"中国","钓鱼岛","旅游","苹果"几个词语的相似词语如下所示
向量加减法 向量加减法
"中国+北京-日本","中国+北京-法国"
问题: 1. 维度很大,当词汇较多时,可能会达到百万维,造成维度灾难 2. 词汇鸿沟:任意两个词之间都是孤立的,不能体现词与词之间的关系。
词向量 • Distributional Representation
将词表示为 [0.793, -0.177, -0.107, 0.109, 0.542, …]的矩阵,通常该类矩阵设置为50维或 100维 通过计算向量之间的距离,来体现词与词之间的相似性,解决词汇鸿沟的问题 实现时可以用0,1,2,3等对词语进行计算,这样的“话筒”可以用4表示,麦克可以用10表示 如何训练: 1. 没有直接的模型可以训练得到 2. 可以在训练语言模型的同时,得到词向量。
语言模型 • 判断一句话是不是正常人说出来的
给定一个字符串”w1, w2, w3, w4, … , wt”,计算它是自然语言的概率、 P(w1,w2,…,wt)=P(w1)×P(w2|w1)×P(w3|w1,w2)×…×P(wt|w1,w2,…,wt−1) P(大家,喜欢,吃,苹果)=p(大家)p(喜欢|大家)p(吃|大家,喜欢)p(苹果|大 家,喜欢,吃) p(大家)表示“大家”这个词在语料库里面出现的概率; p(喜欢|大家)表示“喜欢”这个词出现在“大家”后面的概率; p(吃|大家,喜欢)表示“吃”这个词出现在“大家喜欢”后面的概率; p(苹果|大家,喜欢,吃)表示“苹果”这个词出现在“大家喜欢吃”后面的概 率。 把这些概率连乘起来,得到的就是这句话平时出现的概率。 如果这个概率特别低,说明这句话不常出现,那么就不算是一句自然语言, 因为在语料库里面很少出现。如果出现的概率高,就说明是一句自然语言。 常用的语言模型都是在近似地求 P(wt|w1,w2,…,wt−1)。 比如 n-gram 模型就是用 P(wt|wt−n+1,…,wt−1) 近似表示前者。 N-pos 先对词进行了词性分类
词向量模型—Word2Vec
前言
计算机
人类
VS
老外来访被请吃饭。落座后,一中国人说: “我先去方便一下。”老外不解,被告知 “方便”是“上厕所”之意。席间主宾大 悦。道别时,另一中国人对老外发出邀请: “我想在你方便的时候也请你吃饭。”老 外愣了,那人接着说: “如果你最近不 方便的话,咱找个你我都方便的时候一起 吃。
谢谢观看
机器翻译 • 机器翻译
• 语言词语的关系集合被表征为向量集合 • 向量空间内,不同语言享有许多共性 • 实现一个向量空间到另一个向量空间的映射和转换
• 图为英语和西班语的五个词在向量空间中的位置(已 经过降维) • 对英语和西班语之间的翻译准确率高达90%
推荐应用 Item2Vec
论文:Item2vec: Neural Item Embedding for Collaborative Filtering 应用到推荐场景的i2i相似度计算中,但实际效果看还有有提升的。主要做法是 把item视为word,用户的行为序列视为一个集合,item间的共现为正样本, 并按照item的频率分布进行负样本采样
相关文档
最新文档