第1期 柯佳,等:基于用户兴趣学习的智能合作过滤模型的研究 *61* aihe),并存储Q,值; 兴趣模型为PM.=((信息过滤,0.2),(中文, 7)ss',根据用户上网行为,产生可能出现的 0.1),(机器学习,0.3),(Agent,0.4},此时更准确 各个兴趣项a',并以缺省值存储O(s,a); 地反映了用户的兴趣程度 8)若学习Agent认定该项内容或网页为用户 兴趣模型建立后,根据用户的浏览行为和对搜 的兴趣项收敛于s‘状态),则存入知识库,否则转 索结果进行评价的方法,不断调整用户个人兴趣模 至步骤2)继续执行 型中关键词的权值,从而更新个人兴趣模型 3.2共同兴趣模型 3用户兴趣表示 共同兴趣模型(co-model,CM)与个人兴趣模 3.1个人兴趣模型 型具有相同的形式.设系统中已有k个用户注册.建 建立用户个人兴趣模型(personal model, 立共同兴趣模型的过程如下:查看用户ⅰ的个人兴 PM),ACFM首先采用交互法,在用户初使用本系 趣模型PM,若word.不在CM中,则添加wor 统时,要求注册用户名/口令,并回答一系列问题.系 d.,即CMU(word.,w)→CM:若word.己在 统对用户回答使用文件词频法1抽取关键词,生成 CM中,则将其权值相加.再重新计算权值使其归 用户兴趣生成树,如图2所示.树的每一节点均为抽 一.最后按权值的大小将关键词word,(u=0,1,2, 取出的用户兴趣关键词. k,j=0,1,2,排序,选择其中前1个组成 CM,t值可通过机器学习获得。 兴趣 3.3基于兴趣模型的合作过滤 设在CM中用户X和用户y有m个兴趣项是 音乐 什算机 体育 相同的,且对应m个兴趣项的兴趣度分别为Wx= {ws.1,ws.2,.ws.m wy ={wx.1,wy.2,..wy.m 模式识别 信息过滤 用户X、Y的兴趣相似程度S(x,以可按式6)计算: ∑p-wm(w-w.m S(x.y) Agent 合作过滤 内容过滤 图2用户i的兴趣生成树 (6 Fig,2 Interesting tree of user i Wx,m为用户X对兴趣项的平均评价值.w.mg 用户个人兴趣模型的建立,就是从兴趣生成树 为用户y对兴趣项的平均评价值;wx)三x,w∈ 的根节点通往叶节点的过程.文中采用关键词矢 w,j=0,m.S(x,y以越大,说明用户X和y 量来表示用户个人兴趣模型,设将用户1的兴趣 的兴趣相似程度越大.通过计算,当S(x,y以>3.5 表示为兴趣关键词集合word.1,,word, 时,y为与用户X具有最近似兴趣的那个用户 word.,其中,word.j(j=0,1,2,表示用户i 若用户'具有与用户u的最相似兴趣,那么用 的兴趣项j,n值将随着用户兴趣反馈的过程而不断 户u对关键词word,所在页面的兴趣度的预测值 变化.每一兴趣项word.,根据用户i兴趣的高低赋 为Pre(u,),计算方法为式(7)所示: 予一定的权值w,且,,=1.则用户i的个人兴 Pre(u.j)wnag +k >((w.j-w.ag)XS(u,u). 趣模型为一个二元组集合PM,={(word.1,w.), (7) (word.2,w.2),(word.m,p.}.若用户在某一 U,为对关键词word,所在页面进行评价的所 段时间内不查询某关键词,则认为对此词没有兴趣, 有用户集:k= 1 为根据用户兴趣相似度 则删除此项.用户也可直接修改关键词的权值(修改 s(u.u) r 范围是0~1的实数)以调整自己的兴趣项,系统再 S(x,以计算出的相似度权值.最后系统将预测值高 重新计算各关键词的权值,使其和归一.例如:用户 的页面推荐给用户”. u想搜索输入关键字:信息过滤,中文,机器学习,A 4 gent.用户对这几个关键词的兴趣度分别为0.2, 用户兴趣的反馈机制 0.1,0.3,0.4,可以手工进行修改,则用户u的个人 在建立用户兴趣模型后,使用隐式反馈和显式 1994-2009 China Academic Journal Electronic Publishing House.All rights reserved.http://www.cnki.neta 3 other ) ,并存储 Qt 值; 7) s ←s′,根据用户上网行为 ,产生可能出现的 各个兴趣项 a′,并以缺省值存储 Qt (s, a′) ; 8) 若学习 Agent 认定该项内容或网页为用户 的兴趣项(收敛于 s 3 状态) ,则存入知识库 ,否则转 至步骤 2) 继续执行. 3 用户兴趣表示 311 个人兴趣模型 建 立 用 户 个 人 兴 趣 模 型 ( personal model , PM) ,ACFM 首先采用交互法 ,在用户初使用本系 统时 ,要求注册用户名/ 口令 ,并回答一系列问题. 系 统对用户回答使用文件词频法[ 8 ] 抽取关键词 ,生成 用户兴趣生成树 ,如图 2 所示. 树的每一节点均为抽 取出的用户兴趣关键词. 图 2 用户 i 的兴趣生成树 Fig12 Interesting tree of user i 用户个人兴趣模型的建立 ,就是从兴趣生成树 的根节点通往叶节点的过程. 文中采用关键词矢 量[9 ]来表示用户个人兴趣模型 ,设将用户 i 的兴趣 表示为兴趣关键词集合{ wordi ,1 , …, wordi , j , …, wordi , n } ,其中 , wordi , j ( j = 0 ,1 , 2 , …, n) 表示用户 i 的兴趣项 j , n 值将随着用户兴趣反馈的过程而不断 变化. 每一兴趣项 wordi , j根据用户 i 兴趣的高低赋 予一定的权值 w i , j ,且 ∑ n j = 1 wi , j = 1. 则用户 i 的个人兴 趣模型为一个二元组集合 PM i = { ( wordi ,1 , wi ,1 ) , ( wordi ,2 , wi ,2 ) , …, ( wordi , n , wi , n ) } . 若用户在某一 段时间内不查询某关键词 ,则认为对此词没有兴趣 , 则删除此项. 用户也可直接修改关键词的权值(修改 范围是 0~1 的实数) 以调整自己的兴趣项 ,系统再 重新计算各关键词的权值 ,使其和归一. 例如 :用户 u 想搜索输入关键字 :信息过滤 ,中文 ,机器学习 , A2 gent. 用户对这几个关键词的兴趣度分别为 012 , 011 ,013 ,014 ,可以手工进行修改 ,则用户 u 的个人 兴趣模型为 PM u = { (信息过滤 , 012) , (中文 , 011) , (机器学习 , 013) , (Agent , 014) } ,此时更准确 地反映了用户的兴趣程度. 兴趣模型建立后 ,根据用户的浏览行为和对搜 索结果进行评价的方法 ,不断调整用户个人兴趣模 型中关键词的权值 ,从而更新个人兴趣模型. 312 共同兴趣模型 共同兴趣模型 (co2model , CM) 与个人兴趣模 型具有相同的形式. 设系统中已有 k 个用户注册. 建 立共同兴趣模型的过程如下 :查看用户 i 的个人兴 趣模型 PM i , 若 wordi , j 不在 CM 中 , 则添加 wor2 di , j ,即 CM ∪( wordi , j , wi , j ) →CM ; 若 wordi , j 已在 CM 中 , 则将其权值相加. 再重新计算权值使其归 一. 最后按权值的大小将关键词 wordu, j ( u = 0 ,1 ,2 , …, k , j = 0 , 1 , 2 , …, n) 排序 , 选择其中前 t 个组成 CM , t 值可通过机器学习获得. 313 基于兴趣模型的合作过滤 设在 CM 中用户 X 和用户 Y 有 m 个兴趣项是 相同的 ,且对应 m 个兴趣项的兴趣度分别为 w x = { wx ,1 , wx ,2 , …, wx , m }和 wy = { wy ,1 , wy ,2 , …, wy , m } , 用户 X 、Y 的兴趣相似程度 S ( x , y) 可按式(6) 计算 : S ( x , y) = ∑ m j =1 (wi, j - wx , avg ) (wy , j - wy , avg ) ∑ m j =1 (wx , j - wx , avg ) 2 ∑ m i =1 (wy , j - wy , avg ) 2 . (6) wx , avg 为用户 X 对兴趣项的平均评价值. wy , avg 为用户 Y 对兴趣项的平均评价值; wx , j Α wx , wy , j Α wy , ( j = 0 , …, m) . S ( x , y) 越大 ,说明用户 X 和 Y 的兴趣相似程度越大. 通过计算 ,当 S ( x , y) > 315 时 , Y 为与用户 X 具有最近似兴趣的那个用户. 若用户 u′具有与用户 u 的最相似兴趣 ,那么用 户 u 对关键词 word u, j所在页面的兴趣度的预测值 为 Pre ( u , j) ,计算方法为式(7) 所示 : Pre ( u, j) = wu, avg + k u′∑∈Ui ((wu′, j - wu′, avg ) ×S ( u, u′) . (7) Ui 为对关键词 word u, j所在页面进行评价的所 有用户集; k = 1 u′∑∈U i S ( u , u′) 为根据用户兴趣相似度 S ( x , y) 计算出的相似度权值. 最后系统将预测值高 的页面推荐给用户 u. 4 用户兴趣的反馈机制 在建立用户兴趣模型后 ,使用隐式反馈和显式 第 1 期 柯 佳 ,等 :基于用户兴趣学习的智能合作过滤模型的研究 ·61 ·