新書推薦:
《
《全面与进步跨太平洋伙伴关系协定》国有企业条款研究
》
售價:HK$
98.6
《
银行业架构网络BIAN(全球数字化时代金融服务业框架)(数字化转型与创新管理丛书)
》
售價:HK$
98.6
《
金托邦:江湖中的沉重正义
》
售價:HK$
60.5
《
易经今解:释疑·解惑·见微
》
售價:HK$
88.5
《
东欧史(全二册)-“中间地带”的困境
》
售價:HK$
221.8
《
虚拟资本:金融怎样挪用我们的未来
》
售價:HK$
77.3
《
刻意练习不生气
》
售價:HK$
39.2
《
大宋理财:青苗法与王安石的金融帝国(全彩插图本)
》
售價:HK$
109.8
內容簡介:
社交网站数据如同深埋地下的“金矿”,如何利用这些数据来发现哪些人正通过社交媒介进行联系?他们正在谈论什么?或者他们在哪儿?
《社交网站的数据挖掘与分析(原书第2版)》第2版对上一版内容进行了全面更新和修订,它将揭示回答这些问题的方法与技巧。你将学到如何获取、分析和汇总散落于社交网站(包括Facebook、Twitter、LinkedIn、Google+、 GitHub、邮件、网站和博客等)的数据,以及如何通过可视化找到你一直在社交世界中寻找的内容和你闻所未闻的有用信息。
■ 借助IPython Notebook、自然语言工具包、NetworkX和其他科学计算工具挖掘主流社交网站
■ 使用高级文本挖掘技术(如聚类和TF-IDF)来提取人类语言数据中有价值的知识
■ 通过发现GitHub上人、编程语言和代码工程间的亲密性,构建兴趣图谱
■ 利用D3.js进行交互式可视化,充分发挥HTML5和JavaScript工具包的灵活特性
■ 以“问题-解决方案-讨论”的方式详细讲解深入挖掘Twitter数据的实用技术,并提供代码示例
《社交网站的数据挖掘与分析(原书第2版)》的配套代码在公开的GitHub代码库中进行维护,可以通过一站式虚拟机来访问,你只需要使用方便易用的IPython Notebook,即可进入愉快的交互式学习情景。
關於作者:
Matthew A. Russell Digital Reasoning Systems公司首席技术官(CTO)、Zaffra公司负责人。作为一名计算机科学家,他热衷于数据挖掘、开源软件开发和创造技术以扩展人类智能。
译者简介
苏统华 博士,硕士生导师,CUDA研究中心以及教学中心负责人。主要研究方向包括:物联网大数据智能信息处理、大规模并行计算、模式识别、智能媒体交互与计算等。作为自然手写中文文本识别的开拓者,四年内代表工作被同行大篇幅他引约300次;他所建立的HIT-MW库为全世界100多家科研院所采用;目前负责国家自然科学基金项目2项。2013年,他领导的研究组在文档分析和识别国际会议(ICDAR’2013)上获得手写汉字识别竞赛的双料冠军;2014年,两项手写文字识别核心技术授权给某高新技术公司,正在为超过200万终端用户提供技术服务。著有英文专著《Chinese Handwriting Recognition: An Algorithmic Perspective》(德国施普林格出版社),出版5本大数据分析方面的译作(机械工业出版社)。
目錄 :
前言 1
第一部分 社交网络导引
序幕 13
第1章 挖掘Twitter:探索热门话题、发现人们的谈论内容等 15
1.1 概述 15
1.2 Twitter风靡一时的原因 16
1.3 探索Twitter API 18
1.4 分析140字的推文 33
1.5 本章小结 47
1.6 推荐练习 48
1.7 在线资源 48
第2章 挖掘Facebook:分析粉丝页面、查看好友关系等 50
2.1 概述 51
2.2 探索Facebook的社交图谱API 51
2.3 分析社交图谱联系 62
2.4 本章小结 85
2.5 推荐练习 86
2.6 在线资源 86
第3章 挖掘LinkedIn:分组职位、聚类同行等 88
3.1 概述 89
3.2 探索LinkedIn API 89
3.3 数据聚类速成 94
3.4 本章小结 124
3.5 推荐练习 125
3.6 在线资源 126
第4章 挖掘Google+:计算文档相似度、提取搭配等 127
4.1 概述 128
4.2 探索Google+ API 128
4.3 TF-IDF简介 138
4.4 用TF-IDF查询人类语言数据 145
4.5 本章小结 164
4.6 推荐练习 165
4.7 在线资源 165
第5章 挖掘网页:使用自然语言处理理解人类语言、总结博客内容等 167
5.1 概述 168
5.2 抓取、解析、爬取网页 168
5.3 通过解码语法来探索语义 174
5.4 以实体为中心的分析:范式转换 192
5.5 人类语言数据处理分析的质量 200
5.6 本章小结 203
5.7 推荐练习 203
5.8 在线资源 204
第6章 挖掘邮箱:分析谁和谁说什么以及说的频率等 206
6.1 概述 207
6.2 获取和处理邮件语料库 207
6.3 分析Enron语料库 225
6.4 探索和可视化时序趋势 241
6.5 分析你自己的邮件数据 244
6.6 本章小结 250
6.7 推荐练习 251
6.8 在线资源 251
第7章 挖掘GitHub:检查软件协同习惯、构建兴趣图谱等 253
7.1 概述 254
7.2 探索GitHub的API 254
7.3 使用属性图为数据建模 260
7.4 分析GitHub兴趣图谱 264
7.5 本章小结 286
7.6 推荐练习 287
7.7 在线资源 287
第8章 挖掘带标记语义网:提取微格式、推断资源描述框架等 289
8.1 概述 290
8.2 微格式:易于实现的元数据 290
8.3 从语义标记过渡到语义网:一个小插曲 304
8.4 语义网:发展中的变革 304
8.5 本章小结 310
8.6 推荐的练习 311
8.7 在线资源 311
第二部分 Twitter实用指南
第9章 Twitter实用指南 317
9.1 访问Twitter的API(开发目的) 318
9.2 使用OAuth访问Twitter的API(产品目的) 319
9.3 探索流行话题 323
9.4 查找推文 324
9.5 构造方便的函数调用 325
9.6 使用文本文件存储JSON数据 326
9.7 使用MongoDB存储和访问JSON数据 327
9.8 使用信息流API对Twitter数据管道抽样 329
9.9 采集时序数据 330
9.10 提取推文实体 332
9.11 特定的推文范围内查找最流行的推文 333
9.12 特定的推文范围内查找最流行的推文实体 335
9.13 对频率分析制表 336
9.14 查找转推了状态的用户 337
9.15 提取转推的属性 339
9.16 创建健壮的Twitter请求 340
9.17 获取用户个人资料信息 343
9.18 从任意的文本中提取推文实体 344
9.19 获得用户所有的好友和关注者 345
9.20 分析用户的好友和关注者 347
9.21 获取用户的推文 348
9.22 爬取好友关系图 350
9.23 分析推文内容 351
9.24 提取链接目标摘要 353
9.25 分析用户收藏的推文 356
9.26 本章小结 357
9.27 推荐练习 358
9.28 在线资源 359
第三部分 附录
附录A 关于本书虚拟机体验的信息 363
附录B OAuth入门 364
附录C Python和IPython Notebook的使用技巧 368
內容試閱 :
第1章
挖掘Twitter:探索热门话题、发现人们的谈论内容等
本章,我们将从Twitter开始揭开挖掘社交网络的序幕。Twitter是社交数据的丰富来源,它对公共消费固有的开放性、简洁且文档完备的API、丰富的开发者工具以及对各行各业用户广泛的吸引力,使它成为进行社交网络挖掘的理想起跑线。Twitter的数据是非常有趣的,因为推文(tweet)可以以最快的速度把想法发布出去,它们几乎是实时的,并且它的多样性代表了国际范围内最广泛的社会阶层。通过简短的对话(通常是有意义的)、将人与其关注事物相连的兴趣图谱(interest graph)以及推文和Twitter的“关注”(following)机制将人们以不同的方式联系到一起。
由于这是本书的第1章,我们将会花些时间让你逐步适应社交网络挖掘的旅程。不过,考虑到Twitter数据很容易得到并且接受公众的审查,第9章以问答的形式提供了一系列既短小精悍又具有普遍性的代码配方,从而进一步阐述了大量数据挖掘的可能性。你也可以将随后章节中的概念应用到Twitter数据中。
注意: 一定要从http:bit.lyMiningTheSocialWeb2E在线获得本章(和其他每一章)最新的错误修正版本的源代码。此外,请务必利用好本书附录A中描述的虚拟机体验,从而最大化地享用示例代码。
1.1 概述
在这一章,我们将会开始配置最基本的(但是却非常高效的)Python开发环境、研究Twitter API,并使用频率分析从推文中提取一些分析性结论。这一章里你将了解的主题包括:
Twitter开发者平台以及如何发起API请求。
推文元数据以及如何使用它。
从推文中提取实体,例如:提及的用户、主题标签和URL。
使用Python进行频率分析的相关技术。
使用IPython Notebook绘制Twitter数据的直方图。
1.2 Twitter风靡一时的原因
大多数的章节并不会从发人深省的讨论开始,但是由于这是全书的第1章并要引入一个往往会被人误解的社交网站,因此从根本的层面审视Twitter似乎更为合适。
你会如何定义Twitter呢?
有很多种方式可以回答这个问题,但我们从宏观的角度来考虑,任何技术只有对我们共有的人性的某些根本方面负责,才能是真正有用并成功的。毕竟,技术是为了提升我们人类的体验。
作为人类,我们希望技术能够帮助我们获得的有哪些呢?
我们希望被听到。
我们希望满足自己的好奇心。
我们希望事情变得容易。
我们现在就想得到。
在当前讨论的语境下只有部分观察现象属于通常意义的人性。我们对分享自己的想法和体验有一种根深蒂固的需求,这使我们能够与别人交流、能够被倾听、能够感受到自己的价值和重要性。我们对周围的世界以及如何组织、操纵它充满了好奇,并且通过交流分享自己的看法、提出问题、在困惑中与别人进行有意义的交谈。
最后两点凸显了我们固有的对摩擦的无法容忍。理想情况下,为了满足我们的好奇心或完成某项特定的工作,除了必要的工作外,我们不希望更加辛苦。我们更想做其他事情或者转移到下一件事情,因为我们的时间如此珍贵却又如此短暂。与此类似,我们或许现在就想做某些事情,并且往往会对事情没有按照我们计划的速度执行而感到不耐烦。
一种定义方式是把Twitter描述成微博服务,该服务允许人们使用简短的、符合人们思维的140个字符的消息进行交流。在这方面,你可以把Twitter想象成类似于一个免费、高速、全球性的文本消息服务。换句话说,它是允许快速、简易交流的基础设施的重要部分。然而,这并不是全部。当有超过5亿好奇的用户,而其中超过1亿人每个月定期活跃时(http:bit.ly1a1kNXR),显现出来的并不能充分满足我们固有的好奇心和价值取向。
除了宏观层面上营销和广告的可能性(面对这么大的用户基数,商机是无限的),潜在的网络动态性产生了对如此多用户的引力,这才是真正有趣的,也正是Twitter的魅力所在。尽管使用户以极快的速度共享简短消息的交流渠道是Twitter平台用户增长和持续参与的必要条件,但它并不是充分条件。使其成为充分条件的其他因素是:Twitter非对称的关注模型满足了我们的好奇心。正是这种非对称的关注模型将Twitter描述成一种兴趣图谱而不是社交网络,并且API提供了足够的框架使结构或自组织行为从混乱中显现出来。
换句话说,尽管一些社交网站,比如Facebook、LinkedIn,需要关系双方的互相接受(通常表明现实世界的某种关系),然而Twitter的关系模型可以让你关注其他任何用户的最新进展,即使这些用户可能没有选择关注你甚至不知道你的存在。Twitter的关注模型非常简单但是却利用了我们之所以成为人类的基本特性:我们的好奇心。这可能是对名人绯闻的痴迷、对获取自己最喜欢体育团体最新信息的急切、对某个政治话题的浓厚兴趣或者是对与其他人接触的渴望。Twitter提供了无限的机会以满足你的好奇心。
警告: 尽管在前一段我已经从“关注”关系的角度介绍了Twitter,关注某个人的行为有时被描述成“加好友”(friending)(尽管这是一种奇怪的单向好友关系)。虽然你将会在官方的Twitter API文档的命名系统中看到“好友”(http:bit.ly1a1kOuI),然而我们最好认为Twitter是之前描述的关注关系。
我们可以将兴趣图谱想象成对人们与他们的兴趣之间的关系进行建模的一种方式。兴趣图谱在数据挖掘领域提供了大量可能性,这些主要涉及测量事物之间的相关性从而进行智能推荐,或涉及机器学习中的其他应用。例如,你可以使用兴趣图谱测量相关性,从向你推荐Twitter上关注对象到在线推荐购买什么商品再到推荐应该与谁约会。为了更好地理解Twitter的兴趣图谱这个概念,假设Twitter用户不一定是一个真实的人。它可以是一个人,也可以是一个没有生命的物体、一个公司、一个音乐团队、一个虚构的角色、虚拟的某个人(现存的或死去的)或其他任何事物。
例如,@HomerJSimpson(http:bit.ly1a1kQD1)这个账号是Homer Simpson的官方账号,他是电视节目The Simpsons中的流行角色。尽管Homer Simpson不是一个真实的人,但他却是一个世界知名的人物,@HomerJSimpson的Twitter用户充当者帮助他(实际上是其创作者)吸引粉丝。类似的,尽管这本书可能无法达到Homer Simpson的知名度,但是@SocialWebMining(http:bit.ly1a1kHzq)是本书的官方Twitter账号并且为对该书内容感兴趣的团体提供了以多种方式进行联系和参与的手段。当你认识到Twitter允许你创建、联系和探索任何一个感兴趣话题的兴趣团体时,Twitter的力量以及你从挖掘Twitter数据中获得的见解也就变得更加明显。
除了Twitter账号中的一些可以将名人和公众人物识别成“认证账号”的徽章以及Twitter的服务条款协议(http:bit.ly1a1kRXl)中的基本约束之外(这是使用服务必需的),Twitter账号的内容很少受到控制。这看起来微不足道,但是这是和一些社交网站的重要的不同,在那些社交网站中,账号要么必须对应真实的、活生生的人,要么对应商业公司或分类系统中类似性质的实体。Twitter对账号的人物并没有特定的约束,并且依赖自组织的行为,例如关注关系和使用由主题标签构成的大众分类法在系统中创建一个特定形式的秩序。
分类法和大众分类法
人类智能的体现之一是渴望对事物进行分类并且获得一个层次结构,其中每个元素“属于”或者是层次结构中上一级父元素的“孩子”。忽略分类学和本体论的一些细微区别(http:bit.ly1a1kRXy),将分类学看成一个类似树的层次结构并将元素分类成特定的父、子关系,而大众分类法(folksonomy)(http:bit.ly1a1kU5C)(该术语大约是2004年创建的)描述了出现在Web不同生态系统中的协同标签和社交索引尝试的领域。它将大众(folk)和分类法(taxonomy)这两个词结合了起来。因此从本质上讲,大众分类法只是一种描述去中心化标签领域的绝好方式,当你允许人们使用标签分类内容时,它可以涌现为集体智慧。Twitter中的主题标签的使用如此引人关注是因为大众分类法是有机地聚集共同兴趣的方式,既为探索提供了专业手段,也为发现无数奇妙事物留下无限可能性。