一、背景

新闻分类是文本挖掘领域较为常见的场景。目前很多媒体或是内容生产商对于新闻这种文本的分类常常采用人肉打标的方式,消耗了大量的人力资源。本文尝试通过智能的文本挖掘算法对于新闻文本进行分类。无需任何人肉打标,完全由机器智能化实现。

本文通过PLDA算法挖掘文章的主题,通过主题权重的聚类,实现新闻自动分类。包括了分词、词型转换、停用词过滤、主题挖掘、聚类等流程。

二、数据集介绍

具体字段如下:

字段名 含义 类型 描述
category 新闻类型 string 体育、女性、社会、军事、科技等
title 标题 string 新闻标题
content 内容 string 新闻内容

数据截图:

三、数据探索流程

首先,实验流程图:

实验可以大致分为五个模块,分别是增加序号列、停用词过滤、分词及词频统计、文本主题挖掘、结果分析和评估。

1.增加序号列

本文的数据源输入是以单个新闻为单元,需要增加ID列来作为每篇新闻的唯一标识,方便下面的算法进行计算。

2.分词及词频统计

这两步都是文本挖掘领域最常规的做法,首先利用分词控件对于content字段,也就是新闻内容进行分词。去除过滤词之后(过滤词一般是标点符号及助语),对于词频进行统计。
如下图:

3.停用词过滤

停用词过滤功能用于过滤输入的停用词词库,一般过滤标点符号以及对于文章影响较少的助语等。

4.文本主题挖掘

使用PLDA文本挖掘组件需要先将文本转换成三元形式,append_id是每篇新闻的唯一标识,key_value字段中冒号前面的数字表示的是单词抽象成的数字标识,冒号后面是对应的单词出现的频率。三元组组件生成结果如下:

在上一步完成了文本转数字的过程,下一步数据进入PLDA算法。PLDA算法又叫主题模型,算法可以定位代表每篇文章的主题的词语。本次试验设置了50个主题,PLDA有六个输出桩,第五个输出桩输出结果显示的是每篇文章对应的每个主题的概率。如图:

5.结果分析和评估

上一步把文章从主题的维度表示成了一个向量。接下来就可以通过向量的距离实现聚类,从而实现文章分类。我们这里可以简单看一下分类的结果。查看K均值聚类组件的结果,cluster_index表示的是每一类的名称。找到第0类,一共有docid为115,292,248,166四篇文章。

通过过滤与映射组件查询115,292,248,166四篇文章。结果如下:

效果并不十分理想,将一篇财经、一篇科技的新闻跟两个体育类新闻分到了一起。主要原因是细节的调优没有做,也没有做特征工程,同时数据量太小也是一个主要的因素。本文只是一个简单的案例,商业合作可以私下联系我们,我们在文本方面我们有较完善的解决方案。

四、其它

作者微信公众号(与我联系):

【机器学习PAI实践七】文本分析算法实现新闻自动分类相关推荐

  1. 文本分析算法简单介绍-1

    以下内容是基于李博<机器学习实践应用>,邹博小象学院<机器学习课程>以及李航书籍<统计学习方法>加上自己的理解提炼而成 文本分析算法大致可以分成3种方法:机械分词, ...

  2. 【毕业设计_课程设计】基于机器学习的情感分类与分析算法设计与实现(源码+论文)

    文章目录 0 项目说明 1 研究目的 2 研究方法 3 研究结论 4 项目流程 4.1 获取微博文本 4.2 SVM初步分类 4.3 使用朴素贝叶斯分类 4.4 AdaBoost 4.4.1 二分类A ...

  3. 【机器学习PAI实践十二】机器学习算法基于信用卡消费记录做信用评分

    背景 如果你是做互联网金融的,那么一定听说过评分卡.评分卡是信用风险评估领域常用的建模方法,评分卡并不简单对应于某一种机器学习算法,而是一种通用的建模框架,将原始数据通过分箱后进行特征工程变换,继而应 ...

  4. 【机器学习PAI实践五】机器学习眼中的《人民的名义》

    一.背景 最近热播的反腐神剧"人民的名义"掀起来一波社会舆论的高潮,这部电视剧之所能得到广泛的关注,除了老戏骨们精湛的演技,整部剧出色的剧本也起到了关键的作用.笔者在平日追剧之余, ...

  5. 用文本分析算法探索20个新闻组数据集

    什么是NLP 20个新闻组数据集,顾名思义,由从新闻文章抽取的文本组成.它是由Ken Lang采集的,广泛用于机器学习技术驱动的文本类应用的实验,尤其是用自然语言处理技术开发文本类应用. 自然语言处理 ...

  6. 【机器学习PAI实践十二】机器学习实现男女声音识别分类(含语音特征提取数据和代码)

    背景 随着人工智能的算法发展,对于非结构化数据的处理能力越来越受到重视,这里面的关键一环就是语音数据的处理.目前,许多关于语音识别的应用案例已经影响着我们的生活,例如一些智能音箱中利用语音发送指令,一 ...

  7. 【机器学习PAI实践九】如何通过机器学习实现云端实时心脏状况监测

    背景 我们通过之前的案例已经为大家介绍了如何通过常规的体检数据预测心脏病的发生,请见http://blog.csdn.net/buptgshengod/article/details/53609878 ...

  8. 【机器学习PAI实践八】用机器学习算法评估学生考试成绩

    (本文数据为实验用例) 一.背景 母亲是老师反而会对孩子的学习成绩造成不利影响?能上网的家庭,孩子通常能取得较好的成绩?影响孩子成绩的最大因素居然是母亲的学历?本文通过机器挖掘算法和中学真实的学生数据 ...

  9. 【机器学习PAI实践三】雾霾成因分析

    一.背景 如果要人们评选当今最受关注话题的top10榜单,雾霾一定能够入选.如今走在北京街头,随处可见带着厚厚口罩的人在埋头前行,雾霾天气不光影响了人们的出行和娱乐,对于人们的健康也有很大危害.本文通 ...

最新文章

  1. MongoDB基本使用
  2. 华为服务器引入清空外部配置文件,云服务器还原配置文件
  3. 【PC工具】github项目辅助下载工具,github高速下载
  4. 递归行为时间复杂度估算
  5. AES-256 加密 PHP实现
  6. getresource 路径转义_java中的相对路径和绝对路径
  7. Leetcode--191. 位1的个数
  8. 容器(container)技术之发展简史
  9. 程序编号以后计算机能够查出,华威大学研究人员开发出计算机程序,可发现量子计算机中的“泄漏”...
  10. php中取整的函数,php中四舍五入取整函数详细介绍
  11. CCF NOI1149 N皇后问题
  12. 幼儿计算机教材有哪些,中华字经幼儿教材
  13. 成员的owner意识
  14. PCB 一分钟科普之你真的懂多层板吗?
  15. 借贷记账法笔记1(资成费借加贷减,收负所借减贷加)
  16. 【图像增强】基于Step和Polynomial 滤波实现图像增强附matlab代码
  17. c语言接受mysql中文,C语言连接MySQL中文问题
  18. 最新最全移动端界面设计UI尺寸规范-2018年初版
  19. java设计模式:23种设计模式及其源代码演示实现
  20. 七个基本量纲_量纲是什么?

热门文章

  1. linux内核色彩管理,如何在Linux的色彩管理中获得标准结果
  2. 简单选择排序 c代码
  3. source insight搜不到关联代码
  4. IPv6扩展头部 (四) 分片头部 Fragment Header for IPv6
  5. php微博获取用户信息,获取用户基本信息
  6. mysql 驱动包 bin 的意思_mysql连接数据库,用下面代码,为什么找不到驱动呢?? lib下是mysql-connector-java-5.1.15-bin.jar...
  7. es mysql延迟_ES 近实时搜索 更新延迟问题
  8. ide 波浪线_零基础学习Python_小波浪
  9. android XML解析详解(封装好的工具类)
  10. 4che3 scu发送超时设置_Redis实现订阅发布与批量发送短信