《基于社交网络的数据挖掘》一书的随手札记

本文涉及的产品
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
简介: 版权声明:本文为半吊子子全栈工匠(wireless_com,同公众号)原创文章,未经允许不得转载。
版权声明:本文为半吊子子全栈工匠(wireless_com,同公众号)原创文章,未经允许不得转载。 https://blog.csdn.net/wireless_com/article/details/8246357

社交网络由时尚变为主流,有人建议用巨型全球图(Giant Global Graph,GGG)来代替万维网(www),进一步地说,语义网(www.foaf-project.org)是未来网络的趋势。

 

自然语言工具包(NLTK)提供了大量用于文本分析的工具,包括常见度量的计算、信息提取和NLP。回答“人们正在讨论什么的问题”的最简单的方法是进行基本词频分析。Grahviz是可视化社区的主要工具,DOT语言是Graphviz使用的一种基于文本的简单格式。Canviz(http://code.google.com/p/canviz)可以在web浏览器<canvas>元素上绘制Grahviz图。

 

微格式(http://www.microformats.org)提供了一种有效的机制,可以将“更智能的数据”嵌入到网页中,并易于内容创作者实现。微格式只是简单地约定,以一种完全增值的方式明确地将结构化数据包含在网页中,典型的微格式有XFN(http://gmpg.orf/xfn),geo(http://microformats.org/wiki/geo),hRecipe(http://microformats.org/wiki/hrecipe)和hReview(http://microformats.org/wiki/hreview).其中geo尤其值得关注,KML(http://code.google.com/apis/kml/documentation)输出可能是最简单的可视化geo数据的方法。

 

BeautifulSoup 包可以实现简单的web抓取,检查抓取算法的两个标准是性能和质量。SocialGraph Node Mapper(http://code.google.com/google-sgnodemapper)开源项目标准化了一些url,www的存在。

 

可以将抓取的数据导入CouchDB(http://couchdb.aphache.org),它是一个面向文档的数据库,提供了map/reduce功能,可用于在数据上建立索引,同时提供了一个完全基于REST的接口(http://en.wikipedia.org/wiki/Resentational_State_Transfer),允许其他人分析并复制你的数据库,能够集成到任何Web的架构中,方便使用其复制功能。CouchOne提供了二进制下载,cloudant提供了在线托管。

 

Lucene(http://lucene.apache.org/java/docs/index.html)是一个基于Java的高性能全文索引搜索引擎库,将关键字搜索功能合并到应用程序中。CouchDb-lucene(http://github.com/rnewon/couchdb-lucence)项目是围绕Lucene最核心的功能的web服务封装,能够索引couchdb文档。

 

SIMILE Timeline(http://simile-widgets.org/wiki/Timeline)是一种易于使用的强大工具,可以可视化以事件为中心的数据,尤其适用于研究邮件数据。Getmail,poplib和imaplib都是很好的面向邮件的python包,Graph Your Inbox Chrome扩展(http://graphyourinbox.com)可以通过授权访问邮件数据。

 

OAuth 2.0(http://tools.ietf.org/html/draft-ietf-oauth-v2-10)是一种新兴的授权方案,能促进更好的用户体验(http://hueniverse.com/2010/05/introducing-oauth-2-0),对客户端应用程序授权来访问受保护的资源而不是用户名密码。

 

Redis(http://code.google.com/p/redis) 是一个数据结构服务器,快速易装,用于强大文档的python客户端。“Redis: under thehood”(http://pauladamsmith.com/articles/redis_under_the_hood.html)是一篇不错的文章。Redis提供了处理常见集合的本地操作。

 

Infochimps(http://infochimps.org)是一个提供大型数据目录的组织,提供twitter度量和分析的强链接api。Ubigraph(http://ubigraphlab.net/ubigraph)是3D交互式图的一个可视化工具,绑定了python。

 

人类智力的一个基本层面是将事情分类并推导出分层结构,分类法本质上是将元素分类为父/子关系的分层结构。公众分类法用于作为描述协作标签领域和出现在各种web生态系统中的社交索引成就的手段,本质上是一种描述作为集体智慧机制出现的标签分散领域的新奇方法。寻找共性的方法参见http://radar.oreilly.com/2010/07/data-science-democratized.

 

标签云是对社交数据中提取的实体的可视化最显然的选择。开源旋转标签云WP-Culumns(http://code.google.com/p/world-culumns-goog-vis/wiki/Userguide)是一个很好的选择。KevinHoffman的论文:“In Search of the Perfect Tag Cloud”(http://files.blog-city.com/files/J05/88284/b/insearchofperfecttagcloud)提供了构建标签云各种设计策略的良好概述。

 

Linkedin坚信个人的职业网络数据是私有的,访问http://developer.linked.com可以获得授权证书,可以使用LinkedinAPI来挖掘可用数据的整体丰富性,但同样提供了速率流限制。

 

智能聚类可以带来令人瞩目的用户体验,聚类常见的相似性度量的常见指标:

1)  编辑距离 http://en.wikipedia.org/wiki/Vladimir_Levenshtein

2)  N元语法相似度:计算两个字符串标记中所有的可能n元语法,统计其共有语法来计算相似度

3)  雅克比距离:表示两个集合的相似度,是两个集合中的不同项除以两个集合之间的共同项得到的结果

4)  MASI距离:http://www.cs.columbia.edu/~becky/pubs/lrec06masi.pdf

聚类的贪心算法主要是基于MASI的度量,分层聚类可以计算所有项之间距离的全矩阵,然后遍历满足最小距离阈值的矩阵群集项,k均值聚类是预先分配n个点的多维空间,然后划分的k个聚类中。

 

根据地理信息的聚类一般可用k均值聚类方法,google earth 提供了地理编码器。(http://code.google.com/p/geopy/wiki/GettingStarted)Protovis中的DorlingCartogram实质上是地理聚类的泡泡图。开源项目geodict是研究geo数据的好尝试(http://petewarden.typepad.com/searchbrowser/2010/10/geodict-an-open-source-tool-for-extracting-locations-from-text.html).

 

Google Buzz 介于twitter和博客之间,提供了REST风格的API(http://code.google.com/apis/buzz/vl/using-rest.html). 自然语言经验定律“齐普夫定律”断言:语料库中的词频与它在词频表中的排序成反比。(en.wikipedia.org/wiki/zipf’s_law)Brown 语料库(http://en.wikipedia.org/wiki/Brown_Corpus)是一个合理的起点。

 

TF-IDF (termFrequency-Inverse Document Frequency)表示词语的逆向文档频率,可通过计算文档中词语相对重要性的归一化得分来查询语料库,表示为词频与逆向文档频率的乘积:tf-idf=tf*idf,tf表示一个词语在某个具体文档中的重要性,idf表示一个词语在整个语料库中的重要性。

 

TF-IDF模型将文档模型化为单词的无序集,模型化文档的另一种方法是向量空间模型:在多维空间中的每个文档都包含一个向量,两个向量之间的距离表示对应文档的相似性。要计算两个文档之间的相似性,只需要生成每个文档的一个词向量,计算这些文档的单位向量的点积,所以用余弦相似性很容易比较文档。

 

访问Gmail邮箱的Xoauth工具(http://code.google.com/p/google-mail-xoauth-tools/wiki/XoauthDotPyRunThrough),使用xoauth.py工具可以生成匿名用户的OAuth令牌和密钥。Dumbo是允许在python中编写和运行Hadoop程序的项目。Scrapy(http://scrapy.org)是一种易用和成熟的网络抓取和爬行框架。

 

使用NLTK的典型NLP管线:

1)  句末检测(End ofSentence,EOS)

2)  分词

3)  词性标记(Part ofSpeech, POS)

4)  分块

5)  提取

使用正则表达式可以解析句子,详见“Unsupervised Multilingual Sentence Boundary Detection”(http://www.linguistics.ruhr-uni-bochum.de/~strunk/ks2005FINAL.pdf).Luhn摘要算法的前提:文档中的重点句是包含经常出现的单词的句子。Luhn并没有从更深的语义层次上理解数据。以句子中实体为中心的分析方法,可以参考宾州树库标签http://bulba.sdsu.edu/jeanette/thesis/PennTags.html) NLTK中的wordstemming可以分析语义三元组,WordNet(http://wordnet.princeton.edu)可以找出三元组中项的额外含义。

 

Facebook应用程序需要托管在自己的服务器环境中,开发流程http://facebook.com/developers.Facebook的开放图谱协议(http://opengraphprotocol.org)交互式可视化可以使用JavaScriptInfoVis ToolKit(Http://thejit.org). Sunburst 可将树这类层次结构的一种空间填充可视化。

 

Web3.0 似乎就是语义网,Fuxi是语义网中强大的逻辑推理系统,它使用一个叫做正向链接(http://en.wikipedia.org/wiki/Forward_chaining)的技术从现有信息中推断出新信息。

 

不要因为期望你没有的就破坏你拥有的;但要记住,你现在拥有的曾经是你期望的东西。

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore &nbsp; &nbsp; ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库&nbsp;ECS 实例和一台目标数据库&nbsp;RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&amp;RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
目录
相关文章
|
2天前
|
数据建模
R语言网络分析友谊悖论案例
R语言网络分析友谊悖论案例
R语言网络分析友谊悖论案例
|
6月前
|
机器学习/深度学习 人工智能 自然语言处理
我失业了?| ChatGPT生信分析初体验
我失业了?| ChatGPT生信分析初体验
75 0
|
9月前
|
搜索推荐
推荐系统读书笔记&关键核心点纪要
推荐系统读书笔记&关键核心点纪要
39 0
|
前端开发 安全 数据挖掘
这是一篇讲解用户行为分析的推荐书单和总结
推荐有关用户行为的书单,对其中一本进行总结:能对用户行为数据发挥价值的过程建立系统的认知,主要是给出了指标体系的建设,针对搜索这个场景举了一个例子。让读者能够快速实践。
302 0
|
数据采集 运维 算法
【数据挖掘导论】书籍小册(一)绪论
【数据挖掘导论】书籍小册(一)绪论
107 0
【数据挖掘导论】书籍小册(一)绪论
|
机器学习/深度学习 算法 数据安全/隐私保护
精心整理 | 林轩田机器学习资源汇总
精心整理 | 林轩田机器学习资源汇总
146 0
精心整理 | 林轩田机器学习资源汇总
|
机器学习/深度学习 算法 数据挖掘
干货 | 林轩田机器学习「基石+技法」历史文章汇总
干货 | 林轩田机器学习「基石+技法」历史文章汇总
137 0
|
数据采集 数据挖掘 Linux
躁动不安的年代,你需要读几本好书(python爬虫及数据分析)
当今社会,速度已经深入人心了,“快”成了大家默认的办事境界,看机器上一件件飞一般传递着的产品,听办公室一族打电话时那种无人能及的语速......休闲的概念已日渐模糊,大家似乎都变成了在“快咒”控制下的小人儿,似乎连腾出点时间来松口气的时间都没有了,看得见的、看不见的规则约束着我们;有形的、无形的的鞭子驱赶着我们,我们马不停蹄追求事业、爱情、地位、财富,似乎自己慢一拍,就会被这个世界抛弃 工作仅仅是生活的一部分,千万不要忽略了其他乐趣,人生本是一幅美丽的风景画,不必对所有的事情都抱有强烈的目的性,人的一生总有做不完的事情,只要我们有一个平和之心,就不会错过沿途风景。
841 0
|
机器学习/深度学习 算法 数据挖掘
数据科学入门三个月的一些随想
回顾了入门Data Science以来的一些所思所想。
2002 0