互联网数据挖掘基本概念

上传人:油*** 文档编号:168038141 上传时间:2022-11-07 格式:DOCX 页数:9 大小:34.99KB
收藏 版权申诉 举报 下载
互联网数据挖掘基本概念_第1页
第1页 / 共9页
互联网数据挖掘基本概念_第2页
第2页 / 共9页
互联网数据挖掘基本概念_第3页
第3页 / 共9页
资源描述:

《互联网数据挖掘基本概念》由会员分享,可在线阅读,更多相关《互联网数据挖掘基本概念(9页珍藏版)》请在装配图网上搜索。

1、【最新资料,Word版,可自由编辑!】数据挖掘基本概念本章为全书的导论部分,首先阐述数据挖掘的本质,并讨论其在多个相关学科中的不同理解。接着 介绍邦弗朗尼原理(Bonferronisprinciple),该原理实际上对数据挖掘的过度使用提出了警告。本章还 概述了一些非常有用的思想,它们未必都属于数据挖掘的范畴,但是却有利于理解数据挖掘中的某些重 要概念。这些思想包括度量词语重要性的TF.IDF权重、哈希函数及索引结构的性质、包含自然对数底e 的恒等式等。最后,简要介绍了后续章节所要涉及的主题。1.1 数据挖掘的定义最广为接受的定义是,数据挖掘(datamining)是数据“模型”的发现过程。而

2、“模型”却可以有 多种含义。下面介绍在建模方面最重要的几个方向。1.1.1 统计建模最早使用datamining”术语的人是统计学家。术语“datamining”或者“datadredging”最初是贬 义词,意指试图抽取出数据本身不支持的信息的过程。 1.2节给出了这种挖掘情况下可能犯的几类错 误。当然,现在术语datamining ”的意义已经是正面的了。目前,统计学家认为数据挖掘就是统计模 型(statisticalmodel)的构建过程,而这个统计模型指的就是可见数据所遵从的总体分布。例 1.1 假定现有的数据是一系列数字。这种数据相对于常用的挖掘数据而言显得过于简单,但这 只是为了说

3、明问题而采用的例子。统计学家可能会判定这些数字来自一个高斯分布(即正态分布),并 利用公式来计算该分布最有可能的参数值。该高斯分布的均值和标准差能够完整地刻画整个分布,因而 成为上述数据的一个模型。1.1.2 机器学习有些人将数据挖掘看成是机器学习的同义词。毫无疑问,一些数据挖掘方法中适当使用了机器学习 算法。机器学习的实践者将数据当成训练集来训练某类算法,比如贝叶斯网络、支持向量机、决策树、 隐马尔可夫模型等。某些场景下上述的数据利用方式是合理的。机器学习擅长的典型场景是人们对数据中的寻找目标几 乎一无所知。比如,我们并不清楚到底是影片的什么因素导致某些观众喜欢或者厌恶该影片。因此,在 Ne

4、tflix竞赛要求设计一个算法来预测观众对影片的评分时,基于已有评分样本的机器学习算法获得了巨 大成功。在 9.4 节中,我们将讨论此类算法的一个简单形式。另一方面,当挖掘的目标能够更直接地描述时,机器学习方法并不成功。一个有趣的例子是, WhizBang!实验室1曾试图使用机器学习方法在Web上定位人们的简历。但是不管使用什么机器学习 算法,最后的效果都比不过人工设计的直接通过典型关键词和短语来查找简历的算法。由于看过或 者写过简历的人都对简历包含哪些内容非常清楚, Web 页面是否包含简历毫无秘密可言。因此,使 用机器学习方法相对于直接设计的简历发现算法而言并无任何优势。1.1.3 建模的

5、计算方法1 该初创实验室试图使用机器学习方法来进行大规模数据挖掘,并且雇用了大批机器学习高手来实 现这一点。遗憾的是,该实验室并没有能够生存下来。近年来,计算机科学家已将数据挖掘看成一个算法问题。这种情况下,数据模型仅仅就是复杂查询 的答案。例如,给定例1.1 中的一系列数字,我们可以计算它们的均值和标准差。需要注意的是,这样 计算出的参数可能并不是这组数据的最佳高斯分布拟合参数,尽管在数据集规模很大时两者非常接近。数据建模有很多不同的方法。前面我们已经提到,数据可以通过其生成所可能遵从的统计过程构建 来建模。而其他的大部分数据建模方法可以描述为下列两种做法之一:(1) 对数据进行简洁的近似汇

6、总描述;(2) 从数据中抽取出最突出的特征来代替数据并将剩余内容忽略。 在接下来的内容中,我们将探究上述两种做法。1.1.4 数据汇总一种最有趣的数据汇总形式是PageRank,它也是使谷歌成功的关键算法之一,我们将在第5章对它 进行详细介绍。在这种形式的Web挖掘当中,Web的整个复杂结构可由每个页面所对应的一个数字归 纳而成。这种数字就是网页的PageRank值,即一个Web结构上的随机游走者在任意给定时刻处于该页 的概率(这是极其简化的一种说法)。PageRank的一个非常好的特性就是它能够很好地反映网页的重要 性,即典型用户在搜索时期望返回某个页面的程度。另一种重要的数据汇总形式是聚类

7、,第7章将予以介绍。在聚类中,数据被看成是多维空间下的点, 空间中相互邻近的点将被赋予相同的类别。这些类别本身也会被概括表示,比如通过类别质心及类别中 的点到质心的平均距离来描述。这些类别的概括信息综合在一起形成了全体数据集合的数据汇总结果。例 1.2 一个利用聚类来解决问题的着名实例发生在很久以前的伦敦,在整个问题的解决中并没有 使用计算机2。内科医生JohnSnow在处理霍乱爆发时在城市地图上标出了病例的发生地点。图1-1给出 了该图的一个小片段,展示了病例的传播情况。图 1-1 在伦敦市地图上标出的霍乱病例的传播情况示意图图中显示,病例聚集在某些交叉路口。这些路口的水井已经被污染,离这些

8、水井最近的居民染上了 疾病,而清洁的水井附近的居民则没有染病。如果没对这些数据进行聚类,霍乱的病因就难以揭开。1.1.5 特征抽取典型的基于特征的模型会从数据中寻找某个现象的最极端样例,并使用这些样例来表示数据。熟悉 机器学习的一个分支贝叶斯网络(并不在本书的讨论范围内)的读者应该会知道,在贝叶斯网络中, 可以利用寻找对象间的最强统计依赖来表示所有统计关联,从而表示出对象之间的复杂关系。我们将要 介绍大规模数据集下的一些重要的特征抽取类型,它们包括以下两种。频繁项集(frequentitemset)该模型适用于多个小规模项集组成的数据,就像我们将在第6章讨 论的购物篮问题(market-bas

9、ketproblem) 样。我们寻找那些在很多购物篮中同时出现的小规模项集, 这些频繁项集就是我们要找的刻画数据的特征。这种挖掘的原始应用的的确确发生在真实的购物篮场景 下:在商店或者超市收银台结账的时候确实会发现某些物品会被顾客同时购买,例如汉堡包和番茄酱, 这些物品就组成所谓的项集。相似项(similaritem) 很多时候,数据往往看上去相当于一系列集合,我们的目标是寻找那些共 同元素比例较高的集合对。一个例子是将在线商店(如Amazon)的顾客看成是其已购买的商品的集合。 为了使 Amazon 能够向某顾客推荐他可能感兴趣的其他商品, Amazon 可以寻找与该顾客相似的顾客群, 并把

10、他们当中大部分人购买过的商品也推荐给他。该过程称为协同过滤(collaborativefiltering)。如果 顾客的兴趣都很单一,即他们只购买某一类的商品,那么将顾客聚类的方法可能会起作用。然而,由于 顾客大都对许多不同的商品感兴趣,因此对每个顾客而言,寻找兴趣相似的那部分顾客并根据这些关联 对数据进行表示的做法会更有用。我们将在第 3 章讨论相似性。1.2 数据挖掘的统计限制一类常见的数据挖掘问题涉及在大量数据中发现隐藏的异常事件。本节主要讨论这个问题,并介绍 对数据挖掘的过度使用进行警告的邦弗朗尼原理。1.2.1 整体情报预警2002 年,美国布什政府提出了一项针对所有可获得的数据进行

11、挖掘的计划,目的用于追踪恐怖活动, 这些数据包括信用卡收据、酒店记录、旅行数据以及许多其他类型的情报。该计划被称为整体情报预警 (TotallnformationAwareness, TIA)。TIA计划无疑在隐私倡导者当中受到了极大关注,虽然最终它并没 有被国会通过,但其实我们并不清楚这种计划是否已被冠以其他名称而得以真正实施。隐私和安全的折 中困难姑且不在本书的讨论目的之列,然而,TIA或类似系统若想进一步发展,在其可行性和所依赖假 设的现实性方面还需做更多的技术改进。很多人关心的是,如果浏览了这么多数据,并且想从这些数据当中发现疑似的恐怖行为,那么难道 最终就不会找出很多无辜的行为?乃至

12、虽然非法但不是恐怖行为的行为?这些发现会导致警察的登门 造访甚至更糟的情形。答案取决于所定义行为的严密程度。统计学家已经发现了该问题的各种伪装形式, 并且提出了一个理论。该理论将在下一节介绍。1.2.2 邦弗朗尼原理假定人们有一定量的数据并期望从该数据中找到某个特定类型的事件。即使数据完全随机,也可以 期望该类型事件会发生。随着数据规模的增长,这类事件出现的数目也随之上升。任何随机数据往往都 会有一些不同寻常的特征,这些特征看上去虽然很重要,但是实际上并不重要,除此之外,别无他由, 从这个意义上说,这些事件的出现纯属“臆造”统计学上有一个称为邦弗朗尼校正(Bonferronicorrectio

13、n) 的定理,该定理给出一个在统计上可行的方法来避免在搜索数据时出现的大部分“臆造”正响应。这里 并不打算介绍定理的统计细节,只给出一个非正式的称为邦弗朗尼原理的版本,该原理可以帮助我们避 免将随机出现看成真正出现。在数据随机性假设的基础上,可以计算所寻找事件出现次数的期望值。如 果该结果显着高于你所希望找到的真正实例的数目,那么可以预期,寻找到的几乎任何事物都是臆造的, 也就是说,它们是在统计上出现的假象,而不是你所寻找事件的凭证。上述观察现象是邦弗朗尼原理的 非正式阐述。以寻找恐怖分子为例,可以预期在任何时候都几乎没有恐怖分子在活动。按照邦弗朗尼原理,只需 要寻找那些几乎不可能出现在随机数

14、据中的罕见事件来发现恐怖分子即可。下一节将给出一个扩展的例 子。1.2.3 邦弗朗尼原理的一个例子假设我们确信在某个地方有一群恶人,目标是把他们揪出来。再假定我们有理由相信,这些恶人会 定期在某个宾馆聚会来商讨他们的作恶计划。为限定问题的规模,我们再给出如下假设:(1) 恶人数目可能有 10 亿;(2) 每个人每 100 天当中会有一天去宾馆;(3) 一个宾馆最多容纳 100个人。因此, 100000个宾馆已足够容纳 10亿人中的 1%在某个给定的日 子入住宾馆;(4) 我们将对1000 天的宾馆入住记录进行核查。为了在上述数据中发现恶人的踪迹,我们可以找出那些在两个不同日子入住同一宾馆的人。

15、但是假 设并没有恶人,也就是说,给定某一天,对每个人来说,他们都是随机地确定是否去宾馆(概率为 0.01), 然后又是随机地从 105个宾馆中选择一个。从上述数据中,我们能否推断出某两个人可能是恶人?接下来我们做个简单的近似计算。给定某天,任意两个人都决定去宾馆的概率为0.0001,而他们入 住同一宾馆的概率应该在0.0001基础上除以105(宾馆的数量)。因此,在给定某天的情况下,两个人 同时入住同一宾馆的概率是10?9。而在任意给定的不同的两个日子,两人入住同一宾馆的概率就是10?9 的平方,即10?18。需要指出的是,上述推理中只需要两人两次中每次住的宾馆相同即可,并不需要两次 都是同一

16、家宾馆3。基于上述计算,我们必须要考虑到底事件出现多少次才意味着作恶事件的发生。上例中,“事件”、(n)的含义是指“两个人在两天中的每一天入住相同宾馆”。为简化数字运算,对于较大的n,II大概等3如第一天大家都住A,第二天都住B。但a可以不等于B。译者注一1109)于畑/2。下面我们都采用这个近似值。因此在109中的人员组对个数为=5X 1017,而在1000天内I 2丿任意两天的组合个数为f10001 =5X105。疑似作恶事件的期望数目应该是上述两者的乘积再乘上“两个I 2丿 人在两天中的每一天入住相同宾馆”的概率,结果为5 X 1017 X 5 X 105 X 10?18=250000

17、也就是说,大概有25万对人员看上去像恶人,即使他们根本不是。现在假定实际上只有10对人员是真正的恶人。警察局需要调查25万对人员来寻找他们。除了会侵 犯近 50 万无辜人们的生活外,所需的工作量非常大,以至于上述做法几乎是不可行的。1.2.4 习题习题1.2.1 基于1.2.3节的信息,如果对数据做如下改变(其他数据保持不变),那么可能的嫌疑 人员对的数目是多少?(1)观察的天数从1000天增加到2000天。(2)要观察的总人员数目上升到20亿(因此需要200000个宾馆)。(3)只有在不同的三天内的同一时刻两个人入住相同宾馆的情况下,才进行嫌疑报告。!习题1.2.2 假定有1亿人的超市购物记

18、录,每个人每年都会去超市100次,每次都会买超市中 1000 种商品中的10种。我们相信,两个恐怖分子会在一年中的某个时段购买相同的10种商品(比如制造炸 弹的材料)。如果对购买相同商品集合的人员对进行搜索,那么能否期望我们发现的任何这类人员都是 真正的恐怖分子?41.3 相关知识本节中,我们将简要介绍一些有用的主题,读者可能在其他课程的研究中接触过或者根本没有接触 过这些主题,但是它们却对于数据挖掘的研究相当有益。这些主题包括:(1)用于度量词语重要性的 TF.IDF 指标;(2)哈希函数及其使用;(3)二级存储器(磁盘)及其对算法运行时间的影响;(4)自然对数的底e及包含它的一系列恒等式;

19、幂定律(powerlaw )。1.3.1 词语在文档中的重要性数据挖掘的不少应用都会涉及根据主题对文档(词语的序列)进行分类的问题。一般来说,文档的 主题主要通过找到一些特定的能够体现主题的词语来刻画。例如,有关棒球(baseball)的文章当中往 往会出现类似“ball”(球)、“bat”(球棒)、“pitch”(投球)以及“run”(跑垒)之类的词语。 一旦将文档分到确实是关于棒球的主题类中,不难发现上述词语在文档当中的出现往往十分频繁。但是, 在没有分类之前,并不能确定这些词语就刻画了棒球的主题类别。因此,分类的第一步往往是考察文档并从中找出重要的词语。为达到这个目的,我们首先猜测文档

20、中最频繁出现的词语应该最重要。但是,这个直觉和实际情况恰恰相反。出现最频繁的大部分词语肯定 都是那些类似于“the”或者“and”的常见词,这些词通常都用于辅助表达但本身不携带任何含义。实 际上,英语中几百个最常见的词(称为停用词)往往都在文档分类之前就被去掉。事实上,描述主题的词语往往都相对罕见。但是,并非所有罕见词在做指示词时都同等重要。一方 面,某些在整个文档集合中极少出现的词语(如“notwithstanding”或“albeit”)并不能提供多少有用 的信息。另一方面,某个如“ chukker”(马球比赛中的一局)的词虽然和上述词语一样罕见,但是该词 语却能提示我们文档明显和马球运动

21、有关。上述两类罕见词的区别与它们是否在部分文档中反复出现有 关。也就是说,类似“ albeit ”的词语在文档中出现并不会增加它多次出现的可能性。但是,如果一篇 文章有一次提到“chukker”,那么文档可能会提到“firstchukker”(第一局)发生什么,接着提到4也就是说,假定恐怖分子一定会在一年中的某个时段购买相同的10件商品。这里不考虑恐怖分子是否 必须要这样做。“secondchukker” (第二局)发生什么,以此类推。也就是说,如果这类词在文档中出现那么它们很可 能会反复出现。这种度量给定词语在少数文档中反复出现程度的形式化指标称为TF.IDF (TF指词项频率,是 Term

22、Frequency的缩写,IDF指逆文档频率,是InverseDocumentFrequency的缩写,TF.IDF表示词项频率 乘以逆文档频率)。它通常采用如下方式计算。假定文档集中有N篇文档,f为词项i在文档j中出现 的频率(即次数),于是,词项i在文档j中的词项频率TF.定义为也就是词项i在文档j中的词项频率f.归一化结果,其中归一化通过f除以同一文档中出现最多的 词项(可能不考虑停用词的频率)的频率来计算。因此,文档j中出现频率最大的词项的TF值为1,而 其他词项的 TF 值都是分数5。假定词项i在文档集的篇文档中出现,那么词项i的IDF定义如下:于是,词项i在文档j中的得分被定义为T

23、F.XIDF.,具有最高TF.IDF得分的那些词项通常都是刻画 文档主题的最佳词项。例1.3假定文档集中有220=1048576篇文档,假定词语w在其中的210=1024篇文档中出现,那么 /DFw=log2(22o/21o)=log2(21o)=1O。考虑一篇文档j, w在该文档中出现20次,这也是文档当中出现最多的 词(停用词可能已经去掉)。那么TFwj=1,于是w在文档j中的TF.IDF得分为10。假定在文档k中,词语w出现一次,而该文档中任一词语最多出现20次。于是有TFwk=1/20, w在 文档k中的TF.IDF得分为1/2。1.3.2 哈希函数读者或许听说过哈希表,也可能在 Ja

24、va 类或类似软件包当中使用过哈希表。实现哈希表的哈希函数 在多个数据挖掘算法中都是核心要素,不过在这些数据挖掘算法中,哈希表却和一般常见的形式有所不 同。下面我们将介绍哈希函数的基本知识。首先,哈希函数h的输入是一个哈希键值(hash-key),输出是一个桶编号(bucketnumber)。假 定桶的个数为整数B,则桶编号通常是0到B-1之间的整数。哈希键值可以是任何类型的数据。哈希函 数的一个直观性质是它们将哈希键值“随机化”(randomize)。更精确地说,如果哈希键值随机地从 某个合理的可能的哈希键分布中抽样而成,那么函数h将会把数目近似相等的哈希键值分配到每个桶中。 这一点有可能做

25、不到,比如当所有可能的哈希键值数目少于桶数目B时就是如此。当然我们可以认为该 总体不具有“合理”分布。然而,可能存在更细微的原因导致哈希函数的结果不能近似均匀地分布。例1.4假设所有的哈希键都是正整数。一个普遍且简单的哈希函数是h(x)=xmodB,即x除以B之 后的余数。如果哈希键的总体是所有的正整数,那么上述哈希函数产生的结果会非常均匀,即1/B的整 数将被分到每个桶中。但是,如果哈希键只能是偶数值,并且如果B=10,那么h(x)的结果只能是0、2、 4、6和8,也就是说,此时哈希函数的行为明显不够随机。另一方面,如果选择B=11,那么会有1/11 的偶数会分到每个桶中,这时候哈希函数的效

26、果又会很好。对上例进行一般化,当哈希键都是整数时,如果选用一个与所有可能的哈希键(或者大部分)都 具有公因子的B时,将会导致分配到桶中的结果不随机。因此,通常都首选将B取为素数。尽管这种 情况下我们还必须要考虑所有的哈希键以B为因子的可能性,但是上述选择方法减少了非随机行为的 可能性。当然,还有很多其他类型的哈希函数并不基于取模运算。这里也并不打算概括所有可能的哈 希函数类型,但是在最后一节的参考文献讨论当中也提到了一些相关的信息来源。如果哈希键不是整数,要如何处理呢?在某种意义上说,所有数据类型的值都由比特位组成,而比 特位序列常常可以解释成整数。但是,有一些简单的规则可以将通用的类型转化成

27、整数。例如,如果哈 希键是字符串,那么可以将每个字符转换成其对应的ASCII码或Unicode码,每个码可以解释为一个小 整数。在除以B之前可以将这些整数求和,只要B小于字符串总体中各字节字符码的典型求和结果,那 么最后对B取模的结果相对还是比较均匀的。如果B更大,那么可以将字符串拆分成多个组,每个组包 含多个字符,一组字符可以连在一起看成一个整数。然后,将每组字符对应的整数求和之后对B取模。 比如,如果B在10亿上下或者说230,那么每四个字符合成一组对应一个32位的整数,多个32位整数 的求和结果将会相当均匀地分配到 10亿个桶中去。 对于更复杂的数据类型,可以对上述字符串转化为整数的思路

28、进行扩展来递归式处理。 对于记录型数据,记录中每个字段都有自己的类型,那么可以采用适合该类型的算法将每个字段递归地 转换成整数,然后将所有字段转换出的整数求和,最后对B取模来将整数分配到不同桶中去。5 因为都是两个正整数词频相除。译者注 对于数组型、集合型或包(bag)型6数据,数据中的每一个元素都是相同类型。可以先将每个元素的值 转换成整数,然后求和并对 B 取模。1.3.3 索引给定某种对象的一个或多个元素值,索引是一种能够支持对象高效查找的数据结构。最常见的一种 情况是对象都是记录,而索引按照记录中的某个字段来建立。给定该字段的值v,基于索引能够快速返 回该字段值等于 v 的所有记录。例

29、如,假定有一个由一系列三元组姓名,地址,电话号码组成的档案记 录表以及基于电话号码字段建立的索引。当给定一个电话号码时,基于索引就能快速找到包含该号码的 一条或者多条记录。实现索引的方法有很多,这里并不打算给出全面的介绍。参考文献部分给出了扩展阅读的建议。但 是,哈希表是一种简单的索引构建方法。哈希函数的输入键是用于建立索引的一个或者多个字段。对于 某条记录来说,哈希函数会基于其中哈希键的值进行计算,然后将整条记录分配到某个桶中,而桶的号 码取决于哈希函数的结果。举例来说,这里的桶可以是内存或磁盘块中的一个记录表7。于是,给定一个哈希键值,我们可以先求哈希函数的值,然后根据该值寻找相应的桶,最

30、后只须在 该桶中寻找包含给定哈希键值的记录即可。如果我们选取的桶数目B和档案中所有记录的数目大体相 当,那么分配到每个桶的记录数目都会较小,这样在桶内部的搜索速度就会很快。例 1.5 图 1-2 给出了包含姓名( name ) 、地址( address )和电话号码( phone )字段的记录的内 存索引结构的大概样子。这里,索引基于电话号码字段构建,而桶采用链表结构。图中展示电话号码 800-555-1212所对应的哈希到桶号码为17。对于桶头(bucketheader)构成的数组,其第i个元素实际上是 第 i 个桶对应链表的头指针。图中展开了链表中的一个元素,它包含姓名、地址和电话号码字段

31、的一条 记录。事实上,该元素对应记录包含的电话号码正好是800-555-1212,但是该桶中的其他记录可能包含 也可能不包含这个电话号码,我们只知道这些记录中的电话号码经过哈希变换之后结果都是 17。图1-2 一个使用哈希表的索引,其中电话号码经过哈希函数映射到不同桶中, 桶的编号就是哈希结果值1.3.4 二级存储器当处理大规模数据时,数据一开始在磁盘还是在内存那么计算的时间开销相差很大,很好地理解这 一点相当重要。磁盘的物理特性是另外一个话题,对于这个话题有说不完的内容,但是本书当中只给出 一点点介绍,感兴趣的读者可以按照参考文献的提示查阅相关资料。磁盘组织成块结构,每个块是操作系统用于在内

32、存和磁盘之间传输数据的最小单元。例如, Windows 操作系统使用的块大小为64KB (即216=65536字节)。需要大概10毫秒的时间来访问(将磁头移到块 所在的磁道并等待在该磁头下进行块旋转)和读取一个磁盘块。相对于从内存中读取一个字的时间,磁 盘的读取延迟大概要慢5个数量级(即存在因子105)。因此,如果只需要访问若干字节,那么将数据 放在内存中将具压倒性优势。实际上,假如我们要对一个磁盘块中的每个字节做简单的处理,比如,将 块看成哈希表中的桶,我们要在桶的所有记录当中寻找某个特定的哈希键值,那么将块从磁盘移到内存 的时间会大大高于计算的时间。我们可以将相关的数据组织到磁盘的单个柱面

33、(cylinder)上,因为所有的块集合都可以在磁盘中心 的固定半径内可达,因此可以不通过移动磁头就可以访问,这样可以以每块显着小于10ms的速度将柱面上 的所有块读入内存。假设不论数据采用何种磁盘组织方式,磁盘上数据到内存的传送速度不可能超过 100MB/S。当数据集规模仅为1MB时,这不是个问题,但是,当数据集在100GB或者1TB规模时,仅 仅进行访问就存在问题,更何况还要利用它来做其他有用的事情了。1.3.5 自然对数的底 e6一种允许集合中元素重复的数据类型。译者注7由于多条记录可能会哈希哈希到同一个桶中,因此每个桶通常由多条记录所组成的表构成。译 者注常数e=2.7182818具有

34、一些非常有用的特性。具体来讲,e是当x趋向于无穷大时,1 + -的极 I x丿限。当x分别等于1、2、3和4时,上式的值分别近似为2、2.25、2.37和2.44,很容易相信该序列的 极限大概在2.72左右。一些看上去比较复杂的表达式可以通过代数公式来得到近似值。考虑(1+a)b,其中a很小(a0)。该(1 、x(ab)式子可以重写成(1+a)(i/a)(ab),于是可以将a替换为1/x,即x=1/a,得到1 + - ,即 x丿( 1、由于已经假定a很小,所以x很大,因此1 + - 接近极限e,于是上式可以通过eab来近似。0),(1?a)b 近似等于e?ab。一些其他有用的等式来自ex的泰勒

35、展开公式,即ex=工xi;i!或者说ex=1+x+x2/2+x3/6+x4/24+。 i=0当x很大时,上述数列收敛速度较慢。当然对于任何常数x,由于川会比xn增长得快得多,所以该数列 一定会收敛。然而,当 x 较小时,不论它是正是负,上述数列都会快速收敛,也就是说不需要计算太多 项就可以得到较好的近似值。例1.6令x=1/2,有ei/2=1+1/2+1/8+1/48+1/384+ 或约为 e1/2=1.64844令x=?1,有e?i=1?1+1/2? 1/6+1/24? 1/120+1/720 ? 1/5040+ 或约为 e?1=0.36786。1.3.6 幂定律在很多现象中,两个变量之间通

36、过幂定律(powerlaw,也称幕律)关联起来,也就是说,两个变量 在对数空间下呈现出线性关系。图1-3给出了这样的一种关系。该图中横坐标x和纵坐标y之间的关系 为 log10y=6?2log10x。图 1-3 一个斜率为?2 的幕定律关系图例1.7我们来考察A上的图书销售情况,令x表示图书的销量排名,y对应的是销售排 名为x的畅销图书在某个时间段的销量。图1-3表明,销售排行第1位的图书的销量是1000000册,而 排行第10位的图书的销量为10000册,排行第100位的图书销量为100册,以此类推可以得出排名中 所有图书的销量。从图中可以看到,排名超过1000的图书的销量是一个分数,这有些

37、极端,实际上我 们预测排名远远超过1000的图书销量的曲线应该变得比较平。马太效应当幕值大于1时,幕定律的存在往往通过马太效应(Mattheweffect)来解释,在圣经马太福音 中,存在关于“富者越富”的一段话。很多现象都表现出类似特性,即一旦在某个特性获得高价值, 那么会导致该特性获得更大的价值。例如,如果某个 Web 网页有很多入链,那么人们更可能找到该 网页并从他们自己的某个网页链向它。另一个例子是,如果一本书在Amazon上卖得很好,那么它很 可能会登广告,而当顾客访问 Amazon 网站时会看到这则广告,其中的一些人会选择购买这本书,从 而造成销量的继续增长。关于x和y的幕定律的一

38、般形式为logy=b+alogx,如果增大对数的底(实际上没有影响),比如采 用自然对数e作为方程两边的值,则有y=ebealogx=ebxa,由于eb是一个常数,所以可以用常数c代替,于 是幕定律可以写成y=cxa,其中a和c都是常数。例1.8在图1-3中,当x=1时y=106,当x=1000时y=1。第一次代入后有106=c,第二次代入后有 1=c(1000)a,我们知道c=106,通过第二次代入后,得出1=106(1000)a,于是a=?2。也就是说,图1-3表 示的幕定律可以表示为y=106x?2或y=106/x2。本书中将有多处数据都满足幂定律,举例如下。(1) Web 图当中节点的

39、度 按照网页的入链数对所有网页排序,令 x 为网页在排序结果的序号,y为序号为x的网页的入链数。则y和x之间的关系和图1-3非常类似,只是这里的幕要稍大 于图中的幂 2,已经发现在这种现象中的幂值接近 2.1。(2) 商品的销量 将商品(如 A 上的图书)按照去年一年的销量多少来排序,假定销量第 x 位的商品的实际销量为y。那么y和x的函数关系和图1-3也类似。在9.1.2节中,我们将讨论这种销量 分布的影响,那时我们还会提到其中的“长尾”现象。(3) Web 网站的大小 计算 Web 站点上的网页数目,根据该数目对网站排序。假定第 x 个网站 的网页数目为y,那么函数y(x)也服从幕定律。(

40、4) Zipf定律该幕定律最初来源于文档集中的词频统计。如果将词语按照出现频率排序,y表示排 名第x位的词出现的次数,则可以得到一个幕定律,不过其坡度比图1-3的要平缓得多。Zipf的观察结 果为y=cx?1/2。有趣的是,有不少其他类型的数据也满足这个特定的幕定律。比如,如果将美国的州按照 人口数量排序,令y为人口第x多的州的人口数,则y和x近似地满足Zipf定律。1.3.7 习题习题1.3.1假定一个由1000万篇文档组成的文档集,如果单词出现在(a)40篇或(b)10000篇文档 中,那么它的 IDF 值是多少(给出最接近的整数值)?习题1.3.2假定一个由1000万篇文档组成的文档集,某个词w出现在其中的320篇文档中。且在 一篇具体的文档d中,出现最多的词出现了 15次,那么w出现(a)1次或(b)5次情况下的TF.IDF得分分 别是多少?!习题133假定哈希键都来自某个常数c的所有非负整数倍,而哈希函数为川x)=xmod15,那么常 数 c 取何值时, h 是一个合适的哈希函数?也就是说,此时大量随机的哈希键选择能够近乎均匀地分 到不同桶当中。习题134基于e的形式来近似表示下列数值。(a)(1.01)500(b)(1.05)1000(c)(0.9)40习题1.3.5采用ex的泰勒展开公式计算下列表达式直到小数点后3位小数。(a)e1/10(b)e?1/10(c)e2

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!