pytorch-LSTM情感分类

最近在学习pytorch也是正式从tensorflow转移到pytorch,因为很多论文的源码给出的都是pytorch为了方便自己学习比较新的模型和算法也是在不停的学习中,废话不多说正式开始今天的教程,之前给tensorflow挖的坑有时间了也会填上。

这次使用的数据集比较大我也是放在了百度云盘需要的朋友可以自行获取,链接:https://github.com/JohnLeek/DeepLearning-study,源码放在了github,要是觉得不错对你有所帮助希望你帮忙给本博客点个赞,给我的github一个star。

一、数据集概览

这里用到的是一个情感分类数据集,数据集为影评(英文),包含数据适中,所以比较适合用来入门NLP任务,数据集分为两个部分,review(评论),label(标签,只有两个分类,0为消极,1为积极)。

 这里是两条评论,对应的label为positive和negative

二、数据集的处理

 拿到数据集首先看下数据集里边都有什么,有的评论过长,有的评论过短,有的含有一些空字符或者难以理解的字符,这些都需要我们进行相应的处理,然后将数据集的处理为Embedding,方便LSTM进行学习。

2.1 导包和文件操作

这里是所需要使用的包

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
from string import punctuation
from collections import Counter
import torch
import torch.nn as nn
import torch.nn.functional as F
import torch.optim as optim
from torch.utils.data import DataLoader,TensorDataset

文件操作

with open('./emotiondata/reviews.txt','r',encoding='utf-8') as file:
    text = file.read()
# print(len(text))

with open('./emotiondata/labels.txt','r',encoding='utf-8') as file:
    label = file.read()
# print(len(label))

open的时候最好指定编码为utf-8免得报错说无法解析字符。

获取数据集中所有的单词并进行处理,,同时对标签进行处理1为positive,0为negative

#punctuation的操作主要是去掉文中的非法字符chua串,如*/-+%#¥这样的
clean_text = ''.joi
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值