零基础入门NLP - 新闻文本分类
本文是对阿里云新人竞赛中的“零基础入门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 - 新闻文本分类相关推荐
- Task01——零基础入门NLP - 新闻文本分类之赛题理解
本篇目标 首先本篇文章会对赛题进行介绍以及个人对赛题的理解,带大家接触NLP的预处理.模型构建和模型训练等知识点. 赛题介绍 赛题名称:零基础入门NLP - 新闻文本分类 赛题任务:赛题以自然语言处理 ...
- 零基础入门NLP - 新闻文本分类,正式赛第一名方案分享
零基础入门NLP - 新闻文本分类,正式赛第一名方案分享:https://mp.weixin.qq.com/s/7WpZUqdlItBToLYuRLm44g
- 【初学者入门】零基础入门NLP - 新闻文本分类
序言 从今天开始入门学习NLP,虽然有点晚,但是我觉得任何时候都值得开始,尤其是面对你去感兴趣的事情.今天的任务是 [零基础入门NLP - 新闻文本分类],这是天池大赛中的入门级算法比赛,入口链接请自 ...
- 天池零基础入门NLP - 新闻文本分类Top1方案的bert4torch复现
天池有些长期比赛可以练习玩玩(还可以继续提交),于是试了下简单的新闻文本分类任务,Top1的解决方案思路是"预训练+fgm+交叉验证模型融合",代码是基于bert4keras的,本 ...
- 【学习笔记】零基础入门NLP - 新闻文本分类实战
赛题理解 首先要理解赛题的背景及描述--赛题以新闻数据为赛题数据,数据集报名后可见并可下载.赛题数据为新闻文本,并按照字符级别进行匿名处理.整合划分出14个候选分类类别:财经.彩票.房产.股票.家 ...
- 阿里云天池 零基础入门NLP - 新闻文本分类 2种做法,F1=0.87
problem 1.赛题理解 数据集: 在NLP_data_list_0715.csv中,有三个链接. 分别可以下载训练集,测试集A,测试样例. f1_score介绍: F1分数(F1-score)是 ...
- 【天池学习赛】零基础入门NLP - 新闻文本分类
一.赛题描述 赛题数据为新闻文本,并按照字符级别进行匿名处理.整合划分出14个候选分类类别:财经.彩票.房产.股票.家居.教育.科技.社会.时尚.时政.体育.星座.游戏.娱乐的文本数据. 赛题任务:赛 ...
- java统计文本中英文单词个数split_零基础入门NLP - 新闻文本分类Task2(天池入门赛)...
本章主要内容是主要是通过pandas模块来进行数据分析.(注:文章只是对天池入门赛课件的学习) 一.学习目标 1.学习使用pandas读取赛题规律 2.分布赛题数据的分布规律 二.数据读取 使用pan ...
- Task02——零基础入门NLP - 新闻文本分类之数据读取与分析
本期目标 学习使用Pandas读取赛题数据 分析赛题数据的分布规律 数据读取 import pandas as pd train_df=pd.read_csv('./train_set.csv/tra ...
最新文章
- 为绑定的NSArrayController设置默认的排序
- 【行业看点】量子通信 量子计算机 量子列车…… 量子的世界究竟多精彩?
- mysql服务在tcp6_为什么 netstat 对某些服务只显示了 tcp6 监听端口
- 组件间数据交互||父组件向子组件传值-基本使用|| 父组件向子组件传值-props属性名规则
- 零基础学Python:作用域详解
- 可能是全网首个前端源码共读活动,诚邀加入学习
- 两万字教会你解析库之Beautiful Soup
- 常见的排序算法五——堆排序
- 关于车辆和车牌的检测相关文章
- hdu4883-模拟---区间计数小技巧
- 360 html页面乱码,360浏览器乱码是怎么回事
- java -pth_javah 详解
- Python求解最大子列和
- SOA、网格计算、云计算与P2P技术
- 树莓派3B+ wifi 5G连接
- 据说币圈炒币亏钱的人,大多都是因为这6个原因!
- Quasi-Newton Method--LBFGS
- Python中%是什么意思?如何使用?
- 一些可以参考文章集合2
- 大数据「偏见」会让我们变蠢吗