本文是对阿里云新人竞赛中的“零基础入门NLP - 新闻文本分类”解体过程进行的记录,目前仅使用了textCNN模型进行预测,后续还会考虑使用LSTM进行对比。

赛题数据

赛题以新闻数据为赛题数据,数据集报名后可见并可下载。赛题数据为新闻文本,并按照字符级别进行匿名处理。整合划分出14个候选分类类别:财经、彩票、房产、股票、家居、教育、科技、社会、时尚、时政、体育、星座、游戏、娱乐的文本数据。

赛题数据由以下几个部分构成:训练集20w条样本,测试集A包括5w条样本,测试集B包括5w条样本。为了预防选手人工标注测试集的情况,我们将比赛数据的文本按照字符级别进行了匿名处理。

解题思路:

官方给出了多种模型的解题方法,包括fastText、TextCNN、TF-IDF、TextRNN等。我按照官方教程跑通TF-IDF后发现得分只有0.87左右,尝试更改参数后提升不大,故考虑改用TextCNN进行预测。

目前使用的网络结构如下:

其中使用三种不同尺寸的fiter对文本数据进行卷积。

由于原始数据长度分布中位值大概在2000字符左右,作为初次试算,选择构建vocabulary的的最大字长取为1000字符。

第一次选择1w数据量进行训练和验证,其中训练集80%,结果如下,可见在40次迭代后训练集精度达到1左右,已经很难再继续下降了。此时考虑增加数据量至10w,并将学习率设置为随迭代梯度下降。目前训练到50epoch,使用官方提供的测试数据,打分为0.9328,排名大概60+。

精度收敛曲线

损失收敛曲线

发布于 55 分钟前

零基础入门NLP - 新闻文本分类相关推荐

  1. Task01——零基础入门NLP - 新闻文本分类之赛题理解

    本篇目标 首先本篇文章会对赛题进行介绍以及个人对赛题的理解,带大家接触NLP的预处理.模型构建和模型训练等知识点. 赛题介绍 赛题名称:零基础入门NLP - 新闻文本分类 赛题任务:赛题以自然语言处理 ...

  2. 零基础入门NLP - 新闻文本分类,正式赛第一名方案分享

    零基础入门NLP - 新闻文本分类,正式赛第一名方案分享:https://mp.weixin.qq.com/s/7WpZUqdlItBToLYuRLm44g

  3. 【初学者入门】零基础入门NLP - 新闻文本分类

    序言 从今天开始入门学习NLP,虽然有点晚,但是我觉得任何时候都值得开始,尤其是面对你去感兴趣的事情.今天的任务是 [零基础入门NLP - 新闻文本分类],这是天池大赛中的入门级算法比赛,入口链接请自 ...

  4. 天池零基础入门NLP - 新闻文本分类Top1方案的bert4torch复现

    天池有些长期比赛可以练习玩玩(还可以继续提交),于是试了下简单的新闻文本分类任务,Top1的解决方案思路是"预训练+fgm+交叉验证模型融合",代码是基于bert4keras的,本 ...

  5. 【学习笔记】零基础入门NLP - 新闻文本分类实战

    赛题理解   首先要理解赛题的背景及描述--赛题以新闻数据为赛题数据,数据集报名后可见并可下载.赛题数据为新闻文本,并按照字符级别进行匿名处理.整合划分出14个候选分类类别:财经.彩票.房产.股票.家 ...

  6. 阿里云天池 零基础入门NLP - 新闻文本分类 2种做法,F1=0.87

    problem 1.赛题理解 数据集: 在NLP_data_list_0715.csv中,有三个链接. 分别可以下载训练集,测试集A,测试样例. f1_score介绍: F1分数(F1-score)是 ...

  7. 【天池学习赛】零基础入门NLP - 新闻文本分类

    一.赛题描述 赛题数据为新闻文本,并按照字符级别进行匿名处理.整合划分出14个候选分类类别:财经.彩票.房产.股票.家居.教育.科技.社会.时尚.时政.体育.星座.游戏.娱乐的文本数据. 赛题任务:赛 ...

  8. java统计文本中英文单词个数split_零基础入门NLP - 新闻文本分类Task2(天池入门赛)...

    本章主要内容是主要是通过pandas模块来进行数据分析.(注:文章只是对天池入门赛课件的学习) 一.学习目标 1.学习使用pandas读取赛题规律 2.分布赛题数据的分布规律 二.数据读取 使用pan ...

  9. Task02——零基础入门NLP - 新闻文本分类之数据读取与分析

    本期目标 学习使用Pandas读取赛题数据 分析赛题数据的分布规律 数据读取 import pandas as pd train_df=pd.read_csv('./train_set.csv/tra ...

最新文章

  1. 为绑定的NSArrayController设置默认的排序
  2. 【行业看点】量子通信 量子计算机 量子列车…… 量子的世界究竟多精彩?
  3. mysql服务在tcp6_为什么 netstat 对某些服务只显示了 tcp6 监听端口
  4. 组件间数据交互||父组件向子组件传值-基本使用|| 父组件向子组件传值-props属性名规则
  5. 零基础学Python:作用域详解
  6. 可能是全网首个前端源码共读活动,诚邀加入学习
  7. 两万字教会你解析库之Beautiful Soup
  8. 常见的排序算法五——堆排序
  9. 关于车辆和车牌的检测相关文章
  10. hdu4883-模拟---区间计数小技巧
  11. 360 html页面乱码,360浏览器乱码是怎么回事
  12. java -pth_javah 详解
  13. Python求解最大子列和
  14. SOA、网格计算、云计算与P2P技术
  15. 树莓派3B+ wifi 5G连接
  16. 据说币圈炒币亏钱的人,大多都是因为这6个原因!
  17. Quasi-Newton Method--LBFGS
  18. Python中%是什么意思?如何使用?
  19. 一些可以参考文章集合2
  20. 大数据「偏见」会让我们变蠢吗

热门文章

  1. python同步赋值原理,Python直接赋值及深浅拷贝原理详解
  2. java多if语句的优化方案_Java代码多分支语句优化
  3. re.match函数 re.search方法 区别
  4. Python 字典(Dictionary) copy()方法
  5. xshell 家庭/学校 免费教育版下载
  6. java中堆与栈的区别 彻底理解
  7. keras回调监控函数
  8. CV绿色的上限和下限
  9. html表格td宽度设置,table以及td宽度设置细节
  10. 项目经理应该知道的97件事 --译者序