前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >NLP入门竞赛,搜狗新闻文本分类

NLP入门竞赛,搜狗新闻文本分类

作者头像
AI算法与图像处理
发布2019-11-14 14:02:16
1.1K1
发布2019-11-14 14:02:16
举报

搜狗新闻文本分类竞赛

使用keras框架通过构建CNN+BiGRU网络实现在搜狗新闻文本数据集上91+的准确率。

◆◆

数据集来源

◆◆

该数据集来自若干新闻站点2012年6月—7月期间国内,国际,体育,社会,娱乐等18个频道的新闻数据。

根据新闻正文内容分析新闻的类别数据集官网链接:

http://www.sogou.com/labs/resource/tce.php.

该数据集样例格式如下所示:

在 FlyAI竞赛平台上 提供了超详细的参考代码,我们可以通过参加搜狗新闻文本分类预测练习赛进行进一步学习和优化。

◆◆

代码实现

◆◆

1.1、算法流程及实现

算法流程主要分为以下四个部分进行介绍:

1.数据加载

2.构建网络

3.模型训练

1.数据加载

对每条新闻数据的读取和处理是在processor.py文件中完成。

具体实现如下:

2.构建网络

由于是搜狗新闻文本类数据,这里我们可以使用一维卷积Conv1D + BiGRU来构建网络,网络结构如下所示:

运行summary()方法后输出的网络结构如下图:

3.模型训练

这里我们设置了epoch为5,batch为128,采用adam优化器来训练网络,EarlyStopping可以加速调参过程。然后通过调用FlyAI提供的train_log方法可以在训练过程中实时的看到训练集和验证集的准确率及损失变化曲线。

1.2.最终结果

通过使用自定义CNN网络结构+双向GRU网络的方法,在epoch为10,batch为128的条件下使用adam优化器下不断优化模型参数,使用early_stopping规则在model训练达到early_stopping条件时提前终止训练提高model优化效率,最终模型在测试集的准确率达到91+。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-11-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 AI算法与图像处理 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
批量计算
批量计算(BatchCompute,Batch)是为有大数据计算业务的企业、科研单位等提供高性价比且易用的计算服务。批量计算 Batch 可以根据用户提供的批处理规模,智能地管理作业和调动其所需的最佳资源。有了 Batch 的帮助,您可以将精力集中在如何分析和处理数据结果上。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档