数据仓库与数据挖掘复习资料

一、题型与考点[第一种]

1、解释基本概念(中英互译+解释简单的含义);
2、简答题(每个10分有两个一定要记住):

① 考时间序列Time series(第六章)的基本概念含义+解释+作用(序列模式挖掘的作用);
② 考聚类(第五章)重点考密度聚类的定义描述+DBSCAN算法的描述定义(+DBSCAN优缺点)+应用;

3、考综合题:

① C4.5(ID3)考伪代码;
② kNN考伪代码;
③ Apriori考伪代码;
④ k-Means考伪代码;
⑤ PageRank考伪代码+定义+应用(这个题目占比很大好好复习);
⑥ EM算法应该会考定义;
⑦ 闭合项目集会考;
考伪代码的题目一定要去牢记,记住了应该就差不多了(伪代码应该出的题目会比较简单一些,不考选择填空)

4、考点详解章节 

第一章+第二章应该只考名词解释、中英互译(比如说数据挖掘、爬虫、数据仓库、信息熵、知识发现、数据分析、机器学习、神经网络、分类聚类等等);
第三章考Apriori算法+闭合项目集;
第四章考KNN算法+ID3算法+EM算法;
第五章非常重要考点多分数很高(重点复习)考聚类的技术方法+K中心点算法(定义简答)+AGNES算法+DIANA算法考大题+密度聚类方法考DBSCAN(重点)
第六章考时间序列+序列模式挖掘的作用
第七章考web数据来源+PageRank算法+基于随机冲浪的PageRank算法+权威中心页面定义
第八章应该不考;

二、题型与考点[第二种](ffjtql总结)

第一章 绪论

一、[课后习题]中英互译与解释
1、Data Mining:数据挖掘

 (1)【简单定义】从大型数据中挖掘所需要的知识(课后答案给的这个);
 (2)【KDD看作数据挖掘的特例】从数据库、数据仓库以及其他数据存储方式中挖掘有用知识的过程(P11);
 (3)【作为KDD过程的一个步骤】KDD(知识发现)中通过特定的算法在可接受的计算效率限制内生成特定模式的一个步骤(P11);
 (4)【广义】从大型数据集中,挖掘隐含在其中的、人们事先不知道的、对决策有用的知识的完整过程(P11);
 (5)【狭义】从特定形式的数据集中提炼知识的过程(P11)。

2、Artificial Intelligence:人工智能
        研究如何应用机器来模拟人类某些智能行为的基本理论、方法和技术的一门科学。
3、Machine Learning:机器学习
        研究如何使用机器来模拟人类学习活动的一门学科。
4、Knowledge Engineering:知识工程
        研究知识信息处理并探讨开发知识系统的技术。
5、Information Retrieval:信息检索
        研究合适的信息组织并根据用户需求快速而准确地查找信息的技术。通常指的是计算机息检索,它以计算机技术为手段,完成电子信息的汇集、存储和查找等的相关技术。
6、Data Visualization:数据可视化
        运用计算机图形学和图像处理等技术,将数据换为图形或图像在屏幕上显示出来。它是进行人机交互处理、数据解释以及提高系统可用性的重要手段。
7、OLTP(On-Line Transaction Processing):联机事务处理
        传统的关系型数据库的主要应用,主要是基本的、日常的事务处理(增删改查),例如银行交易(CSDN)。
8、OLAP(On-Line Analytic Processing):联机分析处理
        数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果(CSDN)。
9、Decision Support:决策支持
        决策者通过数据、模型和知识,以人机交互方式进行半结构化或非结构化决策。
10、KDD(Knowledge Discovery in Databases):知识发现
        从数据中辨别有效的、新颖的、潜在有用的、最终可理解的模式的过程。
11、Transaction Database:事务数据库
        一个事务数据库是对事务型数据的收集。
12、Distributed Database:分布式数据库
        物理上分散而逻辑上集中的数据库系统【在逻辑上是一个统一的整体,在物理上则是分别存储在不同的物理节点上】。

二、[补充]名词解释
1、大数据:

        指一种规模大到在获取、存储、管理、分析方面大大超出了传统数据库软件工具能力范围的数据集合,具有海量的数据规模、快速的数据流转、多样的数据类型和价值密度低四大特征。
2、数据分析技术(必考):

        是从大量的、不完全的、有噪声的、模糊的、随机的数据集中识别有效的、新颖的、潜在有用的,以及最终可理解的模式的非平凡过程。它是一门涉及面很广的交叉学科,包括机器学习、数理统计、神级网络、数据库、模式识别、粗糙集等相关技术。
3、广义知识(Generalization):

        是指描述类别特征的概括性知识。这类数据挖掘系统是对细节数据所蕴含的概念特征信息的概括和抽象的过程。
4、关联知识(Association):

        反映一个事件和其他事件之间的依赖或关联。关联知识挖掘的目的就是找出数据库中隐藏的关联信息。
5、传统数据仓库技术:

        使用ETL(Extract,Transform,Load)或ETCL(Extract,Transform,Clean,Load)工具实现数据的导出、转换、清洗和装入工具。使用操作型数据存储(Operational Data Store.,oDS)存储明细数据,使用数据集市和数据仓库计数实现面向主题的历史数据存储,使用多维分析工具进行前端展现,以及使用数据仓库工具提供的挖掘引擎或基于单独的数据挖掘工具进行预测分析等。
6、数据仓库(Data Warehouse):

        一种新型的数据存储和处理手段,被数据库厂商普遍接受并且相关辅助建模和管理工具快速推向市场,成为多数据源集成的一种有效的技术支撑环境。

第二章 知识发现过程与应用结构
一、知识发现(Knowledge Discovery in Database,KDD)
 【必考】一个系统化的工作,必须对可以利用的源数据进行分析,确定合适的挖掘目标,然后才能着手系统的设计和开发。KDD是一个多步骤的处理过程,一般分为问题定义、数据采集、数据预处理、数据挖掘、模式评估等基本阶段。
 过程可以简单地概括为:首先从数据源中抽取感兴趣的数据,并把它组织成适合挖掘的数据组织形式;然后,调用相应的算法生成所需的知识;最后对生成的知识模式进行评估,并把有价值的知识集成到企业的智能系统中。

三、阶梯处理过程模型

各阶段的主要任务是:

1、数据准备:了解相关领域的情况,弄清楚用户的要求,确定挖掘的总体目标和方法并对原数据结构加以分析、确定数据选择原则等工作。
2、数据选择:从数据库中提取与KDD目标相关的数据。
3、数据预处理:主要是对上一阶段产生的数据进行再加工,检查数据的完整性及数据的一致性,对其中的噪声数据进行处理,对丢失的数据可以利用统计方法进行填补。对一些不适合于操作的数据进行必要的处理等。
4、数据缩减:对经过预处理的数据,根据知识发现的任务对数据进行抽取处理,使数据再次精简取其精华,更好地集中于用户挖掘目标上。
5、确定KDD的目标:根据挖掘的目标和用户的要求,确定KDD所发现的具体知识模式和类型(如分类、聚类、关联规则等)。
6、确定数据挖掘算法:根据上一阶段所确定的模式,选择合适的数据挖掘算法(包括选取合适的参数、知识表示方式,并保证数据挖掘算法与整个KDD的评判标准相一致)。
7、数据挖掘:运用选定的算法,从数据中提取出用户所需要的知识。
8、模式解释:对发现的模式进行解释。在此过程中,为了取得更为有效的知识,可能会返回到前面的某些处理步骤中以改进结果,保证提取出的知识是有效和可用的。
9、知识评价:将发现的知识以用户能了解的方式呈现给用户。这期间也包含对知识的一致性的检查,以确信本次发现的知识不与以前发现的知识相抵触。


第三章 关联规则挖掘理论和算法

一、Apriori算法
1、概念与定理

2、伪代码
(1)Apriori(发现频繁项目集)

(2)apriori-gen(Lk-1)(候选集产生)

(3)has_infrequent_subset(c,Lk-1)(判断候选集的元素)

(4)从给定的频繁项目集中生成强关联规则

(5)递归测试一个频繁项目集中的关联规则

3、例题


二、Close算法
1、基本原理
        一个频繁闭合项目集的所有闭合子集一定是频繁的,一个非频繁闭合项目集的所有闭合超集一定是非频繁的。
2、闭合项集(P83例题)





例题勘误:
 
        由伪代码可知,若p是其i项子集闭合的子集,则将其删除。
 
        {BD}是子集{D}的闭合{BD}的子集,所以下文生成的FC2里面的BD应该要删掉,即FC2={AB,AC,BC}。


第四章 分类方法

一、k-Nearest Neighbors算法
1、相关概念

(1)距离度量:二维空间两个点的欧几里得距离(kNN算法常用距离,也被称为L2规范)计算公式为:

(2)K值选择:在许多实际应用中数据是不充足的。为了选择好的模型,可以采用交叉验证方法。交叉验证的基本想法是重复地使用数据,把给定的数据进行切分,将切分的数据组合为训练集与测试集,在此基础上反复进行训练测试以及模型的选择。
(3)分类决策规则:kNN算法使用的分类决策规则是多数表决,如果损失函数为0-1损失函数,那么要使误分类率最小即使经验风险最小,多数表决规则实际上就等同于经验风险最小化。
(4)主要思想:计算每个训练数据到待分类元组的距离,取和待分类元组距离最近的k个训练数据,k个数据中哪个类别的训练数据占多数,则待分类元组就属于哪个类别。

2、伪代码

3、例题


例题勘误:
        本题的测试数据为<范可可,女,1.50>,并非<范可可,女,1.6>。

二、ID3算法
1、相关概念

 (1)期望信息:设S是s个数据样本的集合。假定类标号属性具有m个不同值,定义m个不同类Ci (i = 1,2,......,m)。设Si是类Ci中的样本数。对一个给定的样本分类所需的期望信息由下式给出:

 (2)熵值:设属性A具有v个不同值{a1,a2,...,av},可以用属性A将S划分为v个子集{S1,S2,...,Sv},其中Si包含S中这样一些样本,它们在A上具有值aj。如果A作为测试属性(即最好的分裂属性),则这些子集对应于包含集合S的结点生长出来的分支。设Sij是子集Sj中类Cj的样本数。根据由A划分成子集的熵由下式给出:

 (3)信息增益:对于在A上分支将获得的信息增益可以由下面的公式得到:

2、伪代码
 
3、例题

三、EM算法
1、定义
        最大期望算法(Expectation-Maximization Algorithm,又译期望最大化算法)在统计中被用于寻找依赖于不可观察的隐性变量的概率模型中参数的最大似然估计。
2、基本思想

第五章 聚类方法

一、聚类技术分类
1、划分方法
(1)主要思想
         给定一个有n个对象的数据集,划分聚类技术将构造数据k个划分,每一个划分就代表一个簇,k≤n。也就是说它将数据划分为k个簇,而且这k个划分满足下列条件:

 ① 每一个簇至少包含一个对象;
 ② 每一个对象属于且仅属于一个簇。

         对于给定的k,算法首先给出一个初始的划分方法,以后通过反复迭代的方法改变划分,使得每一次改进之后的划分方案都较前一次更好。所谓好的标准就是:同一簇中的对象越近越好,而不同簇中的对象越远越好。目标是最小化所有对象与其参照点之间的相异度之和。这里的远近或者相异度/相似度实际上是聚类的评价函数。
(2)代表算法
         k-均值、k-中心点、k-模、k原型、PAM等。
2、层次方法
(1)凝聚层次聚类
         凝聚的层次聚类是一种自底向上的策略,首先将每个对象作为一个簇,然后合并这些原子簇为越来越大的簇,直到所有的对象都在一个簇中,或者某 个终结条件被满足,绝大多数层次聚类方法属于这一类,它们只是在簇间相似度的定义上有所不同。代表是AGNES算法。
(2)分裂层次聚类
         分裂的层次聚类与凝聚的层次聚类相反,采用自顶向下的策略,它首先将所有对象置于一个簇中,然后逐渐细分为越来越小的簇,直到每个对象自成一簇,或者达到了某个终结条件。代表是DIANA算法。
3、基于密度的方法
         密度聚类方法的指导思想是,只要一个区域中的点的密度大于某个域值,就把它加到与之相近的聚类中去。这类算法能克服基于距离的算法只能发现“类圆形”聚类的缺点,可发现任意形状的聚类,且对噪声数据不敏感。但计算密度单元的计算复杂度大,需要建立空间索引来降低计算量,且对数据维数的伸缩性较差。这类方法需要扫描整个数据库,每个数据对象都可能引起一次查询,因此当数据量大时会造成频繁的/O操作。代表算法有DBSCAN、OPTICS、DENCLUE算法等。
4、基于模型的方法
         SOM(SOM神经网络)和COBWEB(简单增量概念聚类算法)。


二、k-Means算法
1、基本概念
         k-平均(k-Means),也被称为k-均值,是一种得到最广泛使用的聚类算法。k-平均算法以k为参数,把个对象分为k个簇,以使簇内具有较高的相似度。相似度的计算根据一个簇中对象的平均值来进行。
        算法首先随机地选择k个对象,每个对象初始地代表了一个簇的平均值或中心。对剩余的每个对象根据其与各个簇中心的距离,将它赋给最近的簇。然后重新计算每个簇的平均值。这个过程不断重复,直到准则函数收敛。
         k-Means算法的准则函数定义为:

        即E是数据库所有对象的平方误差的总和。其中x是空间中的点,表示给定的数据对象,¯xi是簇Ci的平均值。这可以保证生成的结果簇尽可能的紧凑和独立。
2、伪代码

3、例题
 
4、性能分析
(1)优点

① 是解决聚类问题的一种经典算法,简单、快速;
② 对处理大数据集,该算法是相对可伸缩和高效率的;
③ 当结果簇是密集的,它的效果较好。

(2)缺点

① 在簇的平均值被定义的情况下才能使用,可能不适用于某些应用;
② 必须事先给出k(要生成的簇的数目),而且对初值敏感,对于不同的初始值,可能会导致不同结果;
③ 不适合于发现非凸面形状的簇或者大小差别很大的簇。而且它对于噪声和孤立点数据是敏感的。

三、k-中心点算法
1、基本思路
        首先为每个簇任意选择一个代表对象;剩余的对象根据其与代表对象的距离分配给最近的一个簇。然后反复地用非代表对象来代替代表对象,以改进聚类的质量。这样划分方法仍然是基于最小化所有对象与其参照点之间的相异度之和的原则来执行的。
2、PAM
        PAM(Partitioning Around Medoid,围绕中心点的划分)是最早提出的k-中心点算法之一,它选用簇中位置最中心的对象作为代表对象,试图对个对象给出个划分。代表对象也被称为是中心点,其他对象则被称为非代表对象。最初随机选择k个对象作为中心点,该算法反复地用非代表对象来代替代表对象,试图找出更好的中心点,以改进聚类的质量。在每次迭代中,所有可能的对象对被分析,每个对中的一个对象是中心点,而另一个是非代表对象。对可能的各种组合,估算聚类结果的质量。一个对象O_i可以被使最大平方误差值减少的对象代替。在一次迭代中产生的最佳对象集合成为下次迭代的中心点。
3、伪代码
 
 

四、AGNES算法
1、基本概念
        AGNES(AGglomerative NESting)算法是凝聚的层次聚类方法。AGNES算法最初将每个对象作为一个簇,然后这些簇根据某些准则被一步步地合并。例如,如果簇C1中的一个对象和簇C2中的一个对象之间的距离是所有属于不同簇的对象间欧氏距离中最小的,C1和C2可能被合并。这是一种单链接方法,其每个簇可以被簇中所有对象代表,两个簇间的相似度由这两个不同簇中距离最近的数据点对的相似度来确定。聚类的合并过程反复进行直到所有的对象最终合并形成一个簇。在聚类中,用户能定义希望得到的簇数目作为一个结束条件。
2、伪代码
 
3、例题
 

五、DIANA算法
1、基本概念
        DIANA(Divisive ANAlysis)算法属于分裂的层次聚类。与凝聚的层次聚类相反,它采用一种自顶向下的策略,它首先将所有对象置于一个簇中,然后逐渐细分为越来越小的簇,直到每个对象自成一簇,或者达到了某个终结条件,例如达到了某个希望的簇数目,或者两个最近簇之间的距离超过了某个阈值。
        在DIANA方法的处理过程中,所有的对象初始都放在一个簇中。根据一些原则将该簇分裂。簇的分裂过程反复进行,直到最终每个新的簇只包含一个对象。在聚类中,用户能定义希望得到的簇数目作为一个结束条件并使用下面两种测度方法:

① 簇的直径:在一个簇中的任意两个数据点都有一个欧氏距离,这些距离中的最大值是簇的直径。
② 平均相异度(平均距离):

2、伪代码
 
3、例题
 

六、DBSCAN算法
1、基本概念
        DBSCAN(Density-Based Spatial Clustering of Applications with Noise)是一个比较有代表性的基于密度的聚类算法。与划分和层次聚类方法不同,它将簇定义为密度相连的点的最大集合,能够把具有足够高密度的区域划分为簇,并可在有“噪声”的空间数据库中发现任意形状的聚类。
        DBSCAN的指导思想是,只要一个区域中,点的密度大于某个阈值,就把它加到与之相连的簇中去。

2、伪代码
 
3、例题


4、优缺点
(1)优点

 ① 聚类速度快且能够有效处理噪声点和发现任意形状的空间聚类:
 ② 与k-Means比较起来,不需要输入要划分的聚类个数:
 ③ 聚类簇的形状没有偏倚:
 ④ 对噪声数据不敏感。

(2)缺点

 ① 当数据量增大时,要求较大的内存支持I/O消耗也很大:
 ② 当空间聚类的密度不均匀、聚类间距差相差很大时,聚类质量较差,因为这种情况下参数MinPts和Eps选取困难。
 ③ 算法聚类效果依赖与距离公式选取,实际应用中常用欧式距离,对于高维数据,存在“维数灾难”。

第六章 时间序列和序列模式挖掘

一、时间序列及其应用
1、基本概念 
        所谓时间序列就是将某一指标在不同时间上的不同数值,按照时间的先后顺序排列而成的数列。由于前后时刻的数值或数据点的相关性往往呈现某种趋势性或周期性变化,因此时间序列里蕴藏着其他信息形式所不能代替的有用知识。
        所谓时间序列挖掘就是从时间序列数据中提取人们事先不知道的、但又是潜在有用的与时间属性相关的信息和知识,并用于短期、中期或长期预测。指导人们的社会、经济、军事和生活等行为。通过对过去历史行为的客观记录分析,揭示其内在规律,进而完成预测未来行为等决策性工作。
2、应用 
        时间序列分析的一个重要应用是预测,即根据已知时间序列中数据的变化特征和趋势,预测未来属性值。
        从经济到工程技术,从天文到地理和气象,几乎在各种领域都会遇到时间序列,因此时间序列挖掘有着广泛的数据基础和广阔的应用前景。

二、时间序列预测的常用方法
1、确定性时间序列预测方法
        对于平稳变化特征的时间序列,可以利用属性现在的值预测将来的值。对于具有明显的季节变动的时间序列来说,需要先将最近的观察值去掉季节性因素的影响产生变化趋势,然后结合季节性因素进行预测。一种更科学的评价时间序列变动的方法是把数据的变动看成是长期趋势、季节变动和随机性变动共同作用的结果。时间序列分析就是设法消除随机性波动、分解季节性变化、拟合确定性趋势,因而形成对发展水平分析、趋势变动分析、周期波动分析和长期趋势加周期波动分析等一系列确定性时间序列预测方法。
        2、随机性时间序列预测方法
通过建立随机模型,对随机时间序列进行分析,可以预测未来值。
3、其他方法
        许多技术,如神经网络、遗传算法,都可用于时间序列的预测。由于大量的时间序列是非平稳的,因此探讨多种技术结合来实现时间序列挖掘是必要的。

三、基于ARMA模型的序列匹配算法
        通过建立随机模型,对随机时间序列进行分析,可以预测未来值。若时间序列是平稳的,可以用自回归(Auto Regressive model,AR)模型、移动回归(Moving Average model,MA)模型或自回归移动平均(Auto Regressive Moving 
        Average model,ARMA)模型进行分析预测。ARMA模型是时序方法中最基本的、实际应用最广的时序模型。此后,AR模型逐步发展为ARMA模型、多维ARMA模型。ARMA通常被广泛用于预测。由于ARMA模型是一个信息的凝聚器,可将系统的特性与系统状态的所有信息凝聚在其中,因而它也可以用于时间序列的匹配。

四、序列挖掘
1、基本概念
        序列挖掘或称序列模式挖掘,是指从序列数据库中发现蕴含的序列模式。时间序列分析和序列模式挖掘有许多相似之处,在应用范畴、技术方法等方面也有很大的重合度。但序列挖掘一般是指相对时间或者其他顺序出现的序列的高频率子序列的发现,典型的应用还是限于离散型序列。
2、应用
        近年来序列模式挖掘已经成为数据挖掘的一个重要方面,其应用范围也不局限于交易数据库,在DNA分析等尖端科学研究领域、Web访问等新型应用数据源等众多方面得到针对性研究。
3、步骤

(1)排序阶段:对数据库进行排序(Sort),排序的结果将原始的数据库转换成序列数据库(比较实际可能需要其他的预处理手段来辅助进行);
(2)大项集阶段:这个阶段要找出所有频繁的项集(即大项集)组成的集合L。实际上,也同步得到所有大1-序列组成的集合,即{<l> | l∈L};
(3)转换阶段:在寻找序列模式的过程中,我们要不断地进行检测一个给定的大序列集合是否包含于一个客户序列中;
(4)序列阶段:利用转换后的数据库寻找频繁的序列,即大序列(Large Sequence);
(5)选最大阶段:在大序列集中找出最长序列(Maximal Sequences)。


五、AprioriAll & AprioriSome
1、AprioriAll算法
        AprioriAll算法源于频繁集算法Apriori,它把Apriori的基本思想(如果某个项集是频繁的,那么它的所有子集也是频繁的)扩展到序列挖掘中,也是一个多遍扫描数据库的算法。
在每一遍扫描中都利用前一遍的大序列来产生候选序列,然后在完成遍历整个数据库后测试它们的支持度。
        在第一遍扫描中,利用大项目集阶段的输出来初始化大1-序列的集合。
在每次遍历中,从一个由大序列组成的种子集开始,利用这个种子集,可以产生新的潜在的大序列。
        在第一次遍历前,所有在大项集阶段得到的大1-序列组成了种子集。
2、AprioriSome算法
        AprioriSome算法可以看作是AprioriAll算法的改进,具体过程分为两个阶段:

(1)前推阶段用于找出指定长度的所有大序列;
(2)回溯阶段用于查找其他长度的所有大序列。

第七章 Web挖掘技术

一、Web挖掘的数据来源
1、服务器日志数据
        个人浏览Web服务器时,服务器方将会产生三种类型的日志文件:Server logs、Error logs和Cookie logs,这些日志用于记录用户访间的基本情况,因此也是进行Web访问信息挖掘的主要数据源。
2、在线市场数据
        在线市场数据是指和市场活动相关的信息。例如一个电子商务站点,存储相关的电子商务信息。从内容上说,不同目的的商务网站有不同的商务信息。但是,这类数据通常是用传统的关系型数据库结构来存储数据。在线市场数据是业务数据,是进行业务相关分析的主体。用户的挖掘目标只有结合在线市场数据分析才能达到目的。
3、Web页面
        现有的Web数据挖掘方法大都是针对Web页面开展的。目前的Web页面大多满足HTML标准。由于HTML页面包含文本和多媒体信息(包括图片,语音,图像),所以涉及数据挖掘领域中的文本挖掘和多媒体挖掘。现有的HTML页面内容,缺乏标准的描述方式,难以挖掘。为了解决这个问题,1998年WWW社团提出了XML语言标准(eXtensible Markup Language)。该标准通过把一些描述页面内容的标记(tag)添加到HTML页面中,用于对HTML页面内容进行自描述,例如对一个内容为科技论文的页面添加相关标记,描述其作者,关键词等。XML的标记并不是限制死的,是由页面的创立者自己安排给出和定义的,但要遵循一定的规范。
4、Web页面超链接关系
        Web页面之间的超链接关系是一种重要的资源,页面的设计者把它们认为是重要的页面地址添加到自己的页面上。显然,如果一个页面被很多页面引用,那么它一定是重要的。这就是从中需要挖掘的知识。
5、其他信息
        这些信息主要包括用户注册信息等一系列信息。为了更好地实现挖掘任务,适当地附加信息(如描述用户的基本情况和特征的信息)是必要的。

二、Web结构挖掘方法
1、页面等级(PageRank)方法
(1)页面等级
        设u为一个Web页,Bu为所有指向u的页面的集合,Fu为所有u指向的页面的集合,c(<1)为一个归一化的因子,那么u页面的等级R(u)被定义为:

        基本的页面分级方法主要考虑一个页面的入度,即通过进入该页面的页面等级得到。同时在将一个页面的等级值传递时,采用平均分配方法传递到所有它所指向的页面,即每个从它链接处的页面等分它的等级值。
(2)基于随机冲浪模型的页面等级值
        设u为一个Web页,Bu为所有指向u的页面的集合,Fu为所有u指向的页面的集合。假设用户按着概率d随机单击一个超级链接来继续浏览页面,则基于随机冲浪模型的页面等级值可以通过下式计算:

        d的经验值被很多文献推荐为0.85或0.5,这样能最大程度保证等级值的传递一直顺利地进行下去,避免出现中断或者被无限放大。
2、PageRank算法
(1)基本概念
        PageRank算法的核心部分可以从一个有向图开始。最典型的方法是根据有向图构造一个邻接矩阵来进行处理。邻接矩阵A=(a(i,j))中的元素a(i,j) (∈[0,1])表示从页面j指向页面i的概率。
        基本的PageRank算法在计算等级值时,每个页面都将自己的等级值平均地分配给其引用的页面节点。假设一个页面的等级值为1,该页面上共有n个超链接,其分配给每个超链接页面的等级值就是1/n,那么就可以理解为该页面以1/n的概率跳转到任意一个其所引用的页面上。
        一般地,把邻接矩阵A转换成所谓的转移概率矩阵M来实现PageRank算法:

        其中,Q是一个常量矩阵,最常用的是Q=(q(i,j)),q(i,j)=1/n.
        转移概率矩阵M可以作为一个向量变换矩阵来帮助完成页面等级值向量R的迭代计算:

(2)伪代码
 
(3)例题


3、权威页面和中心页面
(1)基本概念

 ① 权威页面是指包含需求信息的最佳资源页面;
 ② 中心页面是一个包含权威页面链接的页面。

(2)HITS技术组成

 ① 基于一组给定的关键字,可以找到相关的页面(有可能相当多);
 ② 权威页面和中心页面与上述页面有关,具有最高权重的页面被返回。

(3)HITS伪代码
 

 
 

  • 11
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

有为肥宅

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值