高级实训任务三:文本情感分类

本文档描述了一个高级实训任务,即使用LSTM进行文本情感分类,选择IMDb数据集,采用PyTorch框架。任务包括网络结构设计、数据处理、模型训练,并展示了训练结果,准确度达到0.9655。
摘要由CSDN通过智能技术生成

高级实训任务三:文本情感分类

1.任务描述

● 将循环任务(RNN)应用在图像分割任务上,我们需要对网络结构进行设计。
● 需要提交博客报告以及GitHub代码仓库。
● 可选的任务:文本情感分类(正向、负向)。
● 可选的网络结构:GRU、LSTM。
● 可选的数据集:
○ imdb数据集:https://www.kaggle.com/c/sentiment-analysis-on-movie-reviews
○ 烂番茄数据集:https://www.kaggle.com/c/sentiment-analysis-on-movie-reviews/overview
● 可选深度学习框架:Tensorflow、PyTorch、Keras。
● 完成期限:1月21日
● 提交结果:项目报告、答辩幻灯片、相关代码和测试用例。

2.任务选择

将循环任务(RNN)应用在图像分割上,需要对网络结构进行设计。
任务选择:文本情感分类(正向,负向)
选择的网络结构:LSTM
语言:python
框架选择:pytorch(主框架,构建网络结构)
其他辅助框架:pickle(python 的文件库。由于数据集的一部分放在pkl文件里,需要pickle库进行读取)
tqdm (UI方面的库,用于添加进度条,方便观察计算的进度)
数据集:aclImdb(大型电影评论数据集)

3.任务开始准备

  • 循环任务(RNN)应用在图像分割任务原理
    循环神经网络的应用场景比较多,比如暂时能写论文,写程序,写诗,但是,(总是会有但是的),但是他们现在还不能正常使用,学习出来的东西没有逻辑,所以要想真正让它更有用,路还很远。
    一般的神经网络应该有的结构:
    在这里插入图片描述

  • 使用循环神经网络原因
    无论是卷积神经网络,还是人工神经网络,他们的前提假设都是:元素之间是相互独立的,输入与输出也是独立的,比如猫和狗。但现实世界中,很多元素都是相互连接的,比如股票随时间的变化,我们是根据上下文的内容推断出来的,但机会要做到这一步就相当得难了。因此,就有了现在的循环神经网络,他的本质是:像人一样拥有记忆的能力。因此,他的输出就依赖于当前的输入和记忆。

  • RNN的网络结构及原理
    在这里插入图片描述
    其中每个圆圈可以看作是一个单元,而且每个单元做的事情也是一样的,因此可以折叠呈左半图的样子。用一句话解释RNN,就是一个单元结构重复使用。

  • LSTM原理
    1.LSTM内部结构:
    在这里插入图片描述

LSTM看上去就是这样一种效果,一个一个首尾相接,同一层的会把前面单元的输出作为后面单元的输入;前一层的输出会作为后一层的输入。细胞状态

2.LSTM 的关键就是细胞状态,水平线在图上方从左到右贯穿运行。

细胞状态类似于传送带。直接在整个链上运行,只有一些少量的线性交互。信息在上面流传保持不变会很容易

左面的乘号是一个乘法操作,右面的加号就是普通的线性叠加。
LSTM规避了标准RNN中梯度爆炸和梯度消失的问题,所以会显得更好用,学习速度更快

下图是最基本的LSTM单元连接起来的样子
在这里插入图片描述
3.LSTM的门结构
**遗忘门:**遗忘门层决定我们会从细胞状态中丢弃什么信息。该门会读取ht−1 和xt ,输出一个在 0到 1之间的数值给每个在细胞状态 Ct−1 中的数字。1 表示“完全保留”,0 表示“完全舍弃”。
[ht−1​,xt]代表把两个向量连接起来。
在这里插入图片描述
更新门:C t 表示新的输入带来的信息,tanh这个激活函数讲内容归一化到-1到1;
it用于选择保留新信息的哪个部分。ft * Ct-1表示过去信息有选择的遗忘(保留),
Ct 表示新信息有选择的遗忘(保留),两者相加得到新状态Ct。

在这里插入图片描述
在这里插入图片描述
输出门:在这里插入图片描述

4.实验过程和结果

代码:
1.读取imdb数据集:

max_f=10000
(x_train, y_train),(x_test,y_test) = imdb_data(num_words = max_f)

maxlength = 400
x_train = sequence.pad_sequences(x_train,maxlength = maxlength)
x_test = sequence.p
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值