NLP自然语言处理学习笔记(二)Word2Vec

  • 一、Word2Vec
  • 二、负采样

本文是根据吴恩达教授的教学视频来整理的学习笔记,部分图片来源于视频的截图。原教学视频连接 https://mooc.study.163.com/learn/2001280005?tid=2001391038#/learn/content

一、Word2Vec

Word2Vec是词嵌入的一种算法。分为Skip-grams和CBOW两种。Skip-grams是给定中心词来预测上下文,CBOW是给定上下文来预测中心词。

下图中,以Orange为中心词,来预测上下文。

训练过程如下图:

Skip-grams算法的缺点主要是运行速度太慢。

改善方式一:softmax层需要对10000个样本求和,速度慢。因此使用分级softmax的算法,构建一课分类树,先判断预测出来的词是位于词汇表的前5000还是后5000,然后再继续做更细的分类。在实际使用中,这棵树通常可能不是对称的,将频繁出现的词放在贴近树根部的位置,将出现频率较低的词放到离树根部较远的位置。

改善方式二:负采样,下一小节将介绍。

二、负采样

正样本的分类结果是1,负样本的分类结果是0。

训练模型:
模型的输出是10000个softmax分类器,每次迭代选择1个正样本和k个负样本,来对参数进行更新。

如何选择负采样的样本?
如果按频率选择,会出现很多the, and, a, an这样的高频词,造成干扰。
如果完全均匀地选择,不考虑频率,效果又不太好。
因此有研究者建议,按频率的3/4次方来采样,可以取得比较好的效果。

NLP自然语言处理学习笔记(二)Word2Vec相关推荐

  1. NLP自然语言处理学习笔记(十二)(转自咕泡AI)

    问答机器人排序模型 目标 知道模型中排序中的概念和目的 知道模型中排序的实现方法 1. 排序模型的介绍 前面的课程中为了完成一个问答机器人,我们先进行了召回,相当于是通过海选的方法找到呢大致相似的问题 ...

  2. NLP自然语言处理学习笔记(十一)(转自咕泡AI)

    问答机器人介绍 目标 知道问答机器人是什么 知道问答机器人实现的逻辑 1. 问答机器人 在前面的课程中,我们已经对问答机器人介绍过,这里的问答机器人是我们在分类之后,对特定问题进行回答的一种机器人.至 ...

  3. NLP自然语言处理学习笔记(十)(转自咕泡AI)

    Attention的原理和实现 目标 知道Attention的作用 知道Attention的实现机制 能够使用代码完成Attention代码的编写 1. Attention的介绍 在普通的RNN结构中 ...

  4. NLP自然语言处理学习笔记(八)(转自咕泡AI)

    分类的目的和分类的方法 目标 能够说出项目中进行文本的目的 能够说出意图识别的方法 能够说出常见的分类的方法 1. 文本分类的目的 回顾之前的流程,我们可以发现文本分类的目的就是为了进行意图识别 在当 ...

  5. NLP自然语言处理学习笔记(七)(转自咕泡AI)

    走进聊天机器人 学习目标 知道常见的bot的分类 知道企业中常见的流程和方法 1. 目前企业中的常见的聊天机器人 QA BOT(问答机器人):回答问题 代表 :智能客服. 比如:提问和回答 TASK ...

  6. NLP自然语言处理学习笔记(一)(转自咕泡AI)

    1深度学习的介绍 目标 知道什么是深度学习 知道深度学习和机器学习的区别 能够说出深度学习的主要应用场景 知道深度学习的常见框架 1. 深度学习的概念 深度学习(英语:deep learning)是机 ...

  7. NLP自然语言处理学习笔记(三)(转自咕泡AI)

    Pytorch完成基础的模型 目标 知道Pytorch中Module的使用方法 知道Pytorch中优化器类的使用方法 知道Pytorch中常见的损失函数的使用方法 知道如何在GPU上运行代码 能够说 ...

  8. NLP自然语言处理学习笔记(四)(转自咕泡AI)

    使用Pytorch实现手写数字识别 目标 知道如何使用Pytorch完成神经网络的构建 知道Pytorch中激活函数的使用方法 知道Pytorch中torchvision.transforms中常见图 ...

  9. 自然语言处理自学笔记-02 Word2vec——基于神经网络学习单词表示

    自然语言处理自学笔记-02 Word2vec--基于神经网络学习单词表示 Word2vec 定义损失函数 skip-gram算法 从原始文本到结构化数据 制定实际的损失函数 近似损失函数 连续词带模型 ...

最新文章

  1. 人均年薪400万、公司年亏40亿,正在盖大楼的DeepMind最新财务数据曝光
  2. linux date时间戳互相转换
  3. 让pt-slave-restart支持MariaDB
  4. ros_openvino_toolkit环境搭建纪实
  5. 用生动的例子花式解释:python类中一定需要有 __init__方法么?没有会怎样?
  6. Windows系统安装ActiveMQ
  7. jabber服务器_最近JavaScript Jabber播客-Microsoft(而非Microsoft)和Web
  8. A8板卡AM3352移植环境搭建记录
  9. 视频分辨率过高,导致部分手机播放失败
  10. 电脑知识:台式电脑如何使用无线网上网?
  11. Javase尚硅谷笔记
  12. 最全工业以太网通讯协议
  13. 干货:一文读懂数据仓库设计方案
  14. exe4j打成的exe文件运行时每次弹窗this executable was created with an evaluation version of exe4j
  15. POJO有哪些要求?
  16. 【轉】一個在台積電工作3年的工程師寫給學弟學妹們的信
  17. 写一些生活的琐事(纯属发泄)
  18. Jin Ge Jin Qu hao - UVa 12563 dp背包
  19. 到底什么是区块链?数字货币技术开发朔源
  20. java四则运算考试系统_小学生四则运算出题软件-基于java控制台的实现

热门文章

  1. mysql utf8 czech ci_MySQL字符集小结
  2. Java学习网站有哪些
  3. F3分布式存储颠覆传统存储方式
  4. 迅控SVS为某公安局打造综合联动指挥中心及合成作战中心
  5. jQuery Easing 使用方法及其图解
  6. android 华为手机拍照,拍照:同为1300万像素画质却有差距_华为手机_手机Android频道-中关村在线...
  7. 攻防世界 Misc 坚持60s
  8. cas未能够识别出目标 ***;票根
  9. cas TicketValidationException 未能够识别出目标 ‘ST-1-UxVA37oEE-qN-S0NNZclYXsXxFQSD-20200510PZSQ‘票根
  10. 最新七合一收款码合成系统源码+34款样式