用LSTM进行情感分析原理

2023-05-16

用LSTM进行情感分析原理

深度学习在自然语言处理中的应用

自然语言处理是教会机器如何去处理或者读懂人类语言的系统,主要应用领域:

  • 对话系统 - 聊天机器人(小冰)
  • 情感分析 - 对一段文本进行情感识别(我们一会要做的)
  • 图文映射 - CNN和RNN的融合
  • 机器翻译 - 将一种语言翻译成另一种语言,谷歌翻译已经很好

词向量模型

词向量是具有空间意义的并不是简单的映射!例如,我们希望单词 “love” 和 “adore” 这两个词在向量空间中是有一定的相关性的,因为他们有类似的定义,他们都在类似的上下文中使用。单词的向量表示也被称之为词嵌入。

Word2Vec

为了去得到这些词嵌入,我们使用一个非常厉害的模型 “Word2Vec”。简单的说,这个模型根据上下文的语境来推断出每个词的词向量。如果两个个词在上下文的语境中,可以被互相替换,那么这两个词的距离就非常近。在自然语言中,上下文的语境对分析词语的意义是非常重要的。比如,之前我们提到的 “adore” 和 “love” 这两个词,我们观察如下上下文的语境。

从句子中我们可以看到,这两个词通常在句子中是表现积极的,而且一般比名词或者名词组合要好。这也说明了,这两个词可以被互相替换,他们的意思是非常相近的。对于句子的语法结构分析,上下文语境也是非常重要的。所有,这个模型的作用就是从一大堆句子(以 Wikipedia 为例)中为每个独一无二的单词进行建模,并且输出一个唯一的向量。Word2Vec 模型的输出被称为一个嵌入矩阵。

Word2Vec 模型根据数据集中的每个句子进行训练,并且以一个固定窗口在句子上进行滑动,根据句子的上下文来预测固定窗口中间那个词的向量。然后根据一个损失函数和优化方法,来对这个模型进行训练

Recurrent Neural Networks (RNNs)

现在,我们已经得到了神经网络的输入数据 —— 词向量,接下来让我们看看需要构建的神经网络。NLP 数据的一个独特之处是它是时间序列数据。每个单词的出现都依赖于它的前一个单词和后一个单词。由于这种依赖的存在,我们使用循环神经网络来处理这种时间序列数据。

循环神经网络的结构和你之前看到的那些前馈神经网络的结构可能有一些不一样。前馈神经网络由三部分组成,输入层,隐藏层和输出层。

前馈神经网络和 RNN 之前的主要区别就是 RNN 考虑了时间的信息。在 RNN 中,句子中的每个单词都被考虑上了时间步骤。实际上,时间步长的数量将等于最大序列长度

与每个时间步骤相关联的中间状态也被作为一个新的组件,称为隐藏状态向量 h(t) 。从抽象的角度来看,这个向量是用来封装和汇总前面时间步骤中所看到的所有信息。就像 x(t) 表示一个向量,它封装了一个特定单词的所有信息。

隐藏状态是当前单词向量和前一步的隐藏状态向量的函数。并且这两项之和需要通过激活函数来进行激活。

Long Short Term Memory Units (LSTMs)

长短期记忆网络单元,是另一个 RNN 中的模块。从抽象的角度看,LSTM 保存了文本中长期的依赖信息。正如我们前面所看到的,H 在传统的RNN网络中是非常简单的,这种简单结构不能有效的将历史信息链接在一起。举个例子,在问答领域中,假设我们得到如下一段文本,那么 LSTM 就可以很好的将历史信息进行记录学习。

 

在这里,我们看到中间的句子对被问的问题没有影响。然而,第一句和第三句之间有很强的联系。对于一个典型的RNN网络,隐藏状态向量对于第二句的存储信息量可能比第一句的信息量会大很多。但是LSTM,基本上就会判断哪些信息是有用的,哪些是没用的,并且把有用的信息在 LSTM 中进行保存。

我们从更加技术的角度来谈谈 LSTM 单元,该单元根据输入数据 x(t) ,隐藏层输出 h(t) 。在这些单元中,h(t) 的表达形式比经典的 RNN 网络会复杂很多。这些复杂组件分为四个部分:输入门,输出门,遗忘门和一个记忆控制器。

每个门都将 x(t) 和 h(t-1) 作为输入(没有在图中显示出来),并且利用这些输入来计算一些中间状态。每个中间状态都会被送入不同的管道,并且这些信息最终会汇集到 h(t) 。为简单起见,我们不会去关心每一个门的具体推导。这些门可以被认为是不同的模块,各有不同的功能。输入门决定在每个输入上施加多少强调,遗忘门决定我们将丢弃什么信息,输出门根据中间状态来决定最终的 h(t) 。

文档好多博主都有发见https://blog.csdn.net/duanlianvip/article/details/103584543

代码见https://blog.csdn.net/sereasuesue/article/details/108693854

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

用LSTM进行情感分析原理 的相关文章

随机推荐

  • 计算机考研复试之C语言简答题 开放题目

    为考研准备整理 xff0c 参考网络资料课本资料 xff0c 主要是c的简答开放题目有用的话可以点个赞 xff0c 可以看着目录尝试自己回答后在进行往下看 目录 特点 c 语言的主要用途 xff1a c语言为什么要规定 xff0c 对所有使
  • 复试数据结构之排序知识点+简答题

    排序方法的选用一般考虑的原则有 xff1a xff08 1 xff09 待排序的记录个数n xff0c xff08 2 xff09 记录的大小 xff08 3 xff09 关键字的分布情况 xff1b 4 对排序稳定性的要求等 平均时间性能
  • 数据结构之图 和问答题

    数据结构之图 和问答题 目录 数据结构之图 和问答题 图的定义和术语 图的存储结构 图的遍历 连通网的最小生成树 单源最短路径 拓扑排序 关键路径 广义表 图的定义和术语 邻接点 度 入度 出度 路径 路径长度 简单路径 简单回路 连通图
  • 复试口语常见话题整理以及华师18 19年topic

    报考华师已经上岸整理往年英语topic和一些常考话题 以及2020复试口语 xff0c 今年问题比较常规问了家乡 xff0c 喜欢的书 电影 规划报考学校等 辛苦整理 xff0c 有用记得点赞 目录 针对于自己不熟悉的话题的时候 xff1a
  • Vim配置

    1 比较全的Vim配置 34 Vim通用配置 set nocompatible 34 be iMproved required syntax on set confirm 34 在处理未保存或只读文件的时候 xff0c 弹出确认 set a
  • 知识追踪理论入门

    what 知识追踪 xff08 Knowledge Tracing xff09 是根据学生过去的答题情况对学生的知识掌握情况进行建模 xff0c 从而得到学生当前知识状态表示的一种技术 便我们能准确地预测学生对于各个知识概念的掌握程度 xf
  • 多媒体集成课程设计要求

    学 院 数计学院 出卷教师 XX 系主任签名 制卷份数 专 业 计算机科学与技术 班级编号 B14082021 41 51 XX大学2018 2019学年第 2 学期 考 核 要 求 课程编号 xff1a 400802003 课程名称 xf
  • 多媒体课程设计详细文档+

    目录 一 目的与要求 2 二 作品简介 2 三 素材的收集与制作 10 四 设计步骤 11 4 1整体的流程图 11 4 2导入声音文件 12 4 3首页的设计 12 4 4密码输入和用户登录页面 13 4 5按钮交互相应设计 16 4 6
  • 编译原理期末考点

    题型 单选5个 10分 填空10个 20分 简答2个 10分 解答9个 60分 最后3题 xff0c 每个10分 目录 第一章 第二章 第三章 第四章 第五章 第六章 第一章 什么是编译程序 把某一种高级语言程序等价的转换成另一种低级语言的
  • 数据挖掘之航空公司客户价值分析

    课程设计选题 xff1a 详细文档项目见https download csdn net download sereasuesue 12050550 题目 xff1a 航空公司客户价值分析 目录 一 任务背景 2 二 数据挖掘目标 2 三 数
  • RNN 循环/递归神经网络入门

    目录 RNN 循环 递归神经网络 RNN概述 RNN模型 LSTM长短记忆网络 LSTM结构 细胞状态 xff1a 决定丢弃信息 确定更新的信息 更新细胞状态 输出信息 GRU算法 值得学习的博客记录 RNN 循环 递归神经网络 RNN概述
  • 神经网络、图像分类、卷积网络等,论文推荐附论文地址

    喜欢收集资源 xff0c 一起分享交流 具体见https www tinymind cn articles 4265 循环神经网络部分 No33 QRNN模型论文 xff1a 在RNN模型的cell里 xff0c 如果还只知道LSTM和GR
  • jupyter notebook使用教程初学者必备

    目录 安装与打开 jupyter notebook常见命令 更改工作路径亲测成功 方法一 方法2 方法3 快捷键 Jupyter Notebook如何导入代码 安装与打开 安装Anaconda会一起打包安装 或者pip然后打开jupyter
  • 《面向对象程序设计》课程设计

    一 课程设计题目 结合实际 xff0c 用面向对象程序设计的思想设计一个应用实例 xff0c 要求用到下面设计要求中提到的知识点5个以上 二 设计要求 通过此次课程设计 xff0c 更好地掌握面向对象程序设计的基本概念及编程方法 xff0c
  • 深度知识追踪(Deep Knowledge Tracing)论文学习(简要归纳)

    深度知识追踪 xff08 Deep Knowledge Tracing xff09 Chris Piech Jonathan Spencer Jonathan Huang Surya Ganguli Mehran Sahami Leonid
  • Build  tools  for  Visual Studio  2015 / 2017 / 2019  cannot be found ,Windows10环境 OpenVINO 运行demo例子

    1 问题描述 xff1a 在windows10 环境下 配置安装完成OpenVINO xff0c 在进入demo目录 xff0c 验证环境是否配置成功时 在下载完各项依赖 xff0c 出现如下问题 xff1a vswhere 不是内部或外部
  • 机器学习&深度学习资料计算机视觉等汇总的链接(1)

    机器学习 amp 深度学习资料汇总的链接记录 xff0c 方便以后查询 https bbs cvmart net articles 1316 https bbs cvmart net Github page 61 1 计算机视觉知识点总结
  • 使用LSTM进行情感分析学习实例一含数据和代码分析

    使用LSTM进行情感分析 原理见https mp csdn net console editor html 108697113 数据集见下文https pan baidu com s 1SctPmfFlq6ilY2bxcXHIFA 使用ke
  • 使用LSTM进行文本情感分析实例(2)

    数据集下载https github com renjunxiang Text Classification 其他文本分析数据及数据处理代码https github com renjunxiang Text Classification 一
  • 用LSTM进行情感分析原理

    用LSTM进行情感分析原理 深度学习在自然语言处理中的应用 自然语言处理是教会机器如何去处理或者读懂人类语言的系统 xff0c 主要应用领域 xff1a 对话系统 聊天机器人 xff08 小冰 xff09 情感分析 对一段文本进行情感识别