达观杯智能文本挑战赛
-
任务 用长文本数据正文(article)来预测文本对应的类别(class)
-
数据
下载地址: 可以直接在官网比赛主页数据下载中下载,也可通过以下传送门下载: https://pan.baidu.com/s/11AOOn0xlv0TZjGeFfRc3Rw 提取码58r9
下载后解压,其中train_set.csv为训练集:此数据集用于训练模型,每一行对应一篇文章。文章分别在“字”和“词”的级别上做了脱敏处理。共有四列:
- 第一列是文章的索引(id),
- 第二列是文章正文在“字”级别上的表示,即字符相隔正文(article);
- 第三列是在“词”级别上的表示,即词语相隔正文(word_seg);
- 第四列是这篇文章的标注(class)。 注:每一个数字对应一个“字”,或“词”,或“标点符号”。“字”的编号与“词”的编号是独立的!
其中test_set.csv为测试集:此数据用于测试。数据格式同train_set.csv,但不包含class。
3.数据的读取
代码如下:
import numpy as np
import pandas as pd
df_train = pd.read_csv(‘train_set.csv’)
#括号内这里是训练集的地址,下测试集同
#注:若内存不足可添加参数:nrows=1000
df_test=pd.read_csv('test_set.csv')
df_train.shape df_train.columns
#查看训练集维度
可以用以下代码看一下训练集是否有缺失值:
train_data.isnull().any()
读取数据后可知的columns分别为:id,article,word_seg,class,其中class即为label属性,需要正确分类的属性
4.数据拆分
直接
columns=['article','word_seg']
X_train,X_test,y_train,y_test=train_test_split(train_data[columns],train_data['class'],test_size=0.3, random_state=2019)
print(X_train.shape,X_test.shape,y_train.shape,y_test.shape)