[置顶] 【机器学习PAI实践五】机器学习眼中的《人民的名义》
一、背景
最近热播的反腐神剧“人民的名义”掀起来一波社会舆论的高潮,这部电视剧之所能得到广泛的关注,除了老戏骨们精湛的演技,整部剧出色的剧本也起到了关键的作用。笔者在平日追剧之余,也尝试通过机器学习算法对人民的名义的部分剧集文本内容进行了文本分析,希望从数据的角度得到一些输入。
本文使用阿里云机器学习PAI,主要针对以下几个方面进行了实验:
- 分词以及词频统计
- 每一章的关键词提取
- 每一章的文本摘要
- 每一章文本之间的相似度分析
实验流程以及数据可以在阿里云机器学习PAI的社区直接使用,只要点击“去PAI平台创建”按钮即可在自己的项目下生成实验。社区部分截图:

二、数据集介绍
数据源:本文数据为人民的名义部分剧集文本,一共分成1-9个章节。
具体字段如下:
| 字段名 | 含义 | 类型 | 描述 |
|---|---|---|---|
| id | 文章唯一标识 | string | 文章标识 |
| content | 文章内容 | string | 部分剧集内容 |
数据截图:

三、数据探索流程
首先,实验流程图:

1.分词以及停用词
分词是文本分析的基础,但是在“人民的名义”这样的文本中会有很多特有名词,是分词算法很难区分的。比如“侯亮平”、“沙瑞金”、“大风厂”等,所以我们需要在split word组件中加入一个词库,帮助分词组件可以对人名做正确的分词处理。加入的词库fufeitest.splite_w如下图:

另外,文本中一些“的”、“地”、“得”这样的助词以及各种标点符号也需要去掉,这些词是没有意义的,对文本分析有干扰,这些词可以通过“停用词过滤”组件去除。最终通过分词以及停用词过滤组件操作之后,文本内容被整理成了如下图形态:

2.关键词提取及词频统计
通过“词频统计”组件可以查看每一章中各个词语出现的频率,如图所示,id为1的文章中每个词语出现的次数:

“关键词”提取组件可以返回每个文章中关键的词语以及权重,(如果我们在停用词过滤那里处理的更细致,这部分效果会更好),通过这个结果可以看到每一章的关键人物有哪些,以及他们的权重排名:

3.文本摘要
“文本摘要”组件可以帮助您快速的浏览每一章节的关键内容,返回的是全文最关键的句子,我这里设置的是返回前三关键的句子:

截取的是第9章的摘要内容,如果看过这个剧,通过这个摘要可以大致了解到这是在讲汉东省委关于干部任用的会议的那一集。
4.相似文章分析
通过“Doc2Vec”组件可以将文本文章映射成高维向量化,将文本按照语义变成数学向量,结果如下:

然后可以通过”语义向量距离”组件挖掘出不同文章向量的距离,这里面的隐含关系是文章向量距离越近,那么语义越相近。我们以第9章为例:
第9章与第8章的向量距离最小,言外之意就是这两章的语义相近,这一点也比较容易理解,因为相连的两章在意义上肯定上是有一定的关联性。
四、总结
本文通过对“人民的名义”部分章节文本的分析,帮助大家了解机器学习PAI上面的部分文本算法的用法。如果向更深入的了解相关的内容,欢迎到PAI的社区来讨论,我们会定时组织活动。
社区:PAI社区公众号
产品页:阿里云数加机器学习平台
[置顶] 【机器学习PAI实践五】机器学习眼中的《人民的名义》的更多相关文章
- [置顶]
【机器学习PAI实践九】如何通过机器学习实现云端实时心脏状况监测
背景 我们通过之前的案例已经为大家介绍了如何通过常规的体检数据预测心脏病的发生,请见http://blog.csdn.net/buptgshengod/article/details/53609878 ...
- 【机器学习PAI实践十二】机器学习算法基于信用卡消费记录做信用评分
背景 如果你是做互联网金融的,那么一定听说过评分卡.评分卡是信用风险评估领域常用的建模方法,评分卡并不简单对应于某一种机器学习算法,而是一种通用的建模框架,将原始数据通过分箱后进行特征工程变换,继而应 ...
- [置顶]
【机器学习PAI实践十一】机器学习PAI为你自动写歌词,妈妈再也不用担心我的freestyle了(提供数据、代码
背景 最近互联网上出现一个热词就是"freestyle",源于一个比拼rap的综艺节目.在节目中需要大量考验选手的freestyle能力,freestyle指的是rapper即兴的 ...
- [置顶]
【机器学习PAI实践三】雾霾成因分析
一.背景 如果要人们评选当今最受关注话题的top10榜单,雾霾一定能够入选.如今走在北京街头,随处可见带着厚厚口罩的人在埋头前行,雾霾天气不光影响了人们的出行和娱乐,对于人们的健康也有很大危害.本文通 ...
- [置顶]
【机器学习PAI实践六】金融贷款发放预测
一.背景 很多农民因为缺乏资金,在每年耕种前会向相关机构申请贷款来购买种地需要的物资,等丰收之后偿还.农业贷款发放问题是一个典型的数据挖掘问题.贷款发放人通过往年的数据,包括贷款人的年收入.种植的作物 ...
- [置顶]
【机器学习PAI实践四】如何实现金融风控
(本文数据为虚构,仅供实验) 一.背景 本文将针对阿里云平台上图算法模块来进行实验.图算法一般被用来解决关系网状的业务场景.与常规的结构化数据不同,图算法需要把数据整理成首尾相连的关系图谱.图算法更多 ...
- [置顶]
【机器学习PAI实践七】文本分析算法实现新闻自动分类
一.背景 新闻分类是文本挖掘领域较为常见的场景.目前很多媒体或是内容生产商对于新闻这种文本的分类常常采用人肉打标的方式,消耗了大量的人力资源.本文尝试通过智能的文本挖掘算法对于新闻文本进行分类.无需任 ...
- [置顶]
【机器学习PAI实践八】用机器学习算法评估学生考试成绩
(本文数据为实验用例) 一.背景 母亲是老师反而会对孩子的学习成绩造成不利影响?能上网的家庭,孩子通常能取得较好的成绩?影响孩子成绩的最大因素居然是母亲的学历?本文通过机器挖掘算法和中学真实的学生数据 ...
- 【机器学习PAI实践十】深度学习Caffe框架实现图像分类的模型训练
背景 我们在之前的文章中介绍过如何通过PAI内置的TensorFlow框架实验基于Cifar10的图像分类,文章链接:https://yq.aliyun.com/articles/72841.使用Te ...
随机推荐
- go——结构体(二)
Go语言是一种静态类型的编程语言.这意味着,编译器需要在编译时知晓程序里每个值的类型. 如果提前知道类型信息,编译器就可以确保程序合理的使用值. 这有助于减少潜在的内存异常和bug,并且使编译器有机会 ...
- 数据库权限分配(远程共享数据库)(mysql)
1. 数据库远程权限 mysql -uroot -proot grant all privileges on formal.* to root@'192.168.3.40' identified by ...
- java项目地址和服务器地址区分
项目地址String filePath = request.getSession().getServletContext().getRealPath("/") + "up ...
- python之路 堡垒机paramiko
paramiko 1.安装 pip3 install paramiko 二.使用 SSHClient 用于连接远程服务器并执行基本命令 基于用户名密码连接: import paramiko # 创建S ...
- PHP 留言板练习
登录页面同session一样 login页面 <form action="loginchuli.php" method="post"> <di ...
- HDU - 6315 Naive Operations (线段树+思维) 2018 Multi-University Training Contest 2
题意:数量为N的序列a和b,a初始全为0,b为给定的1-N的排列.有两种操作:1.将a序列区间[L,R]中的数全部+1:2.查询区间[L,R]中的 ∑⌊ai/bi⌋(向下取整) 分析:对于一个位置i, ...
- Unity 碰撞检测 OnTriggerEnter 入门
当我们需要检测两个物体A和B发生碰撞的时候,必须要满足一下条件 1:A和B必须有碰撞边界,你可以点开一个A,在属性窗口点击AddComponent,在physis(物理)目录下看到以下这些 ,根据形状 ...
- nodejs入门-做一个代理服务器
看到node.js的httpServer和http.request,第一个想法居然是可以用它做一个代理服务器下面代码,实现了代理的基本功能,通过网络的代理设置将你的浏览器的请求转到这个httpServ ...
- 【HTML5校企公益课】第四天
1.上午考试没去.. 2.下午跟不上.. 变色.html <!DOCTYPE html> <html> <head> <meta charset=" ...
- MySQL Binlog解析(1)
一.Binlog File Binlog files start with a Binlog File Header followed by a series of Binlog Event Binl ...