基于BERT做中文文本分类(情感分析)

本文介绍了如何利用BERT模型进行中文文本分类,特别是情感分析任务。首先,文章概述了BERT的预训练概念及其在NLP领域的优势。接着,详细讲述了环境搭建、模型与预训练模型下载、数据准备、代码修改以及模型训练和预测的过程。在训练过程中,重点提到了参数调整以适应内存限制。最后,讨论了预测结果的处理和数据不平衡对结果准确性的影响。
摘要由CSDN通过智能技术生成

Bert:

BERT是一种预训练语言表示的方法,这意味着我们在大型文本语料库(例如Wikipedia)上训练通用的“语言理解”模型,然后将该模型用于我们关心的下游NLP任务,BERT优于之前的方法,因为它是第一个用于预训练NLP的无监督,深度双向系统。

相关论文:

《Attention Is All You Need》

《BERT:Pre-training of Deep Bidirectional Transformers for Language Understanding》

之后可能会出一篇详解bert原理的文章。

一、环境搭建:

Tensorflow>=1.11.0 我使用的1.12.0

Python 3.6.8

使用GPU训练(官网说显存要求大于12g)

服务器:1080Ti 32G

二、下载模型:

下载bert:https://github.com/google-research/bert
下载bert预训练模型:https://storage.googleapis.com/bert_models/2018_11_03/chinese_L-12_H-768_A-12.zip

三、数据准备:

将你的语料分成3个文件,分别为train.csv,test.csv,dev.csv三个(我使用的是csv文件,它与tsv区别就是分隔符号的不同,我直接将csv的分隔符‘,’转成‘\t’),放入新建data文件夹下。

具体操作:

我的语料来自于情感分析比赛的,是判断新闻标题情感积极消极还是中性,首先使用pandas对语料进行处理,最终处理成“label+content”的格式。如图所示:

 

将语料分割成三个文件:我分割的比例是8:1:1,可以按照自己的比例进行分割。

#!/usr/bin/env python
import os
import pandas as p
评论 54
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值