面向程序员的数据挖掘指南 : 第一章 介绍

开发 前端
想象一下150年前的美国小镇生活。人们之间互相非常了解和熟悉,当一箱布料被送到某个商店,商店的店员注意到这种特别的布匹图案会是Mrs. Clancey的最爱,因为他知道Mrs. Clancey喜欢明亮的花卉图案,因此他将记住下次当她来逛商店的时候把这种布料推荐给她。
  1. Finding stuff
  2. The format of the book
  3. What will you be able to do when you finish this book?
  4. Why does data mining matter? — What is in it for me?
  5. What’s with the Ancient Art of the Numerati in the title?

想象一下150年前的美国小镇生活。人们之间互相非常了解和熟悉,当一箱布料被送到某个商店,商店的店员注意到这种特别的布匹图案会是Mrs. Clancey的最爱,因为他知道Mrs. Clancey喜欢明亮的花卉图案,因此他将记住下次当她来逛商店的时候把这种布料推荐给她。Chow Winkler跟酒吧老板Mr. Wilson聊到他打算卖掉他的备用雷明顿步枪,而Mr. Wilson知道Bud Barclay正在寻找一部优质步枪,因此他打算在下次Bud Barclay到来酒吧的时候告诉他这个消息。警长和他的副手们知道他们需要留意那个身强体壮、脾气暴躁、嗜酒如命的Lee Pye。100多年前的小镇生活充满了各种各样的联系。

150年前的小镇

大家知道你喜欢什么不喜欢什么,知道你的健康、你的婚姻状况。无论好与坏,这些都是个性化的体验。这种高度个性化的社区生活在世界上大多数国家是真实存在的。

让我们转到二十世纪六十年代。个性化的互动变得貌似不太可能,但是他们仍然存在。当某位常客来到当地一家书店可能会听到店员跟他打招呼 说:“James Michener的新书到了”,因为店员知道他喜欢James Michener的书,同时店员可能会给他推荐Barry Goldwater的《保守派的良知》,因为店员知道他是一个坚定的保守主义者。一家饭店的常客走进饭店时,总能听到服务员问他:“还是老样子?”。

即便是在遍布个性化的当今社会。当我去Mesilla当地的一家咖啡店,咖啡师会问: “超大杯拿铁外带?”,因为他已经记住了我每天的购买习惯。我把我的贵妇犬带到美容师那儿,她都不需要再问我喜欢做什么类型的修剪,因为她知道我喜欢没有 多余装饰运动型,并且喜欢德国风格的耳朵。

然而从100年前的小镇开始,一切都在发生转变。大型的杂货商店和超市取代了邻里的小卖部等传统的商业。在转变之初,可供的选择是非常有限的。 Henry Ford曾经说过:“任何顾客都可以选择任何他所中意的汽车颜色,只要它是黑色的。”。 CD店只销售种类有限的CD;书店只销售种类有限的书本。如果你想吃冰淇淋,口味只有是香草味、巧克力味、或者草莓味。在1950年,想买一台洗衣机?当 地的Sears百货只有两款供选择: $55的标准版和$95的豪华版。

欢迎来到21世纪

在21世纪的今天,那些有限的选择已然成为历史。如今,想买音乐?iTunes有1100万首歌可供选择。1100万!截止到2011年10月,销售量达到160亿之多。如果我还需要更多的选择,Spotify上有超过1500万的歌曲。

如果我想买本书,Amazon上有超过200万的书籍可供选择。

enter image description here

如果我想看视频,这里有很多选择:

enter image description here

如果想买笔记本电脑?在Amazon上搜索"笔记本电脑", 你会得到3811个结果;当搜索"电饭锅",你会得到超过1000的搜索结果。

enter image description here

在不久的将来,你的选择会越来越多:上百亿的在线歌曲,各种各样的视频,已经通过3D打印技术得到的个性化商品。

#p#

发现与自己相关的东西

以上所有的问题在于寻找相关的东西。iTunes上所有的1100万首歌曲中,可能有相当数量的歌曲是我真正喜欢的,但我怎么把它们找出来。今晚我 想在Netflix上看一部电影,我应该看哪一部。我想通过P2P下载一部电影,可是我应该下载哪一部。问题还会变得更糟糕,因为每分钟都有TB级别的内 容(歌曲、视频等)被上传到网上。每分钟都有100个新的文件在新闻组上发布。每分钟都有时长24小时的视频上传到YouTube。每小时有180本新书 出版。在现实世界里,每天有越来越多的东西可以选择购买。这使得在这些海量的可供选择的东西中找出相关联的东西变得越来越困难。

如果你是一个媒体制造商——比如说Malaysia的Zee Avi(马拉西亚的爵士才女),危险不在于有人非法下载你的音乐,而是你的音乐因为信息过载变得无人问津。

enter image description here

如何找到与自己相关的东西?

在很多年前的那个小镇上,我们的朋友会帮我们找到相关的东西:如那批新进的布料很对我的胃口;书店刚到的小说、唱片店新到的33 1/3 LP很适合我的偏好。直到今天,我们依然依靠朋友的帮助来找到与我相关的东西。

同时,专家会帮助我们找到与我们相关的东西。在过去,"消费者报告"能评估所有在售的那20款洗衣机,以及10 款电饭锅,并作出推荐。如今亚马逊提供了上几百种电饭锅,单个专家几乎不可能对所有的这些电饭锅进行评价。在过去,Roger Ebert(美国影评人、剧本作家,普利策奖获得者)会评论几乎所有的电影。而现如今全世界每年将出产大约25,000部电影。加上我们现在从各种渠道获 得的视频资源。Roger Ebert,或者任何一个专家,是不可能对我们所能看的所有的电影加以评论。

我们也可以用东西本身来帮助我们寻找相关的东西。例如,30年以来,我一直在使用一台Sears洗衣机,我可能会打算再买一台新款的Sears洗衣机。我喜欢披头士乐队的某张专辑——如果机会合适的话我还会再买一张他的专辑。

这些寻找相关东西的方法——朋友,专家,东西本身——在今天仍然适用,但是我们需要借助一些计算的方法来将这些方法迁移到拥有数以十亿计的物品的二 十一世纪。在这本书里,我们将探索聚集用户偏好、购买历史以及其他数据的模型和方法,利用社交网络(好友)的力量来帮助我们挖掘相关联的东西。同时我们还 将运用事物本身的属性。例如,我喜欢Phoenix乐队,推荐系统可能知道Phoenix乐队的属性——使用电子摇滚乐器、有朋克影响力、巧妙的运用和 声,系统因此会给我推荐具有类似属性的乐队,例如:The Strokes乐队。

enter image description here

不仅仅只是东西

数据挖掘不仅仅是推荐东西给我们,或者帮助商人出售更多商品。请参考下面这些例子:

100多年前的那个小镇镇长熟知镇上每一个人,当他再次参加竞选的时候,他知道如何根据每个人的具体情况去说服他们为自己投票:

——Martha,我知道你喜欢上学,我会尽我的一切力量去为我们镇再找一个老师。

——John,你的面包店最近怎么样?我承诺你所在的城区将获得更多的停车位

enter image description here

我的父亲属于United Auto Workers' Union。在竞选期间,我记得工会代表来到我们的家里提醒我父亲把票投给某个候选人:

——你好,Syl,你的妻子和孩子还好吧?... 现在我来告诉你为什么应该把票投给社会主义党的市长候选人Frank Zeidler...

随着电视的崛起,这种个性化的政治信息转变成了类似的广告,但每个人得到了几乎相同的信息。有一个很好的例子是著名的支持Lyndon Johnson的菊花电视广告(一个年轻的小女孩正在掰着菊花花瓣,背景是一颗原子弹爆炸)。如今,竞选被小的利益和日益增长的数据挖掘决定,个性化已经 回归。你对妇女权利很感兴趣吗?你很有可能收到关于这个话题的机器人电话。

那个小镇的警长对镇上的捣蛋者非常清楚。如今,威胁被隐藏起来了,恐怖分子可能出现在任何地方。2001年10月11日,美国政府通过了USA Patriot Act(Uniting and Strengthening America by Providing Appropriate Tools Required to Intercept and Obstruct Terrorism的简称)。该法案使得调查者能够获得各种来源的记录,包括图书馆(我们读了什么书?)、酒店(谁待在哪儿?待了多长时间?)、信用卡公 司、公路费用登记记录着我们曾经经过哪些地方。在很大程度上,政府利用私有公司来保存那些与我们有关的数据。像Seisint公司就有几乎我们所有人的数 据:我们的照片、我们的住址、我们的车,我们的收入,我们的消费行为,我们的朋友。Seisint采用超级计算机来进行数据挖掘,用以对人们进行预测。因 此他们的产品叫做... The Matrix

enter image description here

#p#

数据挖掘扩展我们的能力

Stephen Baker在他的新书The Numerati是这样开头的:

想象一下你坐在正在某个咖啡厅,或许还有点吵。在你右边的桌子,一位年轻的女士正在笔记本电脑上敲打着。你转过头看了下她的屏幕。她正在上网, 你就这么看着。 几个小时过去了,她正在看一篇在线文章。你注意到她看了三篇关于中国的文章。她寻找了周五晚上准备看的电影,并且看了功夫熊猫的预告片。她点击了一个广 告,广告上承诺可以联系到她的高中同学。你坐在那儿记着笔记。随着每一分钟过去,你都进一步地了解这位女士。现在想象你可以同时关注1.5亿人上网。

数据挖掘(Data Mining)关注于寻找数据中的模式。在小规模数据上,我们是构建心理模型并发现模式的专家。例如,我想和我妻子今晚一起看一部电影,我对她的喜好有一 个心理模型,我知道她不喜欢暴力影片(因为她不喜欢那一季的《第九街区》);她喜欢Charlie Kaufman的电影。我可以使用这个电影偏好相关的心理模型来预测她可能喜欢或者不喜欢的电影。

enter image description here

一个从欧洲远道而来的朋友来访。我知道她是一个素食主义者,利用这一信息,我可以预测她不会喜欢当地的排骨。人们很擅长构建模型和作出预测。数据挖 掘扩大了这个能力并且使我们能够处理大量的信息——比如上面书中引用的1.5亿人。数据挖掘技术使得Pandora可以根据个人的音乐偏好来构建个性化的 音乐电台,也使得Netflix能为你提供个性化的电影推荐。

TB级的数据挖掘不是那些来自星级争霸II的东西

20世纪末,100万字的数据集被认为是很大。20世纪90年代,当我还是个研究生的时候(是的,我很老。),我作为一个程序员在《Greek New Testament》研究了一年,它仅仅只有20w个词,但是数据分析时发现,这数据还是太大以至于不能直接载入内存,因此不得不将结果拆解到可以在后台 处理的磁带上。

如今,对TB级的信息量进行数据挖掘已经非常常见了。谷歌就有超过5PB(5000TB)的网页数据。2006年,谷歌在研究社区发布了一个基于亿 万字数的数据集。国家安全局(NSA)有亿万个通话记录。Acxiom是一家收集美国2亿成年人信息(信用卡消费、通话记录、医疗记录、汽车注册等)的公 司,他收集了超过1PB的数据。

enter image description here

Robert O'Harrow, Jr. ——《No Place to Hide》的作者,他试图帮助我们理解多少信息是1PB,他说1PB就相当于堆放了50000英里的King James Bible。我经常开车从New Mexico到Virginia,那是2000英里。当我试着想象一路上堆满的圣经,看起来像一个无法想象的数据。

enter image description here

国会的图书馆有大约20TB的文本。你可以将整个国会图书馆的文本存放在一个几千美元就可以买到的硬盘上!作为对比,Walmart有超过570TB的数据,所有的这些数据并非仅仅存在哪里——它被不停地挖掘,构建新的关联关系,挖掘新的模式。这就是TB级的数据挖掘。

在这边书中,我们将处理一些小的数据集,这是一件很幸福的事。我们不想让我们的算法跑上一个星期以后,却发现我们的算法出现逻辑错误。我们用到的最大的数据集在100MB以下,最小的也就几十行数据。

 

原文链接:http://www.ituring.com.cn/article/56258

责任编辑:陈四芳 来源: 图灵社区
相关推荐

2013-10-15 15:17:47

程序员数据挖掘

2014-01-13 11:22:28

storm

2015-12-30 09:25:47

编程故事printf

2011-07-19 17:25:14

jQuery MobiAndroid

2012-02-09 10:39:37

AndroidWeb App官方文档

2023-08-03 13:56:53

配置文件容器

2023-05-24 16:13:31

ChatGPT神经网络

2011-07-20 10:27:18

jQuery Mobi手机新闻浏览器

2018-04-23 11:00:06

程序员养生健康

2020-08-06 13:05:10

程序员网页数据

2014-08-01 10:18:16

.Netdump

2013-07-04 13:50:14

2015-07-28 17:58:22

程序员指南

2009-06-22 09:06:57

程序员技术升级

2010-12-07 10:40:27

软考系统架构设计师

2022-02-16 18:21:33

程序员跳槽架构

2012-02-01 09:30:54

HTML 5

2011-08-12 11:32:32

2011-08-12 11:32:32

2018-05-28 21:38:10

程序员住房女程序员
点赞
收藏

51CTO技术栈公众号