一、天池比赛报名及数据下载

1.1 比赛报名

1.1.1 注册账号

打开天池官网https://tianchi.aliyun.com/ 注册账号。注意可以用淘宝/支付宝账号直接登录,节省很多时间。

1.1.2 完善个人信息

注册完成后,点击右上角账号,进入个人信息页,完善个人信息。比如 邮箱,手机号,工作单位,学校,专业等。信息不完善影响后续报名比赛。本次题目是学习赛题,所以不需要实名即可报名。

NLP工程师相关政策 nlp报考_机器学习

1.1.3 比赛报名

打开https://tianchi.aliyun.com/competition/gameList/coupleList 学习赛页面,点击【零基础入门NLP - 新闻文本分类】进行报名。

NLP工程师相关政策 nlp报考_词向量_02

1.2 数据下载

在报名成功后的页面,选择【赛题与数据下载】,可以下载数据。

NLP工程师相关政策 nlp报考_数据_03

打开下载下来的NLP_data_list_0715.csv文件, 里面包含三个链接

NLP工程师相关政策 nlp报考_数据_04

将数据下载到本地目录,并解压。至此,准备工作完成。

NLP工程师相关政策 nlp报考_机器学习_05

二、理解赛题背景及赛题数据

2.1 赛题背景

零基础入门NLP-新闻文本分类塞是Datawhale与天池联合发起的零基础入门系列赛事。赛题以自然语言处理为北京,要求根据新闻文本字符对行文的类别进行分类。

2.2 赛题数据

在【1.2】中下载的数据为3个csv文件,里面是按照字符级别进行匿名处理过的新闻文本信息。整合划分出14个候选分类类别:财经、彩票、房产、股票、家居、教育、科技、社会、时尚、时政、体育、星座、游戏、娱乐。

  • train_set.csv 训练集,20w条样本。包括分类(label)和文本(text)两列。 在数据集中标签的对应的关系如下:

分类

0

1

2

3

4

5

6

7

8

9

10

11

12

13

标签

科技

股票

体育

娱乐

时政

社会

教育

财经

家居

游戏

房产

时尚

彩票

星座

  • test_a.csv 测试集A,包含5w条样本。
  • test_a_sample_submit.csv 提交结果样例数据.

2.3 数据读取

import pandas as pd
train_df = pd.read_csv('./train_set.csv', sep = '\t', nrows=100)
print(train_df.head())

NLP工程师相关政策 nlp报考_自然语言处理_06

2.4 评估指标

评价标准为f1_score的均值,

越大,说明模型的质量越好。

F1-Score意义及计算方式见wiki:

三、理解赛题思路

赛题本质是一个文本分类问题,需要根据每句的字符进行分类,但是赛题给出的数据是匿名化的,不能使用中文分词等操作,我们需要对匿名字符进行建模,然后进行文本分类。 由于文本是一种典型的非结构化数据,因此需要涉及 特征提取和分类模型两个部分。任务链接中给出了一些参考模型:

TF-IDF + 机器学习分类器

使用TF-IDF对文本提取特征,然后使用分类器分类,可以选择SVM, LR, XGBOOST分类器。

参照:

FastText

FastText是入门款的词向量,利用Facebook提供的FastText工具,可以快速构建出分类器。

WordVec + 深度学习分类器

WordVec是进阶款的词向量,通过构建深度学习完成分类,深度学习分类的网络结构可以选择TextCNN, TextRNN或者BiLSTM

Bert词向量

Bert是高配款的词向量具有强大的建模学习能力。