学术文化网:本站代理期刊可作为职称及学位评审依据;并代写(职称、本科、硕士、博士)论文,代写代发论文一条龙服务;保证原创,保证质量,100%通过,保密服务

学术文化网

重点推荐省级国家级期刊、北大中文核心、CSSCI、EI、SCI发表,稳妥操作,速度快,包发表。有意向联系客服咨询。
论文代写:十年专业服务品质,全部由期刊编辑、硕士、博士撰写;保证原创、版权归您;保证通过、否则全额退款。代写论文申请表
论文发表:与百家优秀期刊合作,代理审核组稿,论文发表涵盖所有专业领域,全部正刊,保证出刊,否则全额退款。代写代发论文申请表
业务合作:因业务发展需要,诚招优秀写手合作,要求硕士以上学历,不限专业,另诚征优秀期刊代理合作,具体详谈。QQ:415835425 代写论文写手申请表
当前位置: 主页 > 工科论文

基于用户访问行为与内容的用户聚类算法的研究与实现

 基于用户访问行为与内容的用户聚类算法
的研究与实现
肖宗花,林友芳**
作者简介:肖宗花,(1988-),女,硕士研究生,数据与知识工程。
通信联系人:林友芳,(1971-),男,教授,数据与知识工程。E-mail: yflin@bjtu.edu.cn
5 (北京交通大学计算机与信息技术学院,北京 100044)
摘要:用户聚类算法作为对网络用户喜好进行挖掘的重要手段,有效地找出用户间的共同兴
趣以及单个用户的特殊喜好,被广泛用于推荐系统等应用中。本文首先介绍了用户访问行为
与内容的采集,然后详细描述了如何对数据进行分词、统计等数据预处理得到用户的特征向
量。最后设计并实现了相似性函数、k-means 和谱聚类等算法对用户特征向量进行聚类处理,
10 并采用评价指标对聚类结果进行评价。经过实验,得出了基于访问行为和内容的特征向量的
聚类结果的有效性更好。
关键词:知识工程;用户聚类;访问行为;访问内容;谱聚类
中图分类号:TP182
15 The Research and Implementation of User Clustering
Algorithm Based on Users' Accessing Behavior and Content
XIAO Zonghua, LIN Youfang
(School of Computer and Information Technology, Beijing Jiaotong University, Beijing 100044)
Abstract: As a important method to mine the preference of the web users, the user clustering
20 algorithms aiming at finding their common interest and the personal sympathies are widely used,
such as recommendation system and so on. Firstly, the collection of the web users' accessing
behavior and content is introduced in this paper. Then, the method to get users' feature vectorword
after segmentation and word statistics is described in detail. Finally, the algorithms which aim at
clustering the feature vectors such as k-means, similarity function and spectral clustering are
25 designed and implemented and the result is evaluated by the evaluating indicators.After the
experiments, the clustering result based on both accessing behavior and accessing content is better.
Keywords: knowledge engineering; user clustering; accessing behavior; accesing content; spectral
clustering
30 0 引言
随着网络技术的不断发展,用户对网络的体验要求也越来越高。在日常生活中,可以发
现在浏览网页的时候,很多网站都会给用户推荐各种产品。那么,如何能够做到更加有效的
推荐就需要进行进一步研究。那么,从海量般的数据中获取更加有价值的信息,就需要用到
数据挖掘技术。
35 根据现阶段的文献阅读和实验可以发现,已经存在很多利用web 用户的行为数据提取
有用信息的方法。目前,研究浏览行为的方法比较多,比如基于用户的浏览路径[1],基于用
户的搜索内容[2],基于e-mail 系统[3]等。
而且,web 用户聚类的目的是找到用户的兴趣点,以便于用于实际应用中,如预测、推
荐等。考虑到用户访问的网页,与web 用户密切相关的主要有两个:①浏览内容,即web
40 用户浏览的网页中的具体文本;②浏览行为,即web 用户在浏览网页时所进行的各种操作
和浏览时间等。
另外,文献[4]提到,web 用户具有以下特点:①具有相似的浏览兴趣的web 用户有相似
 的浏览行为;②具有相似兴趣的web 用户会浏览相关的网页;③在短时间内,web 用户的
访问模式不会有太大的变化。基于用户的这些特点,可以发现对用户的浏览行为和浏览内容
45 进行分析,可以发现用户的访问模式,而且这个访问模式在短时间内不会发生太大的变化,
这为本研究提供了理论支持。
1 实验数据的采集
插码数据采集技术是一种web 工具,主要是对宿主站点的访客行为数据进行采集,获
取web 日志,然后对采集到的数据进行统计和分析,谷歌的产品GA(Google Analytics)就
50 是一个很好的实例。这种工具使用起来很方便,只要在网站的页面上加入一段特定的代码就
可以获取到需要的数据,它的采集功能是用Ajax 来实现的。在收集数据时,在宿主网站的
页面上插入一段JavaScript 统计代码,在用户访问网站时,这段代码就会被执行,这时就可
以得到用户在该网站的行为信息。本文中,收集到的数据包括写日志时间、url、ip、站点名
称、站点id、栏目、用户id、用户行为、用户进入页面的时间等。那么,如何判断在不同时
55 间段访问的用户是否是同一用户呢?cookie 可以解决这个问题。GA 的JavaScript 代码会把
web 用户的信息存储到cookie 中,并存放在本地中,这样就解决上面的问题了。GA 会把收
集到的数据发送到Google 数据服务器中,再进行数据处理和呈现。根据GA 的原理,可以
根据具体要求撰写JavaScript 统计代码,利用cookie 收集需要的用户浏览行为数据。
通过数据采集技术采集到的用户浏览行为的数据,再进行处理得到url。再根据url,使
60 用网页内容抓取技术来抓取文章内容。在抓取网页内容时,首先根据url 把网页的内容加载
下来,然后根据html 标签对加载下来的网页内容进行过滤,得到需要的内容。最后把得到
的网页内容与对应的url 入库。
2 数据预处理及特征向量的获取
2.1 行为日志的处理
65 1. 获取浏览次数
浏览次数指的是某用户对某个页面在某段时间内的访问次数。以下是用户访问行为日志
的数据结构:
表1 行为日志的数据结构
Tab. 1 The data structure of behavior log
2012-02-26 15:05:05
_cl:wt_index
_uuid:0049cd74adf450c55rrk9opsr1qttpss
_do:pv\(\)
_tm: 1330239905000
_tt:%E7%BD%91%E4%B8%8A%E8%90%A5%E4%B8%9A%E5%
8E%85_%E6%B2%B3%E5%8D%97%E7%A7%BB%E5%8A%A8
itemid:9f8f91b17b2ff9637dc92ab9a1759831_11
70
首先,对web 日志进行处理。在linux 系统下,过滤出_cl 值仅为news 或mblog 的记录。
这样就得到了只包含_uuid 和itemid 这2 个属性的记录。然后,统计每对_uuid、itemid 出现
的次数,也就是某用户访问某个页面的次数。
2. 获取页面内的操作数
75 页面内的操作数指的是某用户访问一次某个网页时所产生的操作数。
① web 日志进行处理,在linux 系统下,获取_cl 值为news 或mblog 且包含_uuid、itemid、
 _do 这3 个属性的行。
② _do 属性的字符串进行解析处理,得到分隔的行为。
③ 统计每个_uuid、itemid 对应的操作数,即_uuid 的用户在itemid 页面中的操作数。
80 3. 获取浏览时间
浏览时间指的是某用户访问一次某个网页需要的时间,通常以秒为单位。下面是获取浏
览时间的具体步骤:
① 对web 日志进行处理,在linux 系统下,获取包含_uuid 和_tm 这2 个属性的所有行。
② 使用sort 命令,依据_tm 对其进行从大到小依次排序。
85 ③ 统计每个_uuid 和_tm 对的浏览时间。简单地说,根据步骤②中的排序,对同一个
_uuid,用后一条记录的_tm 减去前一条记录的_tm,得到的间隔就是该用户对该网
页的浏览时间。
由于用户在网页上的停留时间很难确定,只能通过上述方法粗略地计算用户的浏览时
间。在计算浏览时间时,需要注意几种特殊情况。
90 ① 当用户对某个网页的两条浏览记录之间的时间差大于30 分钟时,那么就取该用户
在该段时间浏览网页的平均时间;
② 某条记录是该用户在这段时间对某个网页的最后一条访问记录时且不是第一条时,
无法获取浏览时间,为了降低该条记录的影响,就取该用户在该段时间浏览网页的
平均时间;
95 ③ 当用户对某个网页只有一条浏览记录时,无法计算均值,该用户的不确定性就更大。
如果无法将该用户删除,那么从现有的最大值和最小值之间,随机取一个整数值作
为该记录的浏览时间。web 日志的_tm 值是以秒为单位生成的,默认用户在同一秒
内只能打开同一个网页,那么_uuid 和_tm 可以唯一确定一条记录。
4. 获取用户与内容的关系
100 首先,对log 日志进行过滤。在linux 系统下,过滤出_cl 值仅为news 或mblog 的记录。
这样就得到了只包含_uuid 和itemid 这2 个属性的记录,得到用户与浏览内容之间的关系。
然后,通过编程处理,获取处理后的所有itemid,并保存在文件中。
2.2 访问内容的处理
从数据库中获取用户的浏览内容,进行分词、筛选等处理,得到特征词。
105 ① 根据获取到的所有itemid,分别从DB 中读取文章标题和文章内容,并分别写
在”itemid”_title.txt 和”itemid”.txt 中。
② 根据获取到的_uuid 和itemid 之间的对应关系,得到用户的所有浏览内容。
③ 调用ICTCLAS50 接口分别对文章标题和用户的浏览内容进行分词处理。
④ 根据ICTCLAS 的汉语词性标注集,通过程序处理,把除名词、动词、形容词之外
110 的词性的词过滤掉。
⑤ 由于日常生活中,对单个字的兴趣不大,所以进一步过滤处理,把只包含一个汉字
的词和ICTCLAS 的部分错误分词去掉,如数字、字母、符号等。
这样,就得到的一个个单独的词语就是web 用户的浏览内容,被称为特征词。再对特
征词进行统计,获取所有的特征词以及每个用户中每个特征词出现的次数。通过以上步骤,
115 完成了用户浏览内容的进一步处理。接下来就需要用前面介绍的向量空间模型,求得每个特
征词的权值,获取代表用户的特征向量。
 2.3 特征向量的获取
首先,获取基于内容的特征向量,把当个用户的浏览内容看成一篇文档,采用常用的向
量空间模型[5,6],具体步骤如下:
① 根据VSM 模型的权值公式i i log
i
w tf D
df
⎛ ⎞
= × ⎜ ⎟
⎝ ⎠
120 ,首先,统计出D,也就是用户数。
② 求出i tf ,它只是局部信息,也就是item 在该用户所有文章中出现的概率。
③ 求出i df ,它是全局信息,是指出现item 的文章的数目。
④ 最后求出i w 。
⑤ 获得基于内容的特征向量。
125 然后,获取用户的兴趣度。可以从web 日志中获取到3 个主要的信息:用户在某个网
页的浏览时间、用户在某个网页上的动作数和用户对某个网页的访问次数。这里,把每个动
作简单处理,都同等对待。如何将这3 个方面的行为结合起来,形成兴趣度呢?采用简单的
多元线性方程来表示。这样,这3 个方面的行为就可以抽象成方程中的自变量,而兴趣度就
是该方程的因变量。因此,可以把用户的浏览行为抽象成一个简单的数字来表示,即兴趣度。
130 根据常识得出,上面3 个自变量与因变量存在正比关系,但是很难确定到底哪个更能体
现用户对页面的兴趣,这几乎也无法确定。因此,将这3 个自变量视为同等重要,也就是说
学术论文网Tag:代写硕士论文 代写论文 代写MBA论文 代写博士论文
本站郑重声明:
  1、我们与数十所知名高校博士强强联手,保持常年稳定合作关系,论文质量更有保证;;
  2、写作领域涉及所有专业,实力操作,出稿更快,质量更高,通过率100%;
  3、所有代写文章,全部原创,包检测,保证质量,后续免费修改,保证通过;
  4、信誉实力服务,专业代写毕业论文,职称论文,硕博士论文,留学生论文,成熟操作;
------分隔线----------------------------
栏目列表
联系我们
服务承诺
推荐内容