5.2自然语言处理

觉得有用的话,欢迎一起讨论相互学习~Follow Me

2.9 Sentiment classification 情感分类

  • 情感分类任务简单来说是看一段文本,然后分辨这个人是否喜欢或不喜欢他们正在谈论的这段文本。
  • 情感分类 一个最大的挑战是可能标记的训练集没有那么多,但是有了词嵌入,即使只有中等大小标记的训练集也能构建一个不错的情感分类器。

问题引入

  • 通过训练一个从x到y的映射得到一个情感分类器,只需要收集在社交媒体上顾客对你的评价,你就可以判断其对餐厅的情感是正面的还是负面的。

简单的情感分类模型

示例 The dessert is excellent

  1. 首先在字典中找出句中所有单词,并使用 one-hot向量 表示 ,乘以 词嵌入矩阵E ,得到单词的 嵌入向量e

    1. 如果在很大的语料库中训练 词嵌入矩阵E 比如壹佰亿的单词,这样就能获得很多知识甚至从有些不常见的词中获取,然后应用到你的问题上,即使你的标记数据集里没有这些词。
  2. 得到的 嵌入向量e 是一个具有300维特征的向量,将句子中所有单词的 嵌入向量e 进行加和或求平均,此时会得到一个300维度的特征向量,把这个特征向量送进softmax分类器,然后输出\(\hat{y}\)
    1. 其中softmax 分类器能够输出5个分类结果,从一星到五星。
    2. 而求和和平均的操作则避免模型考虑原有句子的长短。无论原先句子都多长,在 求和平均 操作后都只有300维度,即只和原有的特征定义相关。

缺点 这个算法的缺点是没有考虑语序的问题,对于 Completely lacking in good taste,good service, and good ambience(完全没有好的味道,好的服务,好的环境) 但是这个语句中使用了很多次 good ,如果仅仅是把所有单词的 嵌入向量e 相加,你最后的特征向量会有很多 good 的特征。

基于RNN的情感分类模型

  • Completely lacking in good taste,good service, and good ambience(完全没有好的味道,好的服务,好的环境)
  1. 首先将每一个单词使用one-hot向量进行表示
  2. 将每个单词的one-hot向量乘以 词嵌入矩阵E 得到每个单词的 词嵌入向量e
  3. 将其送入RNN中,在RNN的最后一个时间步计算一个特征表示,用来预测 \(\hat{y}\)

优点 这样就能考虑句子中单词的顺序,对于情感分类的效果就会更好了,结合句中的短语对整个句子的情感有新的导向。

[DeeplearningAI笔记]序列模型2.9情感分类的更多相关文章

  1. [DeeplearningAI笔记]序列模型1.5-1.6不同类型的循环神经网络/语言模型与序列生成

    5.1循环序列模型 觉得有用的话,欢迎一起讨论相互学习~Follow Me 1.5不同类型的循环神经网络 上节中介绍的是 具有相同长度输入序列和输出序列的循环神经网络,但是对于很多应用\(T_{x}和 ...

  2. [DeeplearningAI笔记]序列模型1.1-1.2序列模型及其数学符号定义

    5.1循环序列模型 觉得有用的话,欢迎一起讨论相互学习~Follow Me 1.1什么是序列模型 在进行语音识别时,给定了一个输入音频片段X,并要求输出片段对应的文字记录Y,这个例子中的输入和输出都输 ...

  3. [DeeplearningAI笔记]序列模型3.9-3.10语音辨识/CTC损失函数/触发字检测

    5.3序列模型与注意力机制 觉得有用的话,欢迎一起讨论相互学习~Follow Me 3.9语音辨识 Speech recognition 问题描述 对于音频片段(audio clip)x ,y生成文本 ...

  4. [DeeplearningAI笔记]序列模型3.7-3.8注意力模型

    5.3序列模型与注意力机制 觉得有用的话,欢迎一起讨论相互学习~Follow Me 3.7注意力模型直观理解Attention model intuition 长序列问题 The problem of ...

  5. [DeeplearningAI笔记]序列模型3.6Bleu得分/机器翻译得分指标

    5.3序列模型与注意力机制 觉得有用的话,欢迎一起讨论相互学习~Follow Me 3.6Bleu得分 在机器翻译中往往对应有多种翻译,而且同样好,此时怎样评估一个机器翻译系统是一个难题. 常见的解决 ...

  6. [DeeplearningAI笔记]序列模型3.3集束搜索

    5.3序列模型与注意力机制 觉得有用的话,欢迎一起讨论相互学习~Follow Me 3.3 集束搜索Beam Search 对于机器翻译来说,给定输入的句子,会返回一个随机的英语翻译结果,但是你想要一 ...

  7. [DeeplearningAI笔记]序列模型3.2有条件的语言模型与贪心搜索的不可行性

    5.3序列模型与注意力机制 觉得有用的话,欢迎一起讨论相互学习~Follow Me 3.2选择最可能的句子 Picking the most likely sentence condition lan ...

  8. [DeeplearningAI笔记]序列模型3.1基本的 Seq2Seq /image to Seq

    5.3序列模型与注意力机制 觉得有用的话,欢迎一起讨论相互学习~Follow Me 3.1基础模型 [1] Sutskever I, Vinyals O, Le Q V. Sequence to Se ...

  9. [DeeplearningAI笔记]序列模型1.10-1.12LSTM/BRNN/DeepRNN

    5.1循环序列模型 觉得有用的话,欢迎一起讨论相互学习~Follow Me 1.10长短期记忆网络(Long short term memory)LSTM Hochreiter S, Schmidhu ...

随机推荐

  1. ES6的新特性(7)——函数的扩展

    函数的扩展 函数参数的默认值 基本用法 ES6 之前,不能直接为函数的参数指定默认值,只能采用变通的方法. function log(x, y) { y = y || 'World'; console ...

  2. Scrum立会报告+燃尽图(十一月二十二日总第三十次):加强回归测试

    此作业要求参见:https://edu.cnblogs.com/campus/nenu/2018fall/homework/2410 项目地址:https://git.coding.net/zhang ...

  3. mininet实验 可视化界面形成拓扑

    参考博客一 参考博客二 实验目的 mininet中内置了一个mininet可视化工具:miniedit.miniedit在mininet/mininet/examples目录下提供miniedit.p ...

  4. css3浏览器私有属性前缀使用详解

    什么是浏览器私有属性前缀 CSS3的浏览器私有属性前缀是一个浏览器生产商经常使用的一种方式.它暗示该CSS属性或规则尚未成为W3C标准的一部分. 以下是几种常用前缀 -webkit- -moz- -m ...

  5. HTML5+规范:Webview的使用详解

    一.知识点 Webview模块管理应用窗口界面,实现多窗口的逻辑控制管理操作.通过plus.webview可获取应用界面管理对象. 1.方法 1.1.all: 获取所有Webview窗口 Array[ ...

  6. 如何在Eclipse配置PyDev插件

    如何在Eclipse配置PyDev插件 | 浏览:1733 | 更新:2014-04-21 11:36 1 2 3 4 5 分步阅读 Eclipse配置PyDev插件 方法/步骤   从 Eclips ...

  7. js & right click menu

    js & right click menu https://stackoverflow.com/questions/4909167/how-to-add-a-custom-right-clic ...

  8. Vue2.0 render:h => h(App)

    new Vue({ router, store, //components: { App } vue1.0的写法 render: h => h(App) vue2.0的写法 }).$mount( ...

  9. 解决二维数组转为ArrayList集合问题

    1.修改前代码块 String[][] str = { { "语文", "100" }, { "英语", "90" }, ...

  10. day 008 文件操作

    08. 万恶之源-⽂文件操作本节主要内容:1. 初识⽂文件操作2. 只读(r, rb)3. 只写(w, wb)4. 追加(a, ab)5. r+读写6. w+写读7. a+写读(追加写读)8. 其他操 ...