第4章 XML 聚类研究

4.1 概述

将自动聚类技术用于Web信息检索结果的类别划分,将检索结果依据内容划分为相应的类别,具有相似特征的文档放在同一组,以便于用户缩小查找范围。

4.2 聚类分析基础

所谓聚类就是将数据点划分为若干个类或簇,使得同一类中的数据点之间具有较高的相似度,而不同类中的数据点之间具有较高的相异度。

1)基于划分的方法:k均值算法和k中心点
2)基于层次:按数据分层组织为若干聚类簇,并形成相应的一棵以簇为节点的树来进行聚类。
3)基于密度的方法:从数据对象的分布密度出发,把密度足够大的区域连接起来,从而能够帮助发现具有任意形状的聚类簇。
4)基于网格的方法:基于网格的聚类方法利用多为网格数据结构,把数据对象空间划分为有限数目的单元,从而构建一个可用于进行聚类分析的网格结构。
5)基于模型的方法:试图优化给定数据集与某些数学模型之前的拟合度。

4.3 XML文档聚类

传统的XML文档聚类方法:基于树的表示方法和基于向量的表示方法(广泛关注)。
研究对用于文本文档的文档向量进行扩展,使其包含XML的结构特征。两种已有的XML文档特征方法:
1)将结构特征与内容特征结合的表示方法。
2)只考虑结构特征的表示方法。

4.4 用聚类技术改进XML语义检索

4.4.1 研究背景

对聚类技术首先对XML文档聚类,然后计算查询与各XML聚簇之间的相似性,找到与查询最相似的聚簇,XML语义检索系统在这个相似聚簇中检索与各个查询项匹配的节点集,并检查匹配节点集之间是否予以相关的。这样匹配节点集的数量会大大减少,语义相关的节点对也将会减少。

4.4.2基于XML文档路径的特征向量矩阵

我们可以从所有XML文档中提取出长度小于或等于L的所有路径,这些路径作为XML文档集的特征。

XML文档 p1 p2 p3 p4 p5 p6 p7 p8 p9
doc1 1 1 1 1 0 0 0 0 0
doc2 1 0 0 0 1 1 1 0 0
doc3 1 0 0 0 0 0 0 1 1

p1=University/teacher/name
p2=University/teacher/gender
p3=University/teacher/age
p4=University/teacher/email
p5=University/teacher/articles/title
p6=University/teacher/articles/publish
p7=University/teacher/articles/indexedby
p8=University/teacher/course/coursename
p9=University/teacher/articles/time

4.4.3 偶图及其邻接表示

两种表示方式而已

4.4.4 相似度计算

sim(x,y)={N(x)N(y)N(x)N(y)0

4.4.5 改进的XML聚类算法及其实验分析

输入:基于路径的XML文档偶图的邻接表
输出:聚类结果
1)在XML文档节点列表中,每个文档被认为是一类,用Ci标识。
2)用公式计算文档对(聚簇对)之间的相似度。
3)找到最近的文档对(聚簇对)
4)合并(Ci&Cj)
5) 如果max(sim(Ci,Cj))>t(近似度最小的阙值),则转向步骤2,否则,停止返回。

4.4.6 基于聚类技术的XML语义检索的处理

1)查询和聚簇之间的相似性计算
定义1:如果XML文档聚簇C包含的路径P包括查询Q的标签l,我们就认为P和l是相同的,否则就认为它们是不同的。
2)语义查询过程。
对XML文档进行聚类后,通过计算查询向量和聚簇之间的相似性,可以找到与查询最相似的聚簇,用C表示,然后XML语义检索仅需要在属于C类别的XML文档集中进行查询匹配。

4.5 基于谱分析的XML文档聚类方法

谱聚类根据样本间的相似关系建立亲和矩阵,通过求解拉普拉斯矩阵的特征向量找出数据样本间的内在联系。

4.5.1 谱聚类基本原理和算法

4.5.1.1 谱聚类与图划分问题

聚类的目标是将n个点分成k个簇,使得同一簇中的数据点比较相似,不同簇中的数据点相异。而谱聚类是对图划分准则的逼近。

4.5.1.2 相似矩阵、度矩阵及Laplacian矩阵

1、相似矩阵W, Wij 表示两点之间的相似度: Wij=exp(||sisj||2/2δ2)
2、将相似矩阵的每行元素相加,即得到该顶点的度,以所有度值为对角元素构成的对角矩阵即为度矩阵D。
3、Laplacian矩阵L=D-W

4.5.1.3 谱聚类算法

谱聚类算法的基本步骤如下:
1)根据某种相似度定义,由原始的数据集构建相似度矩阵W。
2)由相似度矩阵构建拉普拉斯矩阵,并求解它的某些特征向量。以这些向量作列,构建矩阵H。
3)用k-means等经典聚类算法将H中的各行聚成k个簇。最终将点 xi 分到簇 Aj 中,当且仅当H中 xi 对应的第i行在k-means中被分配到簇 Sj 中。

4.5.2 基于谱分析的XML文档聚类方法

4.5.2.1 概述

谱聚类方法从数据中获取归一化换脸矩阵来对数据进行划分。多路谱聚类NJW方法是一种广泛使用的谱聚类方法。

4.5.2.2 XML文档的路径特征向量

抽取XML文档集中所有路径长度小于或者等于L的路径,L是一个指定的参数值。

4.5.2.3 谱分析方法运用于XML聚类

NJW算法:
1)构建关联矩阵A
2)计算度矩阵D和规范化契合矩阵 L=D1/2AD1/2
3)定义 l=λ1>=λ2>=λk 为矩阵L的k个最大特征值, v1,v2,,vk 为相应的特征向量。构建矩阵 V=[v1,v2,,vk]Rn×k ,这里的 vi 为列向量。
4)将V中每行进行标准化使其具有单位长度从而形成矩阵Y( Yij=Vij/(ΣjV2ij)1/2 )。
5)将矩阵Y中每行视为 Rk 中一点,并且通过K-Means聚类算法将其划分为k个聚簇,从而得到原始数据集最后的聚类结果。

4.6 改进的多路谱聚类算法

4.6.1 概述

对于多路谱聚类算法,计算两点间相似度使用的是高斯核函数。虽然该函数使原始的聚类方法取得了一些成功,但其中存在一个明显的问题,即如何确定δ。本节提出一种亲和矩阵的构造方法,即利用近邻关系和一种近邻传递原则更新初始的相似度矩阵,得到最终的亲和矩阵,劲儿提出改进的多路谱聚类算法,以适应于分布结构复杂的数据集的聚类。

4.6.2 相关概念

距离矩阵B:S中的第i个点和第j个点的欧拉距离。
相似矩阵W: si sj 的相似度
近邻关系R:如果 bij 小煜距离阙值,则认为两点满足邻近关系。
近邻关系矩阵N:R构成的矩阵。
近邻传递原则: (si,sj)Rsj,skRsi,skR

4.6.3 基于近邻传递原则构造亲和矩阵A

1)计算两个数据点间的欧拉距离,形成相似度矩阵W。
2)初始化近邻关系矩阵N中的元素值为0,确定矩阵B中元素的近邻关系
3)根据近邻关系传递原则更新近邻关系矩阵N、相似度矩阵W
4)更新后的相似度矩阵W即为最终得到的亲和矩阵A。

4.6.4 一种改进亲和矩阵的多路谱聚类方法

多路谱聚类算法:
1)构建亲和矩阵A
2)构建拉普拉斯矩阵 Lsym=D1/2AAD1/2A
3) 计算拉普拉斯矩阵Lsym的前k个最大特征值以及前k个特征值对应的特征向量构成矩阵V
4)对矩阵V进行单位化处理,得到矩阵Y
5)将Y中每一行视为 Rk 空间中的一个点,使用K-均值法,划分为k个簇,如果Y矩阵中的第i行属于第j簇,则原始数据集S中的点 si 也属于第j个簇。

4.7 基于改进的多路谱聚类算法实现对XMl文档的聚类

实际情况下由于Web上XML文档表示的任意性及XML文档中元素标签存在同义词等现象,使得两篇隐含相似的XML文档d1和d2根据已有的特征向量表示法和相似度计算方法计算出的相似度很小或为0,影响了多路谱聚类方法中相似度矩阵的真实性,从而影响了聚类个数的正确性和聚类结果的准确合理性。

4.7.1 XML文档的路径特征向量表示

从XML文档集中抽取长度为L的XML路径后,对其中元素标签进行处理,统一用词的原型表示,并去掉包含于其他路径中的子路径,然后将XML文档用XML路径构成的特征向量表示。

4.7.2 文档相似度和邻近关系的确定

1)相似度: sim(di,dj)=didjdidj
2)邻近关系N:初始相似度矩阵W中的 wij 大于阙值,则XML文档 di dj 属于邻近关系。

4.7.3 用近邻传播算法修正初始相似度

1)将初始近邻关系矩阵N中的行向量,按其所含有的1的数量,从多到少进行排列;进而得到排序后的XML文档集,并置换初始相似度矩阵W和初始近邻关系矩阵N中的对应的行和列,得到相似度矩阵W’和近邻关系矩阵N’。
2)从排序后的XML文档集中的第一个XML文档开始,确定第一个XML文档与排序后的XML文档集中其余文档的隐含相似关系;若这两个XML文档那个是隐含相似关系,则修改近邻关系矩阵N’中对应这两个XML文档的元素为1;修改相似度矩阵W’中对应这两个XML文档的元素为这两个XML文档的元素为这两个XML文档分别和另一个XML文档的对应元素中小的元素;重复上述步骤,直至最后一个XML文档。

4.8 用相关反馈信息知道XML聚类

4.8.1概述

相关反馈技术是用户对信息检索结果进行相关性判定,系统根据这些判断对查询进行处理,重新检索从而提高最终结果的质量,主要用于查询扩展及个性化检索系统中。本节提供一种只需用户输入与查询需求相关和不相关的少部分反馈信息来指导优化XML检索结果聚类的方法,以提高XML检索结果的分类效果。

4.8.2 XML文档与XML文档聚簇的路径特征向量表示

1)XML文档的路径特征向量表示:路径抽取和前文中一致。
2)XML文档聚簇的中心特征向量 Cij=Σmi=1dijm

4.8.3 基于用户的相关性反馈对XML检索结果进行有指导的聚类

4.8.3.1 初始划分的确定

1)不相关文档的类别划分:将第一个不相关文档划分为一类,该文档的特征向量作为该类的聚类中心向量;对其余的t-1个不相关文档重复以下过程。
2)确定初始划分:计算每个相关文档类和不相关文档类的聚类中心向量之间的相似度。

4.8.3.2 基于用户反馈的K-means聚类优化算法

1)将初始化分结果中k个类别的聚类中心向量作为初始聚类中心;
2)循环计算矩阵Z中每个文档与k个聚类中心的相似度;
3)除d个不相关类别及特殊类 Cq 外,重新计算各个聚类的均值(中心对象)。修改除了不相关文档类以外的其他类别的聚类中心向量。
4)重复第2步和第3步,知道满足终止条件。

4.9 一种基于用户查询日志的高效XML聚类算法

4.9.1 Web数据挖掘简介

Web数据挖掘技术可以分为三类:Web内容挖掘、Web使用模式挖掘以及Web结构挖掘。

4.9.1.1 Web内容挖掘

1)预处理,包括粉刺、过滤虚词和合并词根等。
2)特征抽取,包括过滤特征、计算权值和特征合并等步骤。
3)数据转换,将文档转换为以关键词的权值表示的向量,对于XML文档还要考虑结构表示的向量。
4)利用数据挖掘方法对文档向量进行分析,具有文档的分类、关联分析、聚类分析等。
5)模式提取,根据数据挖掘方法和计算结果,获取各类知识,包括分类模式、聚类模式和关联规则等。

4.9.1.2 Web使用模式挖掘

Web使用模式挖掘主要有两个方面:用户访问模式挖掘和个性化挖掘。用户访问模式挖掘通过分析Web使用记录来了解用户的访问模式和倾向,个性化挖掘则倾向于分析单个用户的偏好。
Web使用模式挖掘的过程可分为以下两个阶段:第一阶段包括数据继承过程在内的内容,从功能上包括数据清洁、事务处理和数据集成等;第二阶段则主要是进行模式发现和分析,利用格式化好饿数据进行关联规则分析、序列模式发现、进行访问路径分析及分类聚类分析等。

4.9.1.3 Web结构挖掘

挖掘Web结构的目的是Web的结构和页面的结构以及蕴含在这些结构中的有用模式;对页面及其连接进行分类和聚类,找出权威页面;发现Web文档自身的结构,这种结构挖掘能更有助于用户的浏览,也有利于对页面进行比较和系统化。后两种方式被成为与内容无关的Web挖掘。

4.9.2 与内容无关的聚类算法

基于用户的查询日志,提出的聚类算法基于如下两种观察:1)有相同信息需求的用户可能使用不同的查询关键词,但他们会从搜索结果中得到相同的URL,这说明查询请求具有相关性;2)有相同查询请求的用户可能会选择不同的URL,这说明URL具有相关性。相似性定义修改为:

sim(x,y)=Cx(N(x)N(y))Cx(N(x))+Cy(N(x)N(y))Cy(N(y))20

4.9.3 存在问题

该方法不能区分x、y对同一个相邻点的访问次数(权值)的差异大小,从而不能给出合理的结果。

4.9.4 基于改进Hamming距离的高效聚类算法

4.9.4.1 Hamming距离

Hamming距离:Hd(X,Y)= ||X||i=1|XiYi|

4.9.4.2 将数据集表示为偶图

1)由C中收集唯一的Query集合。
2)由C中收集唯一的URL集合。
3)对于n个Query中的每一个,在G中建立一个白色顶点。
4)对于m个URL中的每一个,在G中建立一个黑色顶点。
5)如果Query q与URL u同时出现,则在其对应的白色和黑色顶点之间建立一条边,计算他们同时出现的次数count,并将其结果作为权值记载在对应的白色和黑色顶点之间。

4.9.4.3 改进的Hamming距离公式

Hdxy{Σ|N(x)N(y)|i=1|wxe(i)Cx(N(x))wye(i)Cy(N(y))|

4.9.4.4 基于改进Hamming距离的聚类算法

1)计算G中没对白色顶点Hamming距离。
2)合并具有最小值的两个白色顶点q1,q2,并将二者的权值相加作为新顶点的权值。
3)按公式计算G中每对黑色顶点的Hamming距离。
4)合并具有最小值的两个黑色顶点
5)终止条件不成立转步骤3

终止条件min{Hd{q1,q2}}>t,min{Hd{u1,u2}}>t

4.9.4.5 算法分析

该算法的一次迭代中,白色节点的聚类和黑色节点的聚类同时进行,可以检查出原图中不明显的相似节点,例如白色节点a和c的相似度低于阙值时,两者不能归为一类。但经过黑色节点1和2聚类后,重新计算a和c的相似度,这时a和c又有可能变得相似。

猜你喜欢

转载自blog.csdn.net/u012889441/article/details/65626875