竞赛题背景本次新人赛是数鲸与天池联合发起的零基础入门系列-零基础NLP新闻文本分类挑战赛的第三项赛事。比赛题目以自然语言处理为基础,要求选手根据新闻文本字符对新闻类别进行分类。这是一个经典的文本分类问题。通过这道赛题,带你走进自然语言处理的世界,带你接触NLP预处理、模型构建、模型训练等知识点。为了更好的指导大家入门,我们还为本次大赛定制了一系列的学习计划,包括数据科学库、大体流程和基线计划学习三个部分。通过本课程的完整学习,有助于掌握数据竞赛的基本技能。同时,我们还将提供专属的视频直播学习频道。比赛数据本次比赛使用新闻数据作为比赛数据,报名后即可查看和下载数据集。赛题数据为新闻文本,根据人物等级进行匿名处理。整合划分14个候选分类类别:金融、彩票、房产、股票、家居、教育、科技、社会、时尚、时事、体育、八字、游戏、娱乐等文本数据。比赛数据由以下几部分组成:训练集20w个样本,测试集A5w个样本,测试集B5w个样本。为了防止选手手动标注测试集,我们对文本进行了匿名化处理角色级别的游戏数据。处理后的训练数据如下:labeltext657446656233375419574447453313635831174701169266062152112491838205023574443325284722523530142469547481911511643263453276484423646656929391537574445336940737655165551060423646653754132676594701168数据集中标签对应关系如下:{'科技':0,'股票':1,'体育':2,'娱乐':3,'时事':4,'社会':5,'教育':6,'金融':7,'家居':8,'游戏':9,'房地产':10、‘时尚’:11、‘彩票’:12、‘星座’:13}竞赛题数据来源为网络新闻,匿名收集处理。因此,玩家可以自行进行数据分析,发挥自己的特长完成各种特征工程,可以不受限制地使用任何外部数据和模型。数据列除以t,Pandas读取数据的代码如下:train_df=pd.read_csv('../input/train_set.csv',sep='t')评价标准评价标准为类别f1_score的平均值,由参赛者提交将结果与实际测试集的类别进行比较,越大越好。$$F1=2*\frac{Precision*Recall}{Precision+Recall}$$可以通过sklearn完成f1_score计算:fromsklearn.metricsimportf1_scorey_true=[0,1,2,0,1,2]y_pred=[0,2,1,0,0,1]f1_score(y_true,y_pred,average='macro')总结这是入门级NLP的第一次签到,只简单介绍一下赛题,以及分析竞赛题的设置和baseline的构建后面会详细介绍。这是NLP入门的基础竞赛。对于NLP问题,首先想到的当然是用RNN来解决问题。因此,Baseline将使用LSTM构建分类网络。当然,事实上,解决办法不止一种。我们也可以用CNN来处理序列问题,后面会讲到。参考[1]竞赛地址[2]官方竞赛题理解
