零基础入门NLP-新闻文本分类【Task1】
Task1 赛题理解
赛题背景
- 举办方:Datawhale,TIANCHI天池
- 赛题名称:零基础入门NLP之新闻文本分类 详细信息.
- 赛题任务:赛题以自然语言处理为背景,要求选手根据新闻文本字符对新闻的类别进行分类,这是一个经典文本分类问题。
- 赛题目标:引导大家走入自然语言处理的世界,带大家接触NLP的预处理、模型构建和模型训练等知识点。
- 学习方案:数据科学库、通用流程和baseline方案学习三部分。
赛题数据
- 数据集:新闻文本数据,按照字符级别进行过匿名处理。训练集20w条样本,测试集A包括5w条样本,测试集B包括5w条样本。
- 候选分类类别:财经财经、彩票、房产、股票、家居、教育、科技、社会、时尚、时政、体育、星座、游戏、娱乐,共14个。在数据集中标签的对应关系如下:
{‘科技’:0,‘股票’:1,‘体育’:2,‘娱乐’:3,‘时政’:4,‘社会’:5,‘教育’:6,‘财经’:7,‘家居’:8,‘游戏’:9,‘房产’:10,‘时尚’:11,‘彩票’:12,‘星座’:13,}
说明:为了预防选手人工标注测试集的情况,比赛数据的文本按照字符级别进行了匿名处理。处理后的赛题训练数据如下:
评测指标
评价标准为类别 f1_score 的均值,选手提交结果与实际测试集的类别进行对比,结果越大越好。
其中:precision为查准率,recall为查全率。
解题思路
- 思路分析:首先使用Pandas库完成数据读取操作,赛题本质是一个文本分类问题,需要根据每句的字符进行分类。
- 难点:赛题给出的数据是匿名化的,不能直接使用中文分词等操作,需要对匿名字符进行建模,进而完成文本分类。
- 由于文本数据是一种典型的非结构化数据,因此可能涉及到特征提取和分类模型两个部分。
参考思路:
- TF-IDF + 机器学习分类器
直接使用TF-IDF对文本提取特征,并使用分类器进行分类。在分类器的选择上,可以使用SVM、LR、或者XGBoost。 - FastText
FastText是入门款的词向量,利用Facebook提供的FastText工具,可以快速构建出分类器。 - WordVec + 深度学习分类器
WordVec是进阶款的词向量,并通过构建深度学习分类完成分类。深度学习分类的网络结构可以选择TextCNN、TextRNN或者BiLSTM。 - Bert词向量
Bert是高配款的词向量,具有强大的建模学习能力。