零基础入门 NLP - 新闻文本分类比赛方案分享 nano- Rank1
nano- 康一帅
简介
环境
Tensorflow
== 1.14.0Keras
== 2.3.1bert4keras
== 0.8.4
文件说明
EDA
:用于探索性数据分析。data_utils
:用于预训练语料的构建。pretraining
:用于 Bert 的预训练。train
:用于新闻文本分类模型的训练。pred
:用于新闻文本分类模型的预测。
其他
赛题分析
赛题背景
通过这道赛题可以引导大家走入自然语言处理的世界,带大家接触 NLP 的预处理、模型构建和模型训练等知识点。
任务目标
要求选手根据新闻文本字符对新闻的类别进行分类,这是一个经典文本分类问题。
数据示例
文本长度
训练集共 200,000 条新闻,每条新闻平均 907 个字符,最短的句子长度为 2,最长的句子长度为 57921,其中 75%以下的数据长度在 1131 以下。
测试集共 50,000 条新闻,每条新闻平均 909 个字符,最短句子长度为 14,最长句子 41861,75%以下的数据长度在 1133 以下。
训练集和测试集就长度来说似乎是同一分布。
标签分布
赛题的数据集类别分布存在较为不均匀的情况。在训练集中科技类新闻最多,其次是股票类新闻,最少的新闻是星座新闻。
总体思路
数据划分
使用 StratifiedKFold 交叉验证。StratifiedKFold 能够确保抽样后的训练集和验证集的样本分类比例和原原始数据集基本一致。
利用全部数据,获得更多信息。
降低方差,提高模型性能。
查看本文全部内容,欢迎访问天池技术圈官方地址:零基础入门NLP - 新闻文本分类比赛方案分享 nano- Rank1_天池技术圈-阿里云天池
评论