[毕业设计]基于BERT模型的中文文本情感分类项目源码和实现过程

只需一行代码就可以进行中文文本情感分类(二分类)

不需要手动将数据集分为train,dev,test再转为tsv格式

增加精确率,召回率,F1值作为输出指标

增加Adam优化器

理论上更改部分代码可以就可进行多分类任务

如何使用

  1. 下载BERT中文模型,并解压在该目录下

  2. 将你的数据集文件放到data文件夹下,并重命名为"data.csv"。完成这两步后你的项目文件树应该如下:

.
├── CONTRIBUTING.md
├── LICENSE
├── README.md
├── __init__.py
├── chinese_L-12_H-768_A-12
│   ├── bert_config.json
│   ├── bert_model.ckpt.data-00000-of-00001
│   ├── bert_model.ckpt.index
│   ├── bert_model.ckpt.meta
│   └── vocab.txt
├── create_pretraining_data.py
├── data
│   ├── adam_output
│   ├── dev.csv
│   ├── ouput
│   ├── test.csv
│   ├── train.csv
│   └── data.csv
├── divide.py
├── extract_features.py
├── freeze_graph.py
├── freezegraph.sh
├── modeling.py
├── modeling_adam.py
├── modeling_test.py
├── multilingual.md
├── optimization.py
├── optimization_adam.py
├── optimization_test.py
├── requirements.txt
├── run.sh
├── run_classifier.py
├── run_classifier_with_tfhub.py
├── run_pretraining.py
├── run_squad.py
├── runadam.sh
├── sample_text.txt
├── svr
│   └── bertsvr.sh
├── tokenization.py
└── tokenization_test.py
  1. 终端下运行 bash run.sh,至此,BERT模型已经成功运行起来了

  2. (可选)在终端下运行bash runadam.sh以运行增加了Adam优化器的BERT模型(需要修改run_classifier中如下内容)

import modeling_adam as modeling
import optimization_adam as optimization
# import modeling 注释如下两行,引入adam模型
# import optimization
  1. 潜在问题:在执行python divide.py时可能会出现错误,建议手动使用该文件分割数据集,并删除每个子数据集首行自动生成的表头(形如label x_train)

  2. 运行此项目需要如下环境

tensorflow >= 1.11.0
bert-base
flask 
flask_compress
flask_cors
flask_json
pickle-mixin

FAQ

Q: 我想执行多分类任务该怎么办?

A: 理论上来说,修改run_classifier.py文件中MyProcessor类的get_labels方法即可

Q: 训练需要多长时间?

A: 我的机器为MistGPU提供的Titan V(12G),数据集大小约为12万条。执行BERT耗时35分钟左右,使用Adam优化器后缩短至17分钟左右。

机器收费
Titan V (12G)3.5¥/h
Tesla P100 (16G)4¥/h
Titan RTX(24G)5¥/h
Q: 执行时显示内存不足该怎么办?

A: 根据Google提供的数据,他们在单卡Titan X(12G)下使用的最大参数如下表。你可以根据自己机器的性能修改run.sh中的参数

SystemSeq LengthMax Batch Size
BERT-Base6464
...12832
...25616
...32014
...38412
...5126
BERT-Large6412
...1286
...2562
...3201
...3840
...5120

A: 由于部分操作系统下pip安装方式的不同,可能环境变量并未配置完善,需要手动将Bert-base路径添加至环境变量中(export路径或者修改.bashrc等类似文件均可)

完整源码下载:https://download.csdn.net/download/FL1768317420/89330981

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

FL1768317420

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值