CN103544190A - 一种获取用户和文档个性化特征的方法和系统 - Google Patents
一种获取用户和文档个性化特征的方法和系统 Download PDFInfo
- Publication number
- CN103544190A CN103544190A CN201210253997.2A CN201210253997A CN103544190A CN 103544190 A CN103544190 A CN 103544190A CN 201210253997 A CN201210253997 A CN 201210253997A CN 103544190 A CN103544190 A CN 103544190A
- Authority
- CN
- China
- Prior art keywords
- document
- user
- vector
- feature
- parameter vector
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提出了一种获取用户和文档个性化特征的方法和系统。所述方法通过用户访问文档的信号,来自动地更新用户和文档的个性化特征。用户的个性化特征依据所述用户访问过的文档的个性化特征进行更新;文档的个性化特征依据访问过该文档的用户的个性化特征进行更新。根据获取的用户和文档的个性化特征,可在搜索引擎中实现个性化的文档排序以及在社交网络中实现个性化的信息过滤和筛选。本发明还提出了一种获取用户和文档个性化特征的系统。本发明方法能够提高搜索引擎的查准率和社交网络的信息检索效率。另外,本发明方法还能够提高网页排名算法的反作弊能力。
Description
技术领域
本发明涉及互联网领域,具体来说涉及一种获取用户和文档个性化特征的方法和系统。
背景技术
搜索引擎和社交网络是互联网上获取信息的主要工具。这两种工具的缺点是不能根据用户的特征差异来进行信息的过滤和筛选。例如,不同的用户在同一个搜索引擎中输入相同的关键字,其得到的搜索结果是相同的,与哪个用户提交的搜索查询无关;不同的用户在同一个社交网络中建立相同的关系网络,其获得的信息也是相同的,与哪个用户建立的关系网络无关。
在现有搜索技术中,核心技术是排序算法,最为有效的排序算法是超链分析算法,例如谷歌的PageRank算法。超链分析算法的输入是由网页设计者根据其主观意愿构建的网页链接关系。尽管它充分反映了网页设计者的个人偏好和对网页链接关系的理解,但是它却无法反映出搜索引擎的使用者——用户的个人偏好。由于从事不同行业或具有不同爱好的用户对同一个网页的重要性评价通常是不同的,而PageRank等现有排序技术对每个网页只能给出唯一的网页排名,这是现有搜索技术的缺点。一个可行的技术解决方案是结合用户和网页的个性化特征来改进搜索结果,使得每个网页的排名不仅依赖于网页之间的链接关系,而且依赖于提交搜索查询的用户的个性化特征和被查询网页的个性化特征。有分析表明,借助用户和网页的个性化特征,能够提高搜索引擎的查准率,减少用户对无效信息的扫描和浏览。
在现有社交网络技术中,用户通过自己建立的关系网络来获取信息,例如通过关注(follow)他人和加好友等操作来获取他人发布的信息。被关注的人和加为好友的人越多,用户获得的信息也越多。由于担心有重要的或者有趣的信息被遗漏,用户通常会在社交网络中关注更多的人或者加入更多的好友。但是,当关系网络中的用户数量超过邓巴数(Dunbar)150之后,微博和脸谱(Facebook)等社交网络会逐渐成为对用户进行“信息轰炸”的服务。其原因是现有社交网络技术要求用户必须接收其关系网络中的所有用户发布的所有信息,而不能按信息类别有选择地接收这些信息,这是现有社交网络技术的缺点。一个可行的技术解决方案是让用户获得的信息不仅依赖用户建立的关系网络,而且依赖用户的个性化特征和获取的信息的个性化特征。这将有助于对社交网络上的海量信息进行有效地过滤和筛选,提高社交网络的信息检索效率。为了叙述方便,我们通常把用户在社交网络上获得的每条信息(如一条微博),也看作一个文档。
要实现上述两个技术解决方案,其必要条件是能够获取用户和网页文档的个性化特征。但是在互联网上获取用户和网页文档的个性化特征通常是困难的,主要有以下几个难点。第一是个性化信息的自动获取问题。据估算目前互联网上有5000亿个网页和20亿用户,手工维护网页文档和用户的个性化特征是不现实的。如何自动获取用户和网页文档的个性化特征是一个难题。第二是个性化信息的更新问题。随着时间的推移,用户的兴趣爱好、工作地点、从事的行业和教育程度等个人信息会发生改变,但是要求大多数用户实时地更新其个性化信息是困难的。第三是个性化信息的语义差异问题。在用户设置的个性化特征中,术语不同但语义相同的个性化特征,难以对其进行有效归类。第四是个性化信息的完备性问题。用户在网站上提供的个人信息通常比较简略。例如对用户兴趣爱好的描述通常是喜欢音乐、打棒球或看书等几项内容,而要求用户全面地描述出其感兴趣的领域是困难的。
综上所述,如何有效地获取用户和文档的个性化特征,并根据所述个性化特征来提高搜索引擎的查准率以及提高社交网络的信息检索效率,是一个亟待解决的问题。
发明内容
鉴于上述现有技术存在的问题,本发明的目的在于提供一种获取用户和文档个性化特征的方法和系统,来自动获取用户和文档的个性化特征,并根据所述个性化特征来帮助用户过滤和筛选其在互联网上获得的信息。
根据以上所述的目的,本发明提出了一种获取用户和文档个性化特征的方法,其特征在于,
在接入互联网的服务器中,存储由多个用户标识组成的用户集U和由多个文档标识组成的文档集D;存储由多个特征标识组成的特征集K;
在所述服务器中,为所述用户集U中的至少一个用户或者所述文档集D中的至少一个文档设置参数向量初始值;
在所述服务器中,多次执行如下步骤:
接收任意一个用户m(m∈U)访问任意一个文档n(n∈D)的信号;
根据所述信号,读取所述用户m的参数向量U(m)=(uwm1,uwm2,...,uwmk,...,uwmL),其中所述uwmk表示所述用户m与特征k(k∈K)的相关度;
根据所述信号,读取所述文档n的参数向量D(n)=(dwn1,dwn2,...,dwnk,...,dwnL),其中所述dwnk表示所述文档n与特征k(k∈K)的相关度;
应用参数向量更新算法,更新所述用户m和所述文档n的参数向量;设更新后所述用户m的参数向量为U*(m)=(uwm1 *,uwm2 *,...,uwmk *,...,uwmL *),更新后所述文档n的参数向量为D*(n)=(dwn1 *,dwn2 *...,dwnk *,...,dwnL *),则所述参数向量更新算法包括:
U*(m)=F1[U(m),D(n)];
D*(n)=F2[U(m),D(n)];
其中所述F1(·)和所述F2(·)分别是以所述U(m)和所述D(n)为自变量的函数。
与现有技术相比,本发明可实现个性化的文档排序,进而提高了搜索引擎的查准率以及提高社交网络的信息检索效率。另外,利用网页文档的个性化特征还能够提高网页排序算法的反作弊能力。
附图说明
图1为在用户集U中每个用户的参数向量表示方法;
图2为在文档集D中每个文档的参数向量表示方法;
图3为用户和文档的参数向量更新算法流程图;
图4为在文档集D中每个文档的排序向量表示方法;
图5为文档排序向量更新算法流程图;
图6为基于查询向量和排序向量的个性化文档检索方法流程图;
图7为基于查询向量和参数向量的个性化文档检索方法流程图;
图8为一种获取用户和文档个性化特征的系统结构图;
图9为一种获取用户和文档个性化特征的系统的信号序列图。
具体实施方式
结合附图对本发明方法作进一步详细说明。
本专利方法的具体实施方案说明,包括以下几个部分。首先,说明用户集、文档集和特征集的含义以及用户和文档的参数向量表示方法;然后,说明用户和文档的参数向量更新算法;之后,说明文档的排序向量表示方法以及基于文档参数向量的文档排序算法;再后,说明基于查询向量的个性化文档检索方法;最后,说明一种获取用户和文档个性化特征的系统。
首先说明用户集U、文档集D和特征集K的含义。
在接入互联网的服务器中,存储由多个用户标识组成的用户集U和由多个文档标识组成的文档集D。所述用户标识是用户的唯一识别码,例如用户帐号、手机号码、Cookie识别码、IP地址、Email地址或者即时通信号码。所述文档标识是文档的唯一识别码,例如Web网页文档的URL地址、购物网站上的一个产品编号或者一则互联网广告的编号。假设所述用户集U含有M个元素,所述文档集D含有N个元素。
在接入互联网的服务器中,存储由多个特征标识组成的特征集K。所述多个特征既是所述用户集U中用户的特征,又是所述文档集D中文档的特征。用户和文档使用相同的特征集K。所述特征集K含有L个元素。若用户具有“音乐”特征,说明用户爱好音乐,而文档具有“音乐”特征,说明文档与音乐主题相关。
下面介绍用户和文档的参数向量的表示方法。所述参数向量表示方法与向量空间模型VSM的向量表述方法相似,即以特征项作为用户特征或文档特征的基本单位。本专利中,以用户与各个特征的相关度的集合作为用户的参数向量,以文档与各个特征的相关度的集合作为文档的参数向量。
图1为在用户集U中每个用户的参数向量表示方法。在用户集U中任意一个用户m(m∈U)的参数向量设置为U(m)=(uwm1,uwm2,...,uwmk,...,uwmL),其中所述uwmk表示所述用户m与特征k(k∈K)的相关度。另外,将所述用户集U中的每个用户与特征k的相关度汇集在一起,组成一个向量,叫做用户集U的第k个用户列向量(uw1k,uw2k,...,uwMk)。
图2为在文档集D中每个文档的参数向量表示方法。在文档集D中任意一个文档n(n∈D)的参数向量设置为D(n)=(dwn1,dwn2,...,dwnk,...,dwnL),其中所述dwnk表示所述文档n与特征k(k∈K)的相关度。另外,将所述文档集D中的每个文档与特征k的相关度汇集在一起,组成一个向量,叫做文档集D的第k个文档列向量(dw1k,dw2k,...,dwNk)。
所述相关度是一个实数值,它表示用户或者文档与特征集K中的某个特征的关系紧密程度。如果一个用户或者文档与音乐特征关联多一点与体育特征关联少一点,我们就说该用户或者文档与音乐特征的相关度高,与体育特征的相关度低。另外在特征选取时,有些特征之间是具有相关性的,因此可以通过减少特征之间的相关性来降低特征集K的维度,减少对服务器存储空间的需求,提高算法效率。有些特征不必直接列入特征集K中,因为这些特征的相关度可以通过特征集K中的一个或几个其它特征的相关度计算出来。
下面说明用户或文档的参数向量初始值的设置方法。举如下三个例子进行说明。用户或文档的参数向量初始值范围通常设置为uwmk∈[0,1]和dwnk∈[0,1],其中m∈U、n∈D和k∈K。如果用户或文档的参数向量没有被设置初始值,其参数向量初始值缺省设为零向量。
例1是人工设置用户m(m∈U)或者文档n(n∈D)的参数向量初始值的方法。例如设置特征总数L=5,特征集K=(科学,教育,财经,音乐,体育),设置U(m)=(uwm1,uwm2,uwm3,uwm4,uwm5)=(0,0.9,0,1,0)。即用户m与“教育”特征的相关度为0.9,与“音乐”特征的相关度为1,与其它特征的相关度均为零。同理,可以设置所述文档n的参数向量D(n)=(dwn1,dwn2,...,dwnk,...,dwnL)的初始值。
例2是设置用户m(m∈U)的参数向量初始值的方法。首先由所述用户m提交一组文档集合所述文档r(r∈H)的参数向量为(dwr1,dwr2,...,dwrL),然后,对于每个k∈K,设置uwmk=(σ1/s)·∑(r∈H)dwrk或者uwmk=(σ1/s)·Σ(r∈H)[dwrk/(∑(k∈K)dwrk)],其中s为所述集合H的元素个数,σ1为设定正常数。使用类似方法,所述用户m也可以在所述用户集U中选择一组用户来计算所述用户m的参数向量初始值。
例3是一种设置文档的参数向量初始值的方法。分类目录是一种特殊文档,比如门户网站通常包括新闻、音乐、体育、财经和科技等分类目录。我们假设相同分类目录下的文档具有某些相同的特征,例如体育目录下的文档都与体育相关。如果文档n(n∈D)是分类目录h(h∈D)下的一个文档,则所述文档n的参数向量的初始值由所述分类目录h的参数向量来决定。例如对于每个k∈K,设置dwnk=σ2·dwhk,其中σ2为设定正常数。
图3为用户和文档的参数向量更新算法流程图。具体包括在接入互联网的服务器中,执行如下步骤:
S11.存储由多个用户标识组成的用户集U和由多个文档标识组成的文档集D;存储由多个特征标识组成的特征集K;
S12.为所述用户集U中的至少一个用户或者所述文档集D中的至少一个文档设置参数向量初始值;
S13.接收任意一个用户m(m∈U)访问任意一个文档n(n∈D)的信号;
S14.根据所述信号,读取所述用户m的参数向量U(m)=(uwm1,uwm2,...,uwmk,...,uwmL),其中所述uwmk表示所述用户m与特征k(k∈K)的相关度;
S15.根据所述信号,读取所述文档n的参数向量D(n)=(dwn1,dwn2,...,dwnk,...,dwnL),其中所述dwnk表示所述文档n与特征k(k∈K)的相关度;
S16.应用参数向量更新算法更新所述用户m和所述文档n的参数向量;设更新后所述用户m的参数向量U*(m)=(uwm1 *,uwm2 *,...,uwmk *...,uwmL *),更新后所述文档n的参数向量D*(n)=(dwn1 *,dwn2 *,...,dwnk *,...,dwnL *),则所述算法包括:
U*(m)=F1[U(m),D(n)];
D*(n)=F2[U(m),D(n)];
在执行完所述步骤S16后,返回所述步骤S13。
其中所述F1(·)和所述F2(·)分别是以所述U(m)和所述D(n)为自变量的函数。所述用户m代表用户集U中的任何一个用户,而不特指某个用户,所述文档n代表文档集D中的任何一个文档,而不特指某个文档。例如第n次执行步骤S13时在所述信号中m=1023,n=3428,而第n+1次执行步骤S13时在所述信号中m=33456,n=28477;另外,所述步骤S12也包括同时为所述用户集U中的至少一个用户以及为所述文档集D中的至少一个文档设置参数向量初始值的情形。
在图3所述方法的一个应用实例中,对每个特征k∈K,所述uwmk *是所述dwnk的增函数,所述dwnk *是所述uwmk的增函数。
在图3所述方法的一个应用实例中,对每个特征k∈K,所述uwmk *是Σ(k∈K)dwnk的减函数,所述dwnk *是Σ(k∈K)uwmk的减函数。
在图3所述方法的一个应用实例中,对于每个特征k∈K,所述uwmk *和所述dwnk *都是所述用户m访问所述文档集D的频次的减函数。所述频次是在一设定时间段内所述用户m访问所述文档集D中的文档的次数,除以所述设定时间段的长度。
在图3所述方法的一个应用实例中,所述信号是在一设定时间段内从用户访问文档的众多信号中随机抽取的。在所述一设定时间段内,对所述用户集U中的每个活跃用户抽取相同数量的访问信号作为图3所述方法的输入信号。所述活跃用户是指在所述一设定时间内,访问所述文档集D达到设定次数的用户。非活跃用户不能使用图3所述方法更新用户和文档的参数向量。
在图3所述方法中,在执行所述参数向量更新算法达到设定次数t1后,在每个特征k∈K下,对第k个用户列向量(uw1k,uw2k,...,uwMk)进行归一化处理;在执行所述参数向量更新算法达到设定次数t2后,在每个特征k∈K下,对第k个文档列向量(dw1k,dw2k,...,dwNk)进行归一化处理;其中t1和t2为正整数。执行一次参数向量更新算法,即执行一次所述步骤S16。所述归一化方法包括以下的具体应用实例。
例1:对用户集U中第k个用户列向量(uw1k,uw2k,...,uwMk)进行归一化处理的方法如下:对于每个m∈U,如果则设uwmk=1,否则设置 其中有两种方法设置所述第一是对集合{uw1k,uw2k,...,uwMk}按由大到小的顺序进行排序,将排名第M1的元素赋值绐第二是设所述为一常数,如对文档集D中第k个文档列向量(dw1k,dw2k,...,dwNk)进行归一化处理的方法如下:对于每个n∈D,如果则设dwnk=1,否则设置其中有两种方法设置所述第一是对集合{dw1k,dw2k,...,dwNk}按由大到小的顺序进行排序,将排名第N1的元素赋值绐第二是设所述为一常数,如所述M1和所述N1为设定正常数。
例2:对文档集D中第k个文档列向量(dw1k,dw2k,...,dwNk)进行归一化处理的方法如下:首先对集合{dw1k,dw2k,...,dwNk}进行排序,以及按照排序结果将集合{dw1k,dw2k,...,dwNk}分成元素个数近似相等的r组,其中任意两组a组和b组的关系是a组中的任何一个元素大于等于b组中的任何一个元素,或者a组中的任何一个元素小于等于b组中的任何一个元素;在每组中取出数值最小的一个数据组成集合{s1,s2,...,sr},且s1<s2<...<sr;然后,对每个n∈D,如果dwnk<s1,则设置dwnk=0;如果sm≤dwnk<sm+1,则设置dwnk=g1(sm);如果dwnk≥sr,则设置dwnk=1。其中g1(sm)为增函数,g1(sm)∈(0,1),例如设g1(sm)=sm/sr;1≤m<r,r为设定正数。同样方法,可对用户集U中第k个用户列向量进行归一化处理。
在图3所述方法的一个应用实例中,执行完所述步骤S16之后,还包括对每个特征k∈K,设置uwmk=uwmk *和dwnk=dwnk *。
在图3所述方法的一个应用实例中,所述方法满足对于每个特征k∈K,有uwmk *≥uwmk和dwnk *≥dwnk。
在图3所述方法的一个应用实例中,所述U*(m)和所述D*(n)分别由所述U(m)和所述D(n)唯一确定,与其它变量无关。
在图3所述方法中,所述信号的类型至少是以下类型中的一种:T=1表示所述用户m点击所述文档n的链接,T=2表示所述用户m键入所述文档n的URL地址,T=3表示所述用户m将所述文档n设置为喜欢(如脸谱的Like和谷歌的+1),T=4表示所述用户m转发所述文档n,T=5表示所述用户m评论所述文档n,T=6表示所述用户m收藏所述文档n。
应用实例1
这是图3所述方法的一个应用实例,其中所述参数向量更新算法具体包括:
uwmk *=β1·uwmk+λ1(n,m,T)·f1(dwnk) (对于每个k∈K)
dwnk *=β2·dwnk+λ2(m,n,T)·f2(uwmk) (对于每个k∈K)
其中,所述λ1(n,m,T)为在所述信号的类型T下所述文档n对所述用户m的影响系数,所述λ2(m,n,T)为在所述信号的类型T下所述用户m对所述文档n的影响系数;β1和β2为设定正常数;所述f1(dwnk)是所述dwnk的增函数,所述f2(uwmk)是所述uwmk的增函数。例如f1(dwnk)=σ3·dwnk,f2(uwmk)=σ4·uwmk;或者f1(dwnk)=σ5·{1/[1+exp(-dwnk)]},f2(uwmk)=σ6·{1/[1+exp(-uwmk)]},其中σ3、σ4、σ5和σ6为设定正常数。
在所述应用实例1中,对每个特征k∈K,为第k个文档列向量设置阀值dCk,如果dwnk≤dCk,则取f1(dwnk)=0;对每个特征k∈K,为第k个用户列向量设置阀值uCk,如果uwmk≤uCk,则取f2(uwmk)=0。其中dCk和uCk为设定常数,或者设置dCk等于第k个文档列向量(dw1k,dw2k,...,dwNk)的各个分量中排名在第a1名的分量,以及设置uCk等于第k个用户列向量(uw1k,uw2k,...,uwMk)的各个分量中排名在第a2名的分量;a1和a2为设定正整数。
在所述应用实例1中,所述λ1(n,m,T)和所述λ2(m,n,T)的具体设置方法包括如下实例:
例1:设所述λ1(n,m,T)和所述λ2(m,n,T)为预设常数。例如λ1(n,m,T)=c1和λ2(m,n,T)=c2,其中c1和c2为预设正常数,如c1=c2=0.01。
例2:所述λ1(n,m,T)和所述λ2(m,n,T)分别是所述用户m访问所述文档集D的频次的减函数。如设λ1(n,m,T)=1/g2[freq(m)],λ2(m,n,T)=1/g2[freq(m)],所述g2(x)为增函数。例如g2(x)为分段函数,当x<a3时,g2(x)=1;当x≥a3时,g2(x)=1+a4(x-a3),其中a3和a4为预设正常数,所述freq(m)为所述用户m访问所述文档集D中的文档的频次。
例3:设λ1(n,m,T)=1/g3[∑(k∈K)dwnk],λ2(m,n,T)=1/g3[Σ(k∈K)uwmk],g3(x)为增函数。例如g3(x)为分段函数,当x<a5时,g3(x)=1;当x≥a5时,g3(x)=1+a6(x-a5),其中a5和a6为预设正常数。在计算Σ(k∈K)dwnk时,如果dwnk≤min_dCk,则取dwnk=0;在计算Σ(k∈K)uwmk时,如果uwmk≤min_uCk,则取uwmk=0;其中min_dCk和min_uCk是设定正常数。
例4:所述λ1(n,m,T)=d1(n)·u2(m),所述λ2(m,n,T)=u1(m)·d2(n),其中d1(n)表示文档n的参数向量是否可以用于更新用户集U中用户的参数向量,u2(m)表示用户m的参数向量是否可以被文档集D中文档的参数向量更新,u1(m)表示用户m的参数向量是否可以用于更新文档集D中文档的参数向量,d2(n)表示文档n的参数向量是否可以被用户集U中用户的参数向量更新。u1(m),u2(m),d1(n)和d2(n)是预设参数,它们的取值为0或者1。1代表是,0代表否。这个例子的含义是为防止恶意攻击,有些文档(或用户)由于没有经过可靠性认证,其参数向量不能对其它用户(或文档)的参数向量进行更新;有些重要文档(或用户),其参数向量不能被其他用户(或文档)的参数向量所更新。
例5:所述λ1(n,m,T)=s1(T),所述λ2(m,n,T)=s2(T)。其中所述T为用户访问文档信号的类型,所述s1(T)和所述s2(T)分别是所述T的函数。
例6:所述λ1(n,m,T)是所述文档n的被访问次数或者PageRank值的增函数,所述λ2(m,n,T)是所述用户m的关系网络中用户数量的增函数。
例7:所述λ1(n,m,T)和所述λ2(m,n,T)分别是所述用户m和所述文档n的参数向量之间的相似度sim(m,n)的增函数。例如λ1(n,m,T)=1+c3·sim(m,n),λ2(m,n,T)=1+c4·sim(m,n),其中c3和c4为大于等于1的设定常数,且sim(m,n)=[∑(k∈K)(uwmk·dwnk)]/{[∑(k∈K)(uwmk)2]1/2·[∑(k∈K)(dwnk)2]1/2}。这个例子的含义是用户和文档的参数向量之间的相似度越高,它们彼此“投票”的比例系数越大。在计算sim(m,n)时,如果dwnk≤min_dCk,则取dwnk=0;如果uwmk≤min_uCk,则取uwmk=0,其中min_dCk和min_uCk是设定正常数。
例8:使用上述例1~7各方法中的至少两种方法的组合,来生成所述λ1(n,m,T)和所述λ2(m,n,T)。比如在freq(m)>a3时,有
λ1(n,m,T)=c1·{1+c3·sim(m,n)}·{1/[1+a4(freq(m)-a3)]}·{d1(n)·u2(m)}·s1(T)
λ2(m,n,T)=c2·{1+c4·sim(m,n)}·{1/[1+a4(freq(m)-a3)]}·{u1(m)·d2(n)}·s2(T)。
在所述应用实例1中,当执行所述具体的参数向量更新算法达到设定次数后,需要针对每个特征k∈K,分别对第k个文档列向量(dw1k,dw2k,...,dwNk)和第k个用户列向量(uw1k,uw2k,...,uwMk)进行归一化处理。
应用实例2
这是应用实例1的一个具体实现方法。为了便于说明,假设在互联网上有两个用户和三个文档,每个用户和每个文档均有两个特征,即用户集U={1,2},文档集D={1,2,3},特征集K={1,2}。用户1和用户2的参数向量分别为(uw11,uw12)和(uw21,uw22),文档1、文档2和文档3的参数向量分别为(dw11,dw12)、(dw21,dw22)和(dw31,dw32)。其中uwmk(m∈U,k∈K)表示所述用户m与特征k的相关度;dwnk(n∈D,k∈K)表示所述文档n与特征k的相关度。
假设在服务器中收到了所述用户2访问所述文档3的信号,且信号类型T=1,则根据如下参数向量更新算法更新所述用户2和所述文档3的参数向量:
uw21 *=β1·uw21+λ1(3,2,1)·dw31;
uw22 *=β1·uw22+λ1(3,2,1)·dw32
dw31 *=β2·dw31+λ2(2,3,1)·uw21;
dw32 *=β2·dw32+λ2(2,3,1)·uw22
其中,β1=β2=1;λ1(3,2,1)表示在信号类型T=1时所述文档3对所述用户2的影响系数;λ2(2,3,1)表示在信号类型T=1时所述用户2对所述文档3的影响系数。例如:
λ1(3,2,1)=c1·{1+c3·sim(2,3)}·{1/[1+a4(freq(2)-a3)]}·{d1(3)·u2(2)}·s1(1)
λ2(2,3,1)=c2·{1+c4·sim(2,3)}·{1/[1+a4(freq(2)-a3)]}·{u1(2)·d2(3)}·s2(1)
其中,c1=c2=0.01,c3=c4=3,sim(2,3)=(uw21·dw31+uw22·dw32)/{[(uw21)2+(uw22)2]1/2·[(dw31)2+(dw32)2]1/2},a3=200,a4=0.01,d1(3)=u2(2)=u1(2)=d2(3)=1,s1(1)=2,s2(1)=1,且假设freq(2)>a3。
在执行完上述参数向量更新算法后,进行如下设置:uw21=uw21 *,uw22=uw22 *,dw31=dw31 *和dw32=dw32 *。
在执行完上述参数向量更新算法后,对用户列向量(uw11,uw21)和(uw12,uw22)进行归一化处理,以及对文档列向量(dw11,dw21,dw31)和(dw12,dw22,dw32)进行归一化处理。
图4为在文档集D中每个文档的排序向量表示方法。
搜索引擎的核心技术是排序算法,其中最著名的是PageRank算法。标准的PageRank算法可以用如下公式表示。
其中,集合为网页p(p∈D)的链入网页集合,C(i)为网页i(i∈T)的链出网页数量;d表示用户通过其它网页的链接来访问所述网页p的概率;1-d表示用户不通过其它网页的链接(如通过键入URL地址等方式)来访问所述网页p的概率,d∈(0,1);PR(p)表示所述网页p在所述文档集D中的排序值,N表示文档集D中的网页数量。另外每个网页的初始排序值设为1/N。这里,文档集D中的每个元素都是一个网页。
标准的PageRank算法的缺点是在互联网上的每个网页仅有唯一的一个网页排序值,即该算法假设每个用户对同一个网页的重要性的评价是相同的。也就是说,PageRank算法没有考虑到提交搜索查询的用户的个性化差异。因此,需要对现有排序算法进行改进。
我们把传统的PageRank值进行扩展,即将所述文档集D中的任意一个文档p的一维排序值PR(p),扩展为基于领域特征的多维的排序向量。设任一文档p(p∈D)的排序向量为[PR(p,1),PR(p,2),...,PR(p,k),...,PR(p,L)],其中所述PR(p,k)表示在特征k(k∈K)下所述文档p在所述文档集D中的排序值。在特征k∈K下,将每个文档的排序值汇集在一起,组成一个向量,叫做文档集D的第k个排序列向量,即
图5为文档排序向量更新算法流程图。设所述文档集D中至少含有两个文档子集,其中文档子集中的每个文档都含有至少一个链接指向所述文档集D中的其它文档,而文档子集中的每个文档都被所述文档子集S中的至少一个文档含有的链接所指向;并且S∪E=D,S∩E≠Φ,其中Φ为空集。因此,排序向量更新算法如下:所述文档集D中的任意一个文档p在特征k(k∈K)下的排序值,是所述文档p的每个链入文档在所述特征k下的排序值和所述链入文档与所述特征k的相关度的函数。所述排序向量更新算法,包括以下两个具体应用实例。
例1:在特征k∈K下任一文档p(p∈D)在所述文档集D中的排序值定义为:
其中,集合为所述文档p的链入文档集合;d表示用户通过其它文档的链接来访问所述文档p的概率;1-d表示用户不通过其它文档的链接(如通过键入URL地址等方式)来访问所述文档p的概率,d∈(0,1);PR(i,k)表示文档i在特征k(k∈K)下的排序值;dwik表示文档i与特征k(k∈K)的相关度;N是所述文档集D中的文档个数。另外,对于每个文档i∈D和每个特征k∈K,设所述文档i的初始排序值PR(i,k)=1/N。
所述公式(2)可以表述成如下的向量形式:
例2:在特征k∈K下任一文档p(p∈D)在所述文档集D中的排序值定义为:
其中,集合为所述文档p的链入文档集合;d表示用户通过其它文档的链接来访问所述文档p的概率;1-d表示用户不通过其它文档的链接(如通过键入URL地址等方式)来访问所述文档p的概率,d∈(0,1);PR(i,k)表示文档i在特征k(k∈K)下的排序值;dwik表示文档i与特征k(k∈K)的相关度;C(i)表示文档i(i∈T)的链出文档数量;N是所述文档集D中的文档个数。另外对于每个文档i∈D和每个特征k∈K,设文档i的初始排序值PR(i,k)=1/N。所述公式(4)的向量形式也可以表述成公式(3)的形式,其中PR(2,k),...,PR(N,k)]T;是全1的列向量;非负矩阵A=(aij)N×N定义如下:
为了保证所述公式(3)有效性,需要对文档集D中的文档之间的链接关系进行若干限制,例如剔除悬垂页(Dangling Page)和指向它的每个链接,当其它文档的排序值计算完毕后,再将悬垂页和指向它的链接恢复,并根据所述公式(3)计算悬垂页的排序值。
R10.选取任一特征k∈K;
R11.根据所述公式(2)或者公式(4),生成非负矩阵A;
图6为基于查询向量和排序向量的个性化文档检索方法流程图。该方法包括在服务器中执行如下步骤:
S10.根据所述参数向量更新算法,更新所述文档集D中多个文档的参数向量和所述用户集U中多个用户的参数向量;具体实现方法包括图3中所述步骤S11至所述步骤S16;
S20.对每个特征k∈K,设置所述文档集D中第k个排序列向量的初始值;
S30.对每个特征k∈K,应用所述排序向量更新算法,迭代更新所述文档集D中的第k个排序列向量,即更新所述文档集D中每个用户的排序向量;
S40.接收用户q(q∈D)设置的查询向量和所述用户q提交的搜索条件,并且在所述搜索条件中提取搜索关键字;其中所述搜索条件可设为用户在搜索对话框中提交的所有信息;
S50.在所述文档集D中检索与所述搜索关键字匹配的一组文档Q;
S60.根据所述查询向量和所述一组文档Q中的每个文档的排序向量,计算所述一组文档Q中的每个文档的个性化排序值;
S70.根据所述个性化排序值,对所述一组文档Q进行排序,并且根据排序结果将所述一组文档Q中的多个文档的链接发送给所述用户q。
在图6所述方法的一个应用实例中,设用户q的查询向量为(swq1,swq2,...,swqk,...,swqL),其中swqk表示在特征k(k∈K)下被查询文档在所述文档集D中的排序值,swqk∈[0,1],所述查询向量的设置方法如下:
例1:由所述用户q在特征集K中选择特征,并设置被查询文档的排序值,例如设置swq2=1,swq6=0.9,其它向量分量为0。
例2:由所述用户q提交一组文档标识Sq={...,r,...}。所述文档r(r∈Sq)的排序向量设为[PR(r,1),PR(r,2),...,PR(r,k),...,PR(r,L)],因此,对于每个特征k∈K,所述用户q的查询向量设置为swqk=(σ7/s)·∑(r∈sq)PR(r,k)或者swqk=(σ7/s)·Σ(r∈sq){PR(r,k)/∑(k∈K)PR(r,k)};其中s为所述集合Sq的元素个数,σ7为设定正常数。
因此,所述步骤S60中的所述个性化排序值的计算方法如下:设UR(i,q)表示基于所述用户q的查询向量的任一文档i(i∈Q)的个性化排序值,则
UR(i,q)=∑(k∈K)[PR(i,k)·swqk]或者
UR(i,q)={∑(k∈K)[PR(i,k)·swqk]}/{[∑(k∈K)(PR(i,k))2]1/2·[∑(k∈K)(swqk)2]1/2}。
在计算所述UR(i,q)时,对任一特征k∈K,如果PR(i,k)<min_PR,则取PR(i,k)=0;如果swqk<min_SW,则取swqk=0。min_PR和min_SW为设定正常数。
图7为基于查询向量和参数向量的个性化文档检索方法流程图。所述方法包括在服务器中执行如下步骤:
A10.根据所述参数向量更新算法,更新所述文档集D中多个文档的参数向量和所述用户集U中多个用户的参数向量;具体实现方法包括图3中所述步骤S11至所述步骤S16;
A20.接收用户q(q∈D)设置的查询向量和所述用户q提交的搜索条件,并且在所述搜索条件中提取搜索关键字;其中所述搜索条件可设为用户在搜索对话框中提交的所有信息;
A30.在所述文档集D中检索与所述搜索关键字匹配的一组文档Q;
A40.根据所述查询向量和所述一组文档Q中的每个文档的参数向量,计算所述一组文档Q中的每个文档的个性化排序值;
A50.根据所述个性化排序值,对所述一组文档Q进行排序,并且根据排序结果将所述一组文档Q中的多个文档的链接发送给所述用户q。
在图7所述方法的一个应用实例中,设用户q的查询向量为(swq1,swq2,...,swqk,...,swqL),其中swqk表示被查询文档与特征k(k∈K)的相关度,swqk∈[0,1],所述查询向量的设置方法如下:
例1:由所述用户q在特征集K中选择特征,并对其设置特征相关度,例如设置swq2=1,swq6=0.6,其它向量分量为0。
例2:把所述用户q的参数向量赋值给所述查询向量。
例3:所述用户q提交一组用户标识Sq={...,r,...}。所述用户r(r∈Sq)的参数向量为(uwr1,uwr2,...,uwrL),因此对每个特征k∈K,设置swqk=(σ8/s)·∑(r∈sq)uwrk或者设置swqk=(σ8/s)·∑(r∈sq)[uwrk/(∑(k∈K)uwrk)];其中s为所述集合Sq的元素个数,σ8为设定正常数。
例4:所述用户q提交一组文档标识Sq={...,r,...}。所述文档r(r∈Sq)的参数向量为(dwr1,dwr2,...,dwrL),因此对每个特征k∈K,设置swqk=(σ9/s)·∑(r∈sq)dwrk或者设置swqk=(σ9/s)·∑(r∈sq)[dwrk/(∑(k∈K)dwrk)];其中s为所述集合Sq的元素个数,σ9为设定正常数。
因此,所述步骤A40中的所述个性化排序值的计算方法如下:设UR(i,q)表示基于所述用户q的查询向量的任一文档i(i∈Q)的个性化排序值,则
UR(i,q)=∑k(dwik·swqk)或者
UR(i,q)=[∑k(dwik·swqk)]/{[∑k(dwik)2]1/2·[∑k(swqk)2]1/2}。
其中,所述dwik表示在特征k(k∈K)下所述文档i与特征k(k∈K)的相关度,所述swqk表示被查询文档与特征k(k∈K)的相关度。在计算UR(i,q)时,如果dwnk≤min_dCk,则取dwnk=0;如果swqk≤min_SW,则取swqk=0,其中min_dCk和min_SW是设定正常数。
在图7所述方法的一个应用实例中,引入一种特殊文档,即广告。广告作为一种特殊文档也设有参数向量,每当一用户访问一个广告文档后,就应用参数向量更新算法更新该广告文档和该用户的参数向量,因此,图7所述方法还包括以下步骤:
A70.根据广告文档的个性化排序值,对所述一组广告A进行排序,并且根据排序结果将所述一组广告A中的至少一个广告呈现给所述用户q。
图7所述方法的一个应用场景是微博。用户发布一条微博文档后,就可以设置这条微博文档的参数向量初始值了,即把发布这个微博的用户的参数向量乘以一个预设常数,赋值给这条微博文档的参数向量。当微博服务器收到了用户访问微博文档的信号后(如由用户转发、评论或收藏等动作产生的信号),根据所述信号中包含的用户标识和微博文档标识,分别读取所述用户的参数向量和所述微博文档的参数向量;然后根据参数向量更新算法,更新所述用户和所述微博文档的参数向量。当打开微博时,用户就可以对其收到的信息进行过滤和筛选了。其方法是首先由用户预设查询向量;然后计算所述查询向量和用户收到的每条微博文档的参数向量之间的相似度,并以此作为每个微博文档的个性化排序值;最后根据所述个性化排序值的数值大小,对用户收到的微博文档进行排序和呈现。例如只将个性化排序值排名前20%的微博文档发送给查询用户。
图7所述方法的一个应用场景是网上购物。在购物网站上,产品信息以分类目录的形式进行组织。每个产品有唯一识别码,这里的产品相当于所述方法中的文档。首先,对每个分类目录(目录也是一种文档)设置参数向量初始值,并将该分类目录的参数向量设为不可被更新。每个分类目录下的文档(即产品)的参数向量初始值由其所属分类目录的参数向量的初始值决定,参见文档参数向量初始值设置方法的例3。文档(即产品)的参数向量也可以直接人工设定,例如将发布该产品的用户的参数向量乘以一个常数,赋值给所述产品的参数向量。通过这种方法可以设置多个产品的参数向量初始值。同时,可以设置多个用户的参数向量初始值。
当购物网站收到了用户访问产品的信号后(例如由浏览、评论、收藏、购买等动作产生的信号),根据所述信号中包含的用户标识和产品标识,分别读取所述用户的参数向量和所述产品的参数向量;然后根据参数向量更新算法,更新所述用户和所述产品的参数向量。
当任一查询用户访问购物网站时,他就可以对购物网站上的产品信息进行过滤和筛选了。其方法是首先由用户预设查询向量;然后,用户在购物网站中浏览产品分类目录,并在某分类目录下获取一组产品列表;之后,计算所述查询向量和所述一组产品列表中每个产品的参数向量之间的相似度,并以此作为每个产品的个性化排序值;最后,根据所述个性化排序值的数值大小,对所述一组产品列表进行排序,以及按照排序结果将所述一组产品呈现给查询用户。
图8为一种获取用户和文档个性化特征的系统结构图。所述系统200包括多个功能模块,每个功能模块的作用如下:
用户集、文档集和特征集设置模块211:在用户数据库220中存储由多个用户标识组成的用户集U,在文档数据库230中存储由多个文档标识组成的文档集D;在特征数据库240中存储由多个特征标识组成的特征集K;
用户和文档初始值设置模块212:为所述用户集U中的至少一个用户设置参数向量初始值并将其存储于用户数据库220;为所述文档集D中的至少一个文档设置参数向量初始值并将其存储于文档数据库230;为所述文档集D中的每个文档设置排序向量初始值;未被设置参数向量初始值的用户和文档,其参数向量初始值缺省为零向量;
用户访问文档信号采集模块213:用于采集任意一个用户m(m∈U)(102)访问任意一个文档n(n∈D)的信号,所述信号存储于Web日志数据库250中;所述用户m(102)访问所述文档n的信号,将被发送到至少一个应用服务器中,所述应用服务器包括门户网站服务器301、社交网络服务器302、搜索引擎服务器303和即时通信服务器304;
用户和文档参数向量更新模块214:根据所述信号包含的所述用户m和所述文档n的标识,在所述用户数据库220中读取所述用户m(102)的参数向量以及在所述文档数据库230中读取所述文档n的参数向量;然后,应用参数向量更新算法,更新所述用户m(102)和所述文档n的参数向量;最后,用更新后的所述用户m(102)的参数向量和所述文档n的参数向量分别更新所述用户数据库220和所述文档数据库230;
文档排序向量更新模块215:在所述文档集D中,以文档之间的链接关系、每个文档的排序向量初始值以及每个文档的参数向量作为输入数据,应用排序向量更新算法,迭代更新在每个特征k(k∈K)下所述文档集D中每个文档的排序值,以及应用更新后的所述排序值更新所述文档数据库230;所述文档之间的链接关系,是由所述文档集D中的每个文档所包含的文档链接来决定的;
用户查询模块216:首先,接收查询用户q设置的查询向量和所述用户q提交的搜索条件,并且在所述搜索条件中提取搜索关键字;然后,在所述文档集D中检索与所述搜索关键字匹配的一组文档Q;之后,根据所述查询向量和所述一组文档Q中每个文档的排序向量,计算所述一组文档Q中每个文档的个性化排序值,或者根据所述查询向量和所述一组文档Q中每个文档的参数向量,计算所述一组文档Q中每个文档的个性化排序值;最后,根据所述个性化排序值对所述一组文档Q进行排序,以及按照排序结果将所述一组文档Q中的多个文档的链接发送给所述用户q。
图9为一种获取用户和文档个性化特征的系统的信号序列图。首先,在用户访问文档信号采集模块213中采集用户m(102)访问文档n的信号;然后,由所述采集模块213将所述信号发送到Web日志数据库240;之后,用户和文档参数向量更新模块214在Web日志数据库240中查询并读取所述信号;再后,由所述更新模块214向用户数据库220发送读取所述用户m(102)的参数向量的请求,后者返回所述用户m(102)的参数向量,以及由所述更新模块214向文档数据库230发送读取所述文档n的参数向量的请求,后者返回所述文档n的参数向量;接着,在所述更新模块214中,使用参数向量更新算法,更新所述用户m(102)和所述文档n的参数向量;最后,所述更新模块214将更新后的所述用户m(102)的参数向量和所述文档n的参数向量分别发送给用户数据库220和文档数据库230。
以上所述应用实例仅为本发明的较佳的应用实例,并非用以限定本发明的保护范围。
Claims (14)
1.一种获取用户和文档个性化特征的方法,其特征在于,
在接入互联网的服务器中,存储由多个用户标识组成的用户集U和由多个文档标识组成的文档集D;存储由多个特征标识组成的特征集K;
在所述服务器中,为所述用户集U中的至少一个用户或者所述文档集D中的至少一个文档设置参数向量初始值;
在所述服务器中,多次执行如下步骤:
接收任意一个用户m(m∈U)访问任意一个文档n(n∈D)的信号;
根据所述信号,读取所述用户m的参数向量U(m)=(uwm1,uwm2,...,uwmk,...,uwmL),其中所述uwmk表示所述用户m与特征k(k∈K)的相关度;
根据所述信号,读取所述文档n的参数向量D(n)=(dwn1,dwn2,...,dwnk,...,dwnL),其中所述dwnk表示所述文档n与特征k(k∈K)的相关度;
应用参数向量更新算法,更新所述用户m和所述文档n的参数向量;设更新后所述用户m的参数向量为U*(m)=(uwm1 *,uwm2 *...,uwmk *...,uwmL *),更新后所述文档n的参数向量为D*(n)=(dwn1 *,dwn2 *,...,dwnk *,...,dwnL *),则所述参数向量更新算法包括:
U*(m)=F1[U(m),D(n)];
D*(n)=F2[U(m),D(n)];
其中所述F1(·)和所述F2(·)分别是以所述U(m)和所述D(n)为自变量的函数。
2.根据权利要求1所述的方法,其特征在于,对每个特征k∈K,所述uwmk *是所述dwnk的增函数,所述dwnk *是所述uwmk的增函数。
3.根据权利要求1所述的方法,其特征在于,对每个特征k∈K,所述uwmk *和所述dwnk *分别是所述用户m访问所述文档集D的频次的减函数。
4.根据权利要求1所述的方法,其特征在于,对每个特征k∈K,所述uwmk *是∑(k∈K)dwnk的减函数,所述dwnk *是∑(k∈K)uwmk的减函数。
5.根据权利要求1所述的方法,其特征在于,执行所述参数向量更新算法达到设定次数t1后,针对每个特征k∈K,对第k个用户列向量(uw1k,uw2k,...,uwMk)进行归一化处理;执行所述参数向量更新算法达到设定次数t2后,针对每个特征k∈K,对第k个文档列向量(dw1k,dw2k,...,dwNk)进行归一化处理。
6.根据权利要求1所述的方法,其特征在于,在所述参数向量更新算法的一个应用实例中,所述uwmk *和所述dwnk *的具体更新方法如下:
uwmk *=β1·uwmk+λ1(n,m,T)·f1(dwnk) (对于每个k∈K)
dwnk *=β2·dwnk+λ2(m,n,T)·f2(uwmk) (对于每个k∈K)
其中,所述λ1(n,m,T)为在所述信号的类型T下所述文档n对所述用户m的影响系数,所述λ2(m,n,T)为在所述信号的类型T下所述用户m对所述文档n的影响系数;β1和β2为设定正常数;所述f1(dwnk)是所述dwnk的增函数,所述f2(uwmk)是所述uwmk的增函数。
7.根据权利要求6所述的方法,其特征在于,所述λ1(n,m,T)和所述λ2(m,n,T)分别是所述用户m访问所述文档集D的频次的减函数。
8.根据权利要求6所述的方法,其特征在于,所述λ1(n,m,T)和所述λ2(m,n,T)分别是所述用户m的参数向量和所述文档n的参数向量之间的相似度的增函数。
9.根据权利要求1所述的方法,其特征在于,所述文档集D中至少含有两个文档子集,其中文档子集中的每个文档都含有至少一个链接指向所述文档集D中的其它文档,文档子集中的每个文档都被所述文档子集S中的至少一个文档含有的链接所指向;并且S∪E=D,S∩E≠Φ;
所述文档集D中的每个文档还设有排序向量,设任一文档p(p∈D)的排序向量为[PR(p,1),PR(p,2),...,PR(p,k),...,PR(p,L)],其中所述PR(p,k)表示在特征k(k∈K)下所述文档p在所述文档集D中的排序值;
因此,排序向量更新算法如下:所述文档集D中的任意一个文档p在特征k(k∈K)下的排序值,是所述文档p的每个链入文档在所述特征k下的排序值和所述链入文档与所述特征k的相关度的函数。
12.根据权利要求9所述的方法,其特征在于,所述方法包括一个文档排序应用实例,所述应用实例包括在所述服务器中执行如下步骤:
S10.根据所述参数向量更新算法,更新所述文档集D中多个文档的参数向量以及所述用户集U中多个用户的参数向量;
S20.对每个特征k∈K设置所述文档集D中的第k个排序列向量的初始值;
S30.对每个特征k∈K,应用所述排序向量更新算法,迭代更新所述文档集D中第k个排序列向量,即更新所述文档集D中每个用户的排序向量;
S40.接收用户q(q∈U)设置的查询向量和所述用户q提交的搜索条件,并且在所述搜索条件中提取搜索关键字;
S50.在所述文档集D中检索与所述搜索关键字匹配的一组文档Q;
S60.根据所述查询向量和所述一组文档Q中的每个文档的排序向量,计算所述一组文档Q中的每个文档的个性化排序值;
S70.根据所述个性化排序值,对所述一组文档Q进行排序,并且根据排序结果将所述一组文档Q中的多个文档的链接发送给所述用户q。
13.根据权利要求1所述的方法,其特征在于,所述方法包括一个文档排序应用实例,所述应用实例包括在所述服务器中执行如下步骤:
A10.根据所述参数向量更新算法,更新所述文档集D中多个文档的参数向量以及所述用户集U中多个用户的参数向量;
A20.接收用户q(q∈U)设置的查询向量和所述用户q提交的搜索条件,并且在所述搜索条件中提取搜索关键字;
A30.在所述文档集D中检索与所述搜索关键字匹配的一组文档Q;
A40.根据所述查询向量和所述一组文档Q中的每个文档的参数向量,计算所述一组文档Q中的每个文档的个性化排序值;
A50.根据所述个性化排序值,对所述一组文档Q进行排序,并且根据排序结果将所述一组文档Q中的多个文档的链接发送给所述用户q。
14.一种获取用户和文档个性化特征的系统,其特征在于,所述系统包括如下功能模块:
用户集、文档集和特征集设置模块:在用户数据库中存储由多个用户标识组成的用户集U,在文档数据库中存储由多个文档标识组成的文档集D;在特征数据库中存储由多个特征标识组成的特征集K;
用户和文档初始值设置模块:为所述用户集U中的至少一个用户设置参数向量初始值并将其存储于用户数据库;为所述文档集D中的至少一个文档设置参数向量初始值并将其存储于文档数据库;为所述文档集D中的每个文档设置排序向量初始值;未被设置参数向量初始值的用户和文档,其参数向量初始值缺省为零向量;
用户访问文档信号采集模块:用于采集任意一个用户m(m∈U)访问任意一个文档n(n∈D)的信号,所述信号存储于Web日志数据库中;
用户和文档参数向量更新模块:根据所述信号包含的所述用户m和所述文档n的标识,在所述用户数据库中读取所述用户m的参数向量以及在所述文档数据库中读取所述文档n的参数向量;然后应用参数向量更新算法,更新所述用户m和所述文档n的参数向量;最后用更新后的所述用户m的参数向量和所述文档n的参数向量分别更新所述用户数据库和所述文档数据库;
文档排序向量更新模块:在所述文档集D中,以文档之间的链接关系、每个文档的排序向量初始值以及每个文档的参数向量作为输入数据,应用排序向量更新算法,迭代更新在每个特征k(k∈K)下所述文档集D中每个文档的排序值,以及应用更新后的所述排序值更新所述文档数据库;所述文档之间的链接关系,是由所述文档集D中的每个文档所包含的文档链接来决定的;
用户查询模块:首先,接收查询用户q(q∈D)设置的查询向量和所述用户q提交的搜索条件,并且在所述搜索条件中提取搜索关键字;然后,在所述文档集D中检索与所述搜索关键字匹配的一组文档Q;之后,根据所述查询向量和所述一组文档Q中每个文档的排序向量,计算所述一组文档Q中每个文档的个性化排序值,或者根据所述查询向量和所述一组文档Q中每个文档的参数向量,计算所述一组文档Q中每个文档的个性化排序值;最后,根据所述个性化排序值对所述一组文档Q进行排序,以及按照排序结果将所述一组文档Q中的多个文档的链接发送给所述用户q。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210253997.2A CN103544190A (zh) | 2012-07-17 | 2012-07-17 | 一种获取用户和文档个性化特征的方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210253997.2A CN103544190A (zh) | 2012-07-17 | 2012-07-17 | 一种获取用户和文档个性化特征的方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103544190A true CN103544190A (zh) | 2014-01-29 |
Family
ID=49967653
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210253997.2A Pending CN103544190A (zh) | 2012-07-17 | 2012-07-17 | 一种获取用户和文档个性化特征的方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103544190A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107924402A (zh) * | 2015-07-15 | 2018-04-17 | 谷歌有限责任公司 | 来自资源内容中的搜索结果过滤器 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050086215A1 (en) * | 2002-06-14 | 2005-04-21 | Igor Perisic | System and method for harmonizing content relevancy across structured and unstructured data |
CN101071445A (zh) * | 2007-06-22 | 2007-11-14 | 腾讯科技(深圳)有限公司 | 分类样本集的优化方法和内容相关广告服务器 |
CN101770520A (zh) * | 2010-03-05 | 2010-07-07 | 南京邮电大学 | 基于用户浏览行为的用户兴趣建模方法 |
CN103514237A (zh) * | 2012-06-25 | 2014-01-15 | 祁勇 | 一种获取用户和文档个性化特征的方法和系统 |
-
2012
- 2012-07-17 CN CN201210253997.2A patent/CN103544190A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050086215A1 (en) * | 2002-06-14 | 2005-04-21 | Igor Perisic | System and method for harmonizing content relevancy across structured and unstructured data |
CN101071445A (zh) * | 2007-06-22 | 2007-11-14 | 腾讯科技(深圳)有限公司 | 分类样本集的优化方法和内容相关广告服务器 |
CN101770520A (zh) * | 2010-03-05 | 2010-07-07 | 南京邮电大学 | 基于用户浏览行为的用户兴趣建模方法 |
CN103514237A (zh) * | 2012-06-25 | 2014-01-15 | 祁勇 | 一种获取用户和文档个性化特征的方法和系统 |
Non-Patent Citations (1)
Title |
---|
姜鑫维 等: "Topic PageRank ———一种基于主题的搜索引擎", 《计算机技术与发展》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107924402A (zh) * | 2015-07-15 | 2018-04-17 | 谷歌有限责任公司 | 来自资源内容中的搜索结果过滤器 |
US11372941B2 (en) | 2015-07-15 | 2022-06-28 | Google Llc | Search result filters from resource content |
US11797626B2 (en) | 2015-07-15 | 2023-10-24 | Google Llc | Search result filters from resource content |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhao et al. | Connecting social media to e-commerce: Cold-start product recommendation using microblogging information | |
CN105589905B (zh) | 用户兴趣数据分析和收集系统及其方法 | |
CN102982042B (zh) | 一种个性化内容推荐方法、平台以及系统 | |
CN102622417B (zh) | 对信息记录进行排序的方法和装置 | |
CN102789462B (zh) | 一种项目推荐方法及系统 | |
CN102591995B (zh) | 一种基于云数据中心的用户信息处理方法及装置 | |
CN105488233A (zh) | 阅读信息推荐方法和系统 | |
KR101419504B1 (ko) | 사용자 성향 분석을 통한 맞춤형 쇼핑 정보 제공 시스템 및 방법 | |
CN106339502A (zh) | 一种基于用户行为数据分片聚类的建模推荐方法 | |
CN103886487A (zh) | 基于分布式的b2b平台的个性化推荐方法与系统 | |
CN101266620B (zh) | 向用户提供目标信息的方法及设备 | |
TW201327233A (zh) | 個性化的資訊推送方法及裝置 | |
CN104899236B (zh) | 一种评论信息显示方法、装置及系统 | |
CN107103062A (zh) | 一种网页推荐方法及系统 | |
KR20140133633A (ko) | 검색 키워드 분석을 통한 온라인 쇼핑몰의 상품 노출 시스템 및 그 운영방법 | |
KR20190055963A (ko) | 키워드검색 분석을 통한 온라인 쇼핑몰의 상품 노출 시스템 및 그 운영방법 | |
CN110717089A (zh) | 一种基于网络日志的用户行为分析系统及方法 | |
CN106202312A (zh) | 一种用于移动互联网的兴趣点搜索方法和系统 | |
CN103514237A (zh) | 一种获取用户和文档个性化特征的方法和系统 | |
CN103309900A (zh) | 一种个性化多维度的文档排序方法和系统 | |
CN105590234A (zh) | 一种向目标用户推荐商品的方法和系统 | |
KR20100046421A (ko) | 상품 선호도를 평가하는 방법 및 쇼핑몰 서버 | |
KR20150144916A (ko) | 소비자 프로파일링을 통한 맞춤형 쇼핑정보 제공 시스템 및 방법 | |
CN104050174B (zh) | 一种个性化页面生成方法及装置 | |
CN105095404A (zh) | 网页信息的处理方法、网页信息的推荐方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140129 |
|
WD01 | Invention patent application deemed withdrawn after publication |