阿里舆情︱舆情热词分析架构简述(Demo学习)
本节来源于阿里云栖社区,同时正在开发一个舆情平台,其中他们发布了一篇他们所做的分析流程,感觉可以作为案例来学习。文章来源:觉民cloud/云栖社区
平台试用链接:https://prophet.data.aliyun.com/hotword?spm=5176.100239.blogcont68813.6.QB2AAc&isDemo=true
一般热词分析历经:分词、关键词提取、词关联计算、热度计算
一、分词
主要是词包大法,你懂得,阿里词包都不用自己写,本身一大堆啊!!!厉害了word哥:公众趋势分析背后有百万级的人名、品牌、地址、组织机构名、商品、品牌词库等做支撑。
万能词包啊!!!
.
.
二、关键词提取
如何在一篇长文本中挑出关键词呢? 在一定程度也就是等于找词权重,一种衡量一个句子里面词语重要性指标,其他方法可见博客:
NLP︱句子级、词语级以及句子-词语之间相似性(相关名称:文档特征、词特征、词权重)
那么,该舆情平台使用的是:TextRank算法为文本生成关键词。
TextRank的算法思想来源于PageRank,旨在通过文本中句子、词之间的相互投票,为句子、词进行权重的排序。PageRank假设一个网页的入链越多,则其权重越高。随机地为每个网页分配一个初始权重,在每一轮投票中,每个网页将其权重均匀地分配给其出链,收敛后(平稳马尔科夫过程)每个网页得到的权重值反映了其重要性,每轮投票的数学表述为:
其中d为阻尼系数,(1-d)/N表示每次页面转移时有一定的概率会从全网随机选择url,这样可以避免没有外链的悬挂网页让所有权重收敛到0。
PageRank通过页面之间的链接关系建立投票机制,TextRank以此为启发,通过词之间的邻近关系建立词权重投票机制,即假如两个词出现在同一个窗口中,则它们之间产生一次权重投票,这样可以通过PageRank的求解方法,计算每个词在文本中的权重。得到权重的排序之后,就可以挑选topN词作为关键词了。
.
.
三、词关联计算
词关联计算也可以使用社交网络的方式(点出度、点入度等,参考:R语言︱SNA-社会关系网络
R语言实现专题(基础篇)(一)),也可以使用一些统计学的方式(互信息,
NLP︱句子级、词语级以及句子-词语之间相似性(相关名称:文档特征、词特征、词权重))。
该平台使用的是互信息.
词关联使用点互信息PMI(pointwise mutual information)来表示,用信息论的语言来表述,点互信息衡量的是“给定一个随机变量后,另一个随机变量不确定性的减少程度”。假设有两个词x和y,则x和y之间的点互信息由下述公式表示:
其中p(x,y)表示x和y同时出现的概率,p(x)和p(y)分别表示x和y单独出现的概率。简单粗暴地理解,就是说相对于单独出现,某两个词更喜欢一起出现,则它们之间的关联程度越高。
.
.
四、词热度计算
词的热度计算不能仅仅统计这个词在所有文章中的出现次数,因为每篇文章的热门程度不一样,汪峰上了头条时的报道,对于热度的计算不能跟一般的小道消息同日而语。热词分析在计算热度时,会用文章的热度对词进行加权,而文章的热度会综合考虑以下因素:
文章的转发量
浏览量
评论量
文章发布的时间,如果发布时间越长,则热度衰减地越高
具体的计算公式就不在这公开了,那是我们经过无数次的调试之后的结果,有兴趣的读者也可以了解一下这篇文章:http://www.smartinsights.com/social-media-marketing/facebook-marketing/how-to-use-facebook-edgerank/?spm=5176.100239.blogcont68813.7.0MuQOh
阿里舆情︱舆情热词分析架构简述(Demo学习)的更多相关文章
- 信息领域热词分析系统--python统计
统计词语出现的频率,并且按从高到低的顺序报错在文件中 def main(): file=open("F:\大数据\大作业\分词后的文件\data4_xinxi.txt",'r') ...
- 信息领域热词分析系统--python过滤
利用python过滤去没用的词语,过滤的词语存储在停用文件中. #创建停用词表 def stopwordlist(): stopwords=[line.strip() for line in open ...
- 信息领域热词分析系统--python切词
利用python将标题切割成词语 import jieba #读取文件 f=open(r"F:\大数据\大作业\爬取到的数据\data1_xinxi.txt",'r') s=f.r ...
- 信息领域热词分析系统--java爬取CSDN中文章标题即链接
package zuoye1; import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.SQLExce ...
- 返回模式有流式(streaming)和整体(total) 热词词表解决方案
重要术语说明_语音识别(ASR)_智能语音交互-阿里云 https://help.aliyun.com/document_detail/72238.html 返回模式(response mode) ...
- Python 爬取 热词并进行分类数据分析-[App制作]
日期:2020.02.14 博客期:154 星期五 [本博客的代码如若要使用,请在下方评论区留言,之后再用(就是跟我说一声)] 所有相关跳转: a.[简单准备] b.[云图制作+数据导入] c.[拓扑 ...
- Python 爬取 热词并进行分类数据分析-[热词分类+目录生成]
日期:2020.02.04 博客期:143 星期二 [本博客的代码如若要使用,请在下方评论区留言,之后再用(就是跟我说一声)] 所有相关跳转: a.[简单准备] b.[云图制作+数据导入] c.[ ...
- Python 爬取 热词并进行分类数据分析-[云图制作+数据导入]
日期:2020.01.28 博客期:136 星期二 [本博客的代码如若要使用,请在下方评论区留言,之后再用(就是跟我说一声)] 所有相关跳转: a.[简单准备] b.[云图制作+数据导入](本期博客) ...
- 新闻热词:从爬虫到react native应用
背景 由于只想了解当天新增的top热词,减少过多信息干扰,打算做一款app实现这个功能. 架构: 热词抓取 -> mysql <=> nodejs <=> nginx & ...
随机推荐
- Javascript的异步和回调
介绍JavaScript的一些同步.异步.单线程多线程,回调基本概念:https://segmentfault.com/a/1190000002999668
- Jmeter_24个常用函数(分享帖)
JMeter提供了很多函数,如果能够熟练使用,可以为脚本带来很多方便. JMeter函数是一种特殊值,可用于除测试计划外的任何组件. 函数调用的格式如下所示:${__functionName(var1 ...
- 同一台机器上多个tomcat启动造成的内存溢出问题的解决方法。
加下面这句话就行了,我是WIN10+双tomcat+nginx(本地站点),无压力.在编译器的vm option里面加哦. -server -Xms512m -Xmx1024m -XX:PermSiz ...
- 精通libGDX-RPG开发实战
从今天开始,我会陆陆续续做一个五脏俱全的rpg小品游戏. 素材使用<圣剑英雄传II>的素材 游戏名称< Inspiration > 教程目录(暂定): Chapter 1: 开 ...
- python之闭包与装饰器
python闭包与装饰器 闭包 在函数内部定义的函数包含对外部的作用域,而不是全局作用域名字的引用,这样的函数叫做闭包函数. 示例: #-------------------------------- ...
- 关于metaclass,我原以为我是懂的
关于Python2.x中metaclass这一黑科技,我原以为我是懂的,只有当被打脸的时候,我才认识到自己too young too simple sometimes native. 为什么之前我认为 ...
- Django之wagtail安装及配置
安装指引原文地址:Http://docs.wagtail.io/en/v1.13.1 需要注意的几点: 指定端口启动服务:在项目根目录下 ,运行 python manage.py runserver ...
- BZOJ 4710: [Jsoi2011]分特产 [容斥原理]
4710: [Jsoi2011]分特产 题意:m种物品分给n个同学,每个同学至少有一个物品,求方案数 对于每种物品是独立的,就是分成n组可以为空,然后可以用乘法原理合起来 容斥容斥 \[ 每个同学至少 ...
- MongoDB - Indexing, Replication, and Security
Introduction of Indexes: 1> Provide high performance 2> Provide efficient execution to queries ...
- LocalMaxima_NOI导刊2009提高(1)
先打表,发现\(ans=\sum_{i=1}^n\frac{1}{i}\) 对于小数据可以直接打表 数据很大时,精度相对就比较宽松 欧拉-马斯刻若尼常数=调和级数-自然对数 调和级数为:\(\sum_ ...