IMDB影评情感分析项目

news/2024/9/27 22:09:13 标签: 人工智能, python

imdb数据集下载地址: http://ai.stanford.edu/~amaas/data/sentiment/aclImdb_v1.tar.gz

python">import os
import torch
from torch import nn
import dltools
python">def read_imdb(data_dir, is_train):
    data, labels = [], []
    for label in ('pos', 'neg'):
        folder_name = os.path.join(data_dir, 'train' if is_train else 'test', label)
        for file in os.listdir(folder_name):   #os.listdir()相当于形成文件夹列表,可以遍历路径下的每一个文件
            with open(os.path.join(folder_name, file), 'rb') as f:
                #文本没有分行,就一次性读取
                review = f.read().decode('utf-8').replace('\n', '')
                data.append(review)
                labels.append(1 if label == 'pos' else 0)  #三目运算符
    return data, labels
python">data_dir = r'E:\ALOT\10_deep_learning\data\aclImdb'
train_data = read_imdb(data_dir, is_train=True)
print('训练集数目:', len(train_data[0]))
训练集数目: 25000

#列表和元祖没有shape

python">for x, y in zip(train_data[0][:3], train_data[1][:3]):
    print('标签:', y, 'review:', x[:60])
标签: 1 review: Bromwell High is a cartoon comedy. It ran at the same time a
标签: 1 review: Homelessness (or Houselessness as George Carlin stated) has 
标签: 1 review: Brilliant over-acting by Lesley Ann Warren. Best dramatic ho
python">#分词
train_tokens = dltools.tokenize(train_data[0], token='word')
train_tokens  #是一个二维列表,  一个文本文件一个(内置)列表
python">#构建词汇表vocab
vocab = dltools.Vocab(train_tokens, min_freq=5, reserved_tokens=['<pad>'])
python">len(vocab)
49347
python">#绘制直方图查看每条评论的字数分布
dltools.set_figsize()
dltools.plt.xlabel('# tokens per review')
dltools.plt.ylabel('count')
dltools.plt.hist([len(line) for line in train_tokens], bins=range(0,1000, 50))  #分成50份  

http://www.niftyadmin.cn/n/5679665.html

相关文章

日期类的实现- 计算日期之间相差多少天-解决单参数构造

个人主页&#xff1a;Jason_from_China-CSDN博客 所属栏目&#xff1a;C系统性学习_Jason_from_China的博客-CSDN博客 所属栏目&#xff1a;C知识点的补充_Jason_from_China的博客-CSDN博客 这里有坑&#xff0c;这里有坑&#xff0c;这里有坑 首选我们直接上代码&#xff0c;因…

Pymysql cursor.execute 批量执行插入语句踩坑

注意看cursor.execute()的官方注释&#xff1a; 括号里可以不带参数&#xff0c;如果要带参数&#xff0c;必须要是tuple&#xff0c;list 或者dict类型 而在我原来的错误代码里&#xff1a; 我将list类型的values又转换成了str&#xff0c;用逗号连接&#xff0c;传进了execu…

Vue3.X + SpringBoot小程序 | AI大模型项目 | 饮食陪伴官

gitee平台源码 github平台源码 饮食陪伴师是一个管理饮食的原生大模型小程序&#xff0c;优势&#xff1a; 精确营养监控&#xff1a;用户记录饮食后&#xff0c;我们会计算出食用的营养成分与分量&#xff0c;并反馈给用户。饮食建议有效&#xff1a;大模型经过我们训练具备大…

等保2.0测评:安全管理体系建设思路

在实际项目中&#xff0c;很多单位都太不重视等保的安全管理方面&#xff0c;也有很多单位比较重视&#xff0c;但是又不知从何入手。因此本文从等保2.0三级基本要求方面的简单介绍下安全管理体系的建设思路。 一、安全管理建设的重要性 这个很多人可能很难理解&#xff0c;尤…

LLM - 理解 多模态大语言模型(MLLM) 的 幻觉(Hallucination) 与相关技术 (七)

欢迎关注我的CSDN&#xff1a;https://spike.blog.csdn.net/ 本文地址&#xff1a;https://spike.blog.csdn.net/article/details/142463789 免责声明&#xff1a;本文来源于个人知识与公开资料&#xff0c;仅用于学术交流&#xff0c;欢迎讨论&#xff0c;不支持转载。 多模态…

在 Gitlab 中使用 ChatGPT 进行 CodeReview

ChatGPT集成Gitlab&#xff0c;实现自动代码审计并进行评论&#xff0c;为软件开发团队提供高效、智能的代码审查解决方案。支持其他模型如通义千问等 自动触发与及时响应&#xff1a;利用Gitlab的Webhook功能&#xff0c;实现代码提交、合并请求和标签创建等事件的自动触发。一…

快消品海外仓应该如何选择合适WMS仓储系统?

快消品的“快”属性天然契合海外仓&#xff0c;快消品大部分是必需品&#xff0c;库存周转快&#xff0c;需保持一定量的安全库存&#xff0c;及时、稳定补货尤为重要&#xff1b;快消品最适合全渠道销售&#xff0c;线上线下等&#xff0c;比较考验备货和统筹能力&#xff1b;…

Vue 3 技术体系

Vue 3 的技术体系涵盖了多个方面&#xff0c;包含框架本身、生态系统中的库和工具、最佳实践等。以下是 Vue 3 技术体系的主要组成部分&#xff1a; 1. 核心框架 Vue 3: Vue 3 是整个体系的核心框架&#xff0c;提供了响应式系统、模板语法、组件系统等基础功能。 Compositio…