[答网友问]传播和抽样

郑昀 20110306

集中回答一下网友对互联网信息监测的提问。

 

对于社区化信息挖掘、互联网海量信息挖掘,抽样是被迫的,但它仍然是一个好方法。

1.为什么被迫抽样?


    即使是针对Twitter,做消息监控也是抽样
    也就是说,但凡是没有权限调用FireHose API(即Streaming API,参考郑昀的文章:http://www.cnblogs.com/zhengyun_ustc/archive/2010/06/22/streaming.html ),拿不到全部数据,一定是抽样。
    从统计学角度,抽样到一定量级,是可以涵盖全部热点的。

    互联网热点追踪,本身就不可能做到全面覆盖,毕竟你公司又不是Google,即使是Google,它也监控不了Facebook。
    而且做互联网数据挖掘,也不需要抓取到所有数据。参考郑昀的文章:http://www.cnblogs.com/zhengyun_ustc/archive/2009/08/31/1556966.html

 

2.少量数据上也可以做特征提取

    关于数据抽样这方面,可以参考郑昀的文章:
http://www.cnblogs.com/zhengyun_ustc/archive/2009/10/27/1590805.html
其中有段话:

在语义的世界里,可以近似地说:万事万物都是特征提取。

你只要找到特征,事情就好办。

如果你找不到明确的特征,那么什么样的机器智能也无法准确地帮助你。

多数时候,唯一的麻烦在于,你所认为的特征,实际上不是特征。。。

    如果你没有成为新浪微博的官方合作伙伴(不仅仅是应用获得审批的开发者),那么搜索接口你是调用受限的,但至少1、2分钟调用一次是可以的,所以只要你不是大公司的人,一定拿不到微博转发行为的90%数据,你只能在10%数据上做文章。

 

    根据传播学原理,热点追踪只需要在传播节点上做拦截即可。这也就是玩聚SR的设计原理,参考郑昀的文章:http://www.cnblogs.com/zhengyun_ustc/archive/2011/02/05/aboutidea.html ,不需要全网抓取论坛、博客、微博的帖子,只需要在收藏、网摘、RSS阅读器、Twitter等传播节点上追踪大家分享、推荐、收藏、转载的链接和文字即可。

 

抓新浪微博或国内微博的人,基本都是几条腿走路:

  • 一条腿,调用官方API,保证抓取频率不超过对方限制;
  • 第二条腿,通过模拟登录,对搜索微博的网页进行翻页,也保证抓取频率不要过高。
为什么是两条腿走路呢?
  • 第一,因为国内微博的微博搜索html样式变化过好多次,那么调用API就可以保证随时都有数据在抓,不会有遗漏;
  • 第二,双向保障,由于新浪微博对登录用户搜索次数也有限制(主要是针对用户名的,而不是封你IP地址),所以新浪微博模拟登录通过搜索页抓取微博消息,频率不能太快,那么两条腿走路,就可以尽量多地抓取到数据。

 

关于特征抽取,你可以搜索以下关键词配搭:
二元组+语义
三元组+语义

3.处理数据的套路

套路一:
数据抓取-->信息抽取-->数据清洗-->元数据提取(分词、提取标签、提取实体、信息指纹、分类等)-->元数据入库(如MySQL)(原始数据可以抛弃)-->统计(包括层次聚类、针对实体的情感趋势分析等)-->展现。
套路二:
数据抓取-->信息抽取-->数据清洗-->信息指纹提取-->数据存入NoSQL DB中(如MongoDB)->做map/reduce-->NLP后续处理-->统计-->展现。

 

4.是语义还是统计学?

    由于我们玩聚网的创建人之一是统计学科班出身,所以我们基本都是从统计角度出发思考特征提取。包括情感趋势分析(Setiment Analysis,简称SA),也都是走统计路,虽然我们也会计算否定句、否定之否定、疑问句等常见句式,但后来我慢慢认为我们做的不是语义应用,只能说是自然语言处理应用或数据挖掘应用。我们常说的所谓“机器智能”,哪怕是“机器学习”,也只是在词频啦、权重啦、TF/IDF啦、重复次数啦、各种影响因子啦等上面做做文章,距离机器理解文章内容还远的很哪远的很。

 

郑昀 北京报道

 

赠图一枚:

team work

 

我的最新推特:

1、

历史杂志上讲周润发同学在从无线艺人培训班毕业后,每天收拾干净利落就守在公司电梯处,见人就问早安,很快有些监制就开始打听这个小伙子是谁了。周润发有天赋又有巧劲,从龙套演员到剧集主演只用了两年。

2、

才知道知乎( http://www.zhihu.com/ )是用 Python 开发的。实时的消息提醒应该是用friendfeed出品的Tornado。但前台到底是用Pylons还是Django开发的呢?

3、

meme是常用描述流行基因的词。在互联网上用它多半是指挖掘流行趋势监测大规模传播。所以较早的techmeme、rssmeme,中期的tweetmeme、srmeme、rtmeme,都属于memeTracker应用。我2006年写文章介绍过:http://is.gd/nuGAdC

posted @ 2011-03-07 00:31  老兵笔记  阅读(2001)  评论(0编辑  收藏  举报