1、57摘要:针对Web挖掘中的用户相似性问题,本文提出了一种基于相对曼哈顿距离的用户聚类算法。首先根据Web服务器日志数据信息,建立URL和用户关联矩阵,元素值分别为用户的访问次数及访问时间,并以此构建平均时间矩阵。在此基础上利用相对曼哈顿距离给出客户之间的距离,确定阈值后进行聚类。最后定义了类关联度,对聚类结果进行了确认和筛选,算例表明该算法具有良好的可操作性和准确性。关键词:web挖掘;用户聚类算法;相对Manhattan距离 引言大型网站的Web服务器记录了所有用户的浏览数据,这些数据包含了客户的详细信息以及客户的个性访问资料。对Web日志数据进行分析挖掘,寻找具有共同特征和访问规律的用户
2、就是Web挖掘。Web挖掘包含多种,其中使用挖掘是比较重要的一种形式,它是研究客户网页浏览行为的技术和工具。了解用户的浏览兴趣可以帮助网站管理者提高Web服务质量和改善站点结构,从中挖掘出电子商务的潜在客户,提高互联网信息服务的质量和水平,并改进网站服务器系统的结构和性能。Web使用挖掘技术的一项重要研究内容就是对Web用户和站点URL进行聚类,也就是通过用户对网站的使用信息进行处理和研究,找寻出具有相似访问兴趣爱好的客户群体和客户共同感兴趣的站点URL,从而可以判别和改善站点的结构,这在电子商务的市场分割和为客户提供个性化网络服务中都发挥着非常明显的作用1-3。Web聚类算法的研究是近年的热
3、点,学者们在这方面取得了许多重要的成果4。其中以Han为代表的基于数据立方体的方法和以Chen为代表的基于Web事务的聚类方法是比较经典的方法。但是这两类方法均要进行用户识别和会话识别,这就要受到本地浏览器缓存、防火墙和代理服务器等的影响,显然这些方法存在较大的局限性。另外还有将数据集表示为偶图的形式,进行迭代聚类,聚类时需要有针对性的定义节点相似性函数。基于距离的聚类方法是一种比较新颖的方法,在文3中,作者构建了网页用户关联矩阵,并利用Hamming距离给出了一种经典的聚类算法;而文6在5定义相似性基础上利用归一化后的Hamming距离计算公式作为判断节点相似性的指标,从而给出了新的方法。此
4、外还有诸如分层聚类算法、基于粗糙集理论的聚类算法等7。但这些方法基本上都要区分用户会话,处理起来比较麻烦,而且存在较大局限性、准确性也有待提高。本文主要采用构建网页用户关联矩阵,利用计算Manhattan距离的方式对用户进行聚类。1、用户浏览行为的矩阵表示通过对Web服务器的日志数据的整理分析,不难得到一基于相对曼哈顿距离的Web聚类算法研究文李彬段时间内客户对网站所有网页的浏览情况,包括访问了那些URL,访问的次数,以及相应的访问时间,这些信息对于分析用户行为特性,挖掘共同客户群体具有重要意义。用户浏览时间矩阵定义如下,其中p为网站URL的数量,q为一段时间内访问该网站的用户数量,tij为第
5、j个用户在一段时间对第i个URL的访问时间,于是可建立用户浏览时间矩阵为Tpq=(tij)pq。 用户浏览点击矩阵定义如下,hij为第j个用户在一段时间对第i个URL的访问次数, Hpq=(hij)pq。在用户点击矩阵中,第i行H(i,.)表示了所有客户在一段时间对第i个URL资源的访问情况,而第j列H(.,j)表示了第j个客户在一段时间对所有URL资源的访问情况。因此,衡量列向量的相似特性可以评价客户的共同性,形成特定用户聚类;而分析行向量的相似性,可以对相关URL进行聚类,为网站设计者提供需求支持。在文3中作者首先将点击矩阵标准化后利用Hamming距离进行聚类,最后对聚类结果利用连接强度
6、进行确认,笔者之前在此基础上利用相对Hamming对此法进行了改进. 在文8中作者利用用户点击矩阵和离散化的时间矩阵进行聚类和结果确认。在这里我们不单纯的考虑点击矩阵或时间矩阵,而是将两者结合,考虑平均每次的浏览时间,这样更能科学的挖掘出相似性客户。利用前面定义的 Tpq, Hpq很容易得到下面的平均浏览时间矩阵:这里 ,表示第j个客户在一段时间内访问第i个URL的平均时间。两个用户浏览行为的相似性应理解为有尽量多的共同的访问对象和访问目的,如两名教学管理人员可能经常会访问教务处、教学管理栏目的信息,而科研型教师会更多关注科研处的文件和通知信息,党务工作者更多关心的是组织部、宣传部的信息。很多
7、聚类算法直接将点击次数标准化,而不管点击的数量有多大,这显然是不科学的. 直接考虑浏览时间也不恰当,而利用平均访问时间能较好回避这个问题,两个相似的客户的平均访问时间的列向量应该非常接近,即距离相对较小,这是我们考虑的重要因素.曼哈顿距离也叫出租车几何,是十九世纪的赫尔曼闵可夫斯基提出来的,是一种使用在几何度量空间的几何学用语,用以标明两个点上在标准坐标系上的绝对轴距总和。这里推广到p维空间中两个点的情形。基金项目:四川省教育厅青年基金资助项目(12ZB238)58 定义1:两个p维向量AT(.,r) 和AT(.,s)的Manhattan距离定义为:.显然两个客户对应列向量的Manhattan
8、距离越小,其相似性越大;对于URL聚类则是行向量的距离越小,两个URL更具有相关性。2、新的聚类算法针对前述分析,本文提出一种基于相对Manhattan距离的用户聚类算法,并利用关联强度对聚类结果进行筛选确认:1)、根据Web日志数据确定用户浏览时间矩阵和用户点击矩,进一步确定平均时间矩阵 ,其中 ;2)、计算 ATpq每个列向量的元素和 ,j=1, p;3)、构造相对Manhattan距离矩阵 , mij=dij /sj, 1i, jn,其中表示用户i和用户j所在列向量的Manhattan距离,显然 是非负对称矩阵,对角线元素均应为0;4)、计算阈值 ,AvAT表示 中上半三角形(不含对角元
9、素)元素的平均值;5)、在矩阵 中,对第i行,即对每个用户i,若 mijavAT,则将用户i和满足此条件的所有用户j归为一类Ci, i=1, q,特别如果没有这样的j,则将i自己作为一个类,于是得到一个聚类的集合,记为 S=C1, C2, Cq;显然在这里每一行,即每一个用户都对应产生一个聚类,这里面可能有些聚类是重复或具有包含关系的,需要进行筛选确定。6)、按照下式对聚类S中每个成员计算和类的关联程度 (Ci, S),小于平均值或关联度较低的成员可以剔除掉,其中|S|为聚类S中的成员数:3、算例图1给出了一个具有10个URL的Web站点拓扑结构,其中A、B、J代表各个页面。一段时间内,7个用
10、户访问情况统计信息见表1,其中第一个数代表一段时间内该用户访问对应网页的次数,第二个数据为访问该页面总的时间。表1 某段时间内7个用户对10个URL的访问情况图1 Web拓扑结构示意图算法应用过程如下:1) 根据表1数据确定用户点击数量矩阵和浏览时间矩阵分别如下:2) 根据上述矩阵很容易算出平均时间矩阵,再对列归一化得到如下矩阵:3) 对该矩阵任意列向量之间求曼哈顿距离,构造如下距离矩阵:4) 利用距离矩阵计算出阈值AvAT= 1.5181。5) 于是根据算法步骤5)可得到如下聚类结果:S1=User1, Us-er2, User4; S2=User2, User5; S3=User3, Us
11、er4, User6, User7。 6) 对于聚类S1, 根据算法步骤6)计算得到User1, User2, User4的关联度指标依次为0.0913,0.0292,0.0823,可见User2的关联度较低,从S1中剔除该用户;对于聚类S3,计算得到User3, User4, User6, User7的关联度指标依次为0.1664, 0.1044, 0.1186, 0.1138,可见User4的关联度相对较低,可以剔除该用户。因此最终的聚类结果为S1=User1, User4; S2=User2, User5; S3=User3, User6, User7。参考文献:1 Mobasher B
12、,Cooley RCreating adaptive Web sites through Usage-based clustering of URLsCProc of the 1999 IEEE Knowledge and Data Engineering Exchange Workshop.New York:IEEE Press,1999: 32372 杨怡玲,管旭东,尤晋元基于页面内容和站点结构的页面聚类挖掘算法J软件学报,2002, 13(3): 4674693 宋擒豹,沈钧毅. Web日志的高效多能挖掘算法J. 计算机研究与发展 2001, 38(3): 328333作者简介: 李彬
13、,硕士、乐山师范学院智能信息处理及应用实验室工作,主要研究方向:数据挖掘,网络安全。URL User1 User2 User3 User4 User5 User6 User7A 30,325 35,260 50,360 66,380 50,285 52,350 35,420B 25,300 28,256 0,0 45,400 46,265 0,0 0,0C 0,0 0,0 30,280 5,115 0,0 35,720 30,650D 10,350 0,0 0,0 30,620 0,0 0,0 0,0E 0,0 16,650 0,0 0,0 28,550 0,0 0,0F 0,0 0,0 15,450 2,26 0,0 20,950 26,860G 0,0 0,0 0,0 0,0 0,0 0,0 8,450H 0,0 0,0 0,0 0,0 0,0 0,0 0,0I 0,0 0,0 0,0 0,0 10,680 0,0 0,0J 0,0 0,0 0,0 0,0 0,0 5,350 0,0