打比赛太难了?手把手教你搭建Bert文本分类模型
学姐前面说过打比赛要越早开始越好,其原因详细写在了文章里,没赶上热乎的同学们可以关注【学姐带你玩AI】公众号在看看这篇文章——Kaggle比赛越早开始越好,为什么?
劝大家早早打比赛,肯定也要教大家打!所以今天就给大家详细讲解一个比赛的模型搭建的思路和代码。

01 赛题名称
基于文本挖掘的企业隐患排查质量分析模型

02 赛题背景
企业自主填报安全生产隐患,对于将风险消除在事故萌芽阶段具有重要意义。企业在填报隐患时,往往存在不认真填报的情况,“虚报、假报”隐患内容,增大了企业监管的难度。
采用大数据手段分析隐患内容,找出不切实履行主体责任的企业,向监管部门进行推送,实现精准执法,能够提高监管手段的有效性,增强企业安全责任意识。
03 赛题任务
本赛题提供企业填报隐患数据,参赛选手需通过智能化手段识别其中是否存在“虚报、假报”的情况。
看清赛题很关键,大家需要好好理解赛题目标之后,再去做题,可以避免很多弯路。
数据简介
本赛题数据集为脱敏后的企业填报自查隐患记录。
04 数据说明
训练集数据包含“【id、level_1(一级标准)、level_2(二级标准)、level_3(三级标准)、level_4(四级标准)、content(隐患内容)和label(标签)】”共7个字段。
其中“id”为主键,无业务意义;“一级标准、二级标准、三级标准、四级标准”为《深圳市安全隐患自查和巡查基本指引(2016年修订版)》规定的排查指引,一级标准对应不同隐患类型,二至四级标准是对一级标准的细化,企业自主上报隐患时,根据不同类型隐患的四级标准开展隐患自查工作;“隐患内容”为企业上报的具体隐患;“标签”标识的是该条隐患的合格性,“1”表示隐患填报不合格,“0”表示隐患填报合格。
预测结果文件results.csv

文件名:results.csv,utf-8编码
参赛者以csv/json等文件格式,提交模型结果,平台进行在线评分,实时排名。
05 评测标准
本赛题采用F1 -score作为模型评判标准。

精确率P、召回率 R和 F1-score计算公式如下所示:

06 数据分析
查看数据集

训练集数据包含“【id、level_1(一级标准)、level_2(二级标准)、level_3(三级标准)、level_4(四级标准)、content(隐患内容)和label(标签)】”共7个字段。测试集没有label字段
标签分布
我们看下数据标签数量分布,看看有多少在划水哈哈

在训练集12000数据中,其中隐患填报合格的有10712条,隐患填报不合格的有1288条,差不多是9:1的比例,说明我们分类任务标签分布式极其不均衡的。
文本长度分布
我们将level_和content的文本拼接在一起
然后查看下文本最大长度分布

07 基于BERT的企业隐患排查质量分析模型
完整代码可以公众号后台回复“BERT”获取
7.1 导入工具包
7.2 设置参数
7.3 定义模型
7.4 生成数据
7.5 训练和验证
完整代码关注公众号后台回复“bert”获取

打比赛,要组队!就联系学姐,干货,思路统统都有,点个赞再走呗!
