CN102591873B - 一种信息推荐方法和设备 - Google Patents
一种信息推荐方法和设备 Download PDFInfo
- Publication number
- CN102591873B CN102591873B CN201110005636.1A CN201110005636A CN102591873B CN 102591873 B CN102591873 B CN 102591873B CN 201110005636 A CN201110005636 A CN 201110005636A CN 102591873 B CN102591873 B CN 102591873B
- Authority
- CN
- China
- Prior art keywords
- user
- element set
- clustering model
- clustering
- cluster
- 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.)
- Active
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明实施例公开了一种信息推荐方法和设备,应用于设置有多个精确度不同的聚类模型的互联网应用系统,该方法包括:所述应用系统按照聚类模型精确度递减的顺序,依次使用相应聚类模型对用户所对应的用户元素集合进行聚类处理,以确定用户元素集合所属的类别,直到聚类召回率满足设定要求时停止聚类处理;所述应用系统根据聚类结果对所述用户元素集合对应的用户进行信息推荐。本发明实施例中,在增大聚类召回率的同时,保证了聚类精确度,提高了信息推荐效果。
Description
技术领域
本发明涉及互联网领域的信息推荐技术,尤其涉及一种信息推荐方法和设备。
背景技术
互联网技术的高速发展,极大地改变了人们的工作生活,通过互联网浏览网页、看新闻、看电影以及听音乐等已经成为许多人工作生活中不可缺少的一部分,而为了让用户更快捷地找到自己感兴趣的新闻、电影或音乐,信息推荐技术正逐渐随着互联网的高速发展而兴起。
现有技术中,存在一种将MinHash用于用户聚类以实现新闻推荐的信息推荐技术,称为MinHash推荐技术。其中,MinHash(MinwiseIndependentPermutationHashing)是一种符合交换独立条件的哈希技术,用于估算两个集合之间的相似度。
MinHash推荐技术的原理为:
如果用V表示元素的全集,那么随机哈希函数就可以表示成f:V→R,R是实数集。如果Xa和Xb是全集中任意两个不同的元素,那么哈希函数必须满足两个条件,f(Xa)≠f(Xb)和P(f(Xa)<f(Xb))=0.5,其中,P(·)表示概率。这两个条件的意思是,任意两个不同的元素的哈希值不能相等,并且任意一个元素的哈希值小于另一个元素的哈希值的概率是0.5,即不同元素的哈希值的大小关系必须是随机的。
在这样的哈希函数的基础上,如果A是全集V上的子集,MinHash中子集A的哈希值被定义为:
那么对于同样的哈希函数,集合A和B的哈希值相同的概率是:
式(2)右边表示集合A和集合B的相似度,即集合A和B的哈希值相同的概率等于集合A和B的相似度。
若将用户表示成一个元素集合,MinHash推荐的过程为:首先用MinHash将用户聚为若干个类,此处设用户u属于类别c,用户u与类别c的相似度表示为sim(u,c);然后对于这个类里面的每个元素ci,计算这个元素在类里面出现的次数COUNT(ci),并根据该次数和相似度来确定元素ci推荐给用户的分数:sim(u,c)*COUNT(ci)。对于类别c的所有元素,都生成这样一个推荐分数,然后根据分数排序,将分值高且用户自身不包含的元素推荐给用户。
在一个用户可以属于多个类别的情况下,处理也是类似的,即首先对每个类别做如上所述的处理,然后把类别里面的所有元素合在一起,并对相同元素的分数累加,最终得到一个长的推荐列表,排序之后推荐给用户。
通常,衡量一种信息推荐技术的推荐效果可以考虑两个方面的因素,一个是使用该信息推荐技术向信息推荐时,推荐结果被用户接受的概率,即信息推荐的精确度;另一个方面是使用该信息推荐技术向信息推荐时,能够得到推荐的用户占所有用户的比例,即信息推荐的覆盖率。由MinHash推荐技术的特点可以得出:MinHash推荐技术中,聚类的精确度与信息推荐的精确度是成正比的,而聚类的召回率(对应信息推荐中的覆盖率)与信息推荐的覆盖率是成正比的,因此为了提高信息推荐的推荐效果,可以通过提高聚类的精确度或召回率来实现。
现有技术中,为了提高MinHash推荐技术中聚类的精确度,可以取p个不同的哈希函数,要求同一个类里面的集合的哈希值都要相等。但是这样做的缺点是导致聚类的召回率快速降低。
为了提高召回率,可以取q组不同的哈希函数,每组都有p个不同的哈希函数,对于每个集合A,根据每组哈希函数生成一个速写(sketch),该速写由p个哈希值构成,具体形式可以多样,比如哈希值之间可以用逗号或“_”号隔开。对于每一个集合A,得到q个速写。给定两个集合,只要有一个速写是一样的,就把这两个集合聚在一起。这样增加了聚在一起的概率,能有效地提高聚类的召回率;但也同时降低了类间相似度,也就降低了聚类的精确度。
现有信息推荐技术难以对聚类的精确度和召回率进行权衡,即无法兼顾聚类的精确度和召回率。
发明内容
本发明提供一种信息推荐方法和设备,用以兼顾聚类的精确度和召回率,进而改善推荐效果,为此,本发明实施例采用如下技术方案:
一种信息推荐方法,应用于互联网应用系统,所述应用系统中设置有多个精确度不同的聚类模型,该方法包括:
所述应用系统按照聚类模型精确度递减的顺序,依次使用相应聚类模型对用户所对应的用户元素集合进行聚类处理,以确定用户元素集合所属的类别,直到聚类召回率满足设定要求时停止聚类处理;
所述应用系统根据聚类结果对所述用户元素集合对应的用户进行信息推荐。
优选地,所述根据聚类结果对所述用户元素集合对应的用户进行信息推荐,具体为:
根据所述用户元素集合,对所述用户元素集合所属类别中的元素进行推荐排序,并根据推荐排序结果,选择不属于该用户元素集合的元素推荐给所述用户元素集合对应的用户。
优选地,所述按照聚类模型精确度递减的顺序,依次使用相应聚类模型对用户所对应的用户元素集合进行聚类处理,直到聚类召回率满足设定要求时停止聚类处理,具体为:
使用精度最高的聚类模型对所有用户的用户元素集合进行聚类处理,若有用户元素集合未被聚类,则使用精度次之的聚类模型对未被聚类的用户元素集合进行聚类处理,以此类推,直到聚类召回率满足设定要求时停止聚类处理。
优选地,所述按照聚类模型精确度递减的顺序,依次使用相应聚类模型对用户所对应的用户元素集合进行聚类处理,直到聚类召回率满足设定要求时停止聚类处理,具体为:
使用精度最高的聚类模型对所有用户的用户元素集合进行聚类处理,若有用户元素集合未被聚类,则使用精度次之的聚类模型对所有用户的用户元素集合进行聚类处理,以此类推,直到聚类召回率满足设定要求时停止聚类处理。
优选地,所述根据聚类结果对所述用户元素集合对应的用户进行信息推荐,具体为:
根据所述用户元素集合,分别在不同聚类模型下的聚类结果中,对所述用户元素集合所属类别中的元素按推荐分数从高到低的顺序进行推荐排序;
根据聚类模型的精确度从高到低的顺序,优先将精确度高的聚类模型下的推荐结果推荐给所述用户元素集合对应的用户;其中,同一聚类模型下的推荐结果按推荐分数从高到低的顺序依次推荐,不同聚类模型下的相同推荐结果以精确度高的聚类模型下的推荐排序结果进行推荐,推荐给用户的元素中不包括属于该用户元素集合的元素。
优选地,所述根据聚类结果对所述用户元素集合对应的用户进行信息推荐,具体为:
根据所述用户元素集合,对各聚类模型下所述用户元素集合所属类别中的元素的推荐分数进行加权,并将加权后的推荐分数按从高到低的顺序进行推荐排序,其中,精确度高的聚类模型下所述用户元素集合所属类别中的元素的推荐分数加权权重高于精确度低的聚类模型下所述用户元素集合所属类别中的元素的推荐分数的加权权重;
根据推荐排序结果,将各聚类模型下所述用户元素集合所属类别中的元素推荐给所述用户元素集合所对应的用户,其中,推荐给用户的元素中不包括属于该用户元素集合的元素。
优选地,所述多个精确度不同的聚类模型为多个具有相同哈希函数组数量、但每个哈希函数组中的哈希函数数量不同的MinHash聚类模型,所述多个MinHash聚类模型的精度,按照哈希函数组中的哈希函数数量递减的顺序递减;或者
所述多个精确度不同的聚类模型为多个具有不同哈希函数组数量、但每个哈希函数组中的哈希函数数量相同的MinHash聚类模型,所述多个MinHash聚类模型的精度,按照哈希函数组数量递增的顺序递减。
本发明实施例还提供一种信息推荐设备,应用于互联网应用系统,包括:
存储模块,用于存储多个精确度不同的聚类模型;
聚类模块,用于按照存储模块中存储的聚类模型精确度递减的顺序,依次使用相应聚类模型对用户所对应的用户元素集合进行聚类处理,以确定用户元素集合所属的类别,直到聚类召回率满足设定要求时停止聚类处理;
推荐模块,用于根据聚类结果对所述用户元素集合对应的用户进行信息推荐。
优选地,所述推荐模块具体用于,
根据所述用户元素集合,对所述用户元素集合所属类别中的元素进行推荐排序,并根据推荐排序结果,选择不属于该用户元素集合的元素推荐给所述用户元素集合对应的用户。
优选地,所述聚类模块具体用于,
使用精度最高的聚类模型对所有用户的用户元素集合进行聚类处理,若有用户元素集合未被聚类,则使用精度次之的聚类模型对未被聚类的用户元素集合进行聚类处理,以此类推,直到聚类召回率满足设定要求时停止聚类处理。
优选地,所述聚类模块具体用于,
使用精度最高的聚类模型对所有用户的用户元素集合进行聚类处理,若有用户元素集合未被聚类,则使用精度次之的聚类模型对所有用户的用户元素集合进行聚类处理,以此类推,直到聚类召回率满足设定要求时停止聚类处理。
优选地,所述推荐模块具体用于,
根据所述用户元素集合,分别在不同聚类模型下的聚类结果中,对所述用户元素集合所属类别中的元素按推荐分数从高到低的顺序进行推荐排序;
根据聚类模型的精确度从高到低的顺序,优先将精确度高的聚类模型下的推荐结果推荐给所述用户元素集合对应的用户;其中,同一聚类模型下的推荐结果按推荐分数从高到低的顺序依次推荐,不同聚类模型下的相同推荐结果以精确度高的聚类模型下的推荐排序结果进行推荐,推荐给用户的元素中不包括属于该用户元素集合的元素。
优选地,所述推荐模块具体用于,
根据所述用户元素集合,对各聚类模型下所述用户元素集合所属类别中的元素的推荐分数进行加权,并将加权后的推荐分数按从高到低的顺序进行推荐排序,其中,精确度高的聚类模型下所述用户元素集合所属类别中的元素的推荐分数加权权重高于精确度低的聚类模型下所述用户元素集合所属类别中的元素的推荐分数的加权权重;
根据推荐排序结果,将各聚类模型下所述用户元素集合所属类别中的元素推荐给所述用户元素集合所对应的用户,其中,推荐给用户的元素中不包括属于该用户元素集合的元素。
优选地,所述存储模块具体用于,存储多个具有相同哈希函数组数量、但每个哈希函数组中的哈希函数数量不同的MinHash聚类模型;
所述聚类模块具体用于,按照哈希函数组中的哈希函数数量递减的顺序依次使用相应聚类模型对用户所对应的用户元素集合进行聚类处理,以确定用户元素集合所属的类别,直到聚类召回率满足设定要求时停止聚类处理;或,
所述储存模块具体用于,存储多个具有不同哈希函数组数量、但每个哈希函数组中的哈希函数数量相同的MinHash聚类模型;
所述聚类模块具体用于,按照哈希函数组数量递增的顺序依次使用相应聚类模型对用户所对应的用户元素集合进行聚类处理,以确定用户元素集合所属的类别,直到聚类召回率满足设定要求时停止聚类处理。
与现有技术相比,本发明实施例具有以下优点:
通过建立不同参数的聚类模型,并根据所述聚类模型精确度从高到低的顺序依次使用所述聚类模型对用户进行聚类。一方面,相似度较高的用户在精确度高的聚类模型下保证了聚类精确度;另一方面,相似度较低的用户在精确度较低的聚类模型下被聚类的可能性增大,即在增大聚类召回率的同时,保证了聚类精确度,提高了信息推荐效果。
附图说明
图1为本发明一个实施例提供的信息推荐方法的流程示意图;
图2为本发明另一实施例提供的信息推荐方法的流程示意图;
图3为本发明再一实施例提供的信息推荐方法的流程示意图;
图4为本发明实施例提供的信息推荐设备的结构示意图。
具体实施方式
本发明实施例提供的信息推荐方案中,通过建立多个参数不同的聚类模型,使用该多个聚类模型对用户进行聚类,在增大聚类召回率的同时,保证了精确度,从而改善了信息推荐的推荐效果。
在本发明实施例提供的技术方案中,每个用户对应于一个包含有用于描述对象属性的元素的用户元素集合。例如,在音乐类应用系统中,每个系统用户都对应有用户元素集合,集合中的元素可包括音乐名称或类型等音乐对象的属性信息,可以是该用户在一段时间内访问过的歌曲的名称。
例如,如果要对某一特定时间段内,使用用户所访问过的歌曲名称的集合来表示该用户对应的用户元素集合,则在该时间段内甲、乙、丙、丁四个用户的用户元素集合分别表示为:甲={A,B,C,D},乙={A,B,C,E},丙={A,C,E,F},丁={G}。如果甲、乙、丙三个用户被聚到一个类中,则按现有推荐技术的方法分别对A至F六首歌按推荐分数从高到低进行排序(推荐分数相同的歌随机排序),如排序结果为A、C、B、E、D、F,则在向甲进行音乐推荐时,优先级最高的为E,其次为F(对于用户A访问过的歌曲则不进行推荐),同理,向乙进行音乐推荐时,优先级最高的为D,其次为F,向丙进行音乐推荐时,优先级最高的为B,其次为D。丁未被聚到任何一个类中,即没有找到与丁听音乐相似度高的用户,丁将无法得到推荐。
一个聚类模型的聚类精确度越高,使用该聚类模型对用户进行聚类后,一个类中的用户之间相似度越高(在本发明实施例中可以表示喜欢的音乐类型相似度越高),根据该聚类结果进行音乐推荐时,推荐的音乐被用户所接受的概率就越大,因此聚类精确度越高,信息推荐的精确度也越高。另一方面,一个聚类模型的聚类召回率越高,使用该聚类模型对用户进行聚类后,能被聚到类中的概率就增大,即用户中能被聚类的用户的比例也就增大了,根据该聚类结果进行音乐推荐时,能得到推荐的用户的比例也就越大,即音乐推荐的覆盖率就越大。
本发明实施例通过建立多个精确度不同的聚类模型,在进行聚类时使用该多个聚类模型对用户进行聚类处理,从而在增大聚类的召回率的同时,保证聚类的精确度,进而改善信息推荐的效果。
下面将结合本发明的实施例中的附图,对本发明的实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的实施例保护的范围。
如图1所示,为本发明实施例提供的一种信息推荐方法的流程示意图,该方法应用于设置有多个精确度不同的聚类模型的应用系统中,该方法包括以下步骤:
步骤101、应用系统按照聚类模型精确度递减的顺序,依次使用相应聚类模型对用户所对应的用户元素集合进行聚类处理,直到聚类召回率满足设定要求时停止聚类处理。
步骤102、应用系统根据聚类结果对用户元素集合对应的用户进行信息推荐。
步骤102具体可以是:根据所述用户元素集合,对所述用户元素集合所属类别中的元素进行推荐排序,并根据推荐排序结果,选择不属于该用户元素集合的元素推荐给所述用户元素集合对应的用户。本发明实施例通过建立多个精确度不同的聚类模型,在进行聚类时使用该多个聚类模型对用户进行聚类处理,从而在增大聚类的召回率的同时,保证聚类的精确度,进而改善信息推荐的效果。
根据MinHash聚类的特性可知,MinHash聚类模型(表示为P_q)的精确度可以通过参数p和q的来调节,其中p为每个哈希函数组中哈希函数的数量,q为哈希函数组的数量。本发明实施例中,在对用户进行聚类之前,可先通过选择不同的p和q值建立多个精确度不同的MinHash聚类模型。具体的,可以采用以下方式建立多个精确度不同的MinHash聚类模型:
方式一:保持q值不变,通过改变p值来改变聚类模型的精确度,以建立精确度不同的聚类模型。如固定q=10,分别建立聚类模型1_10、2_10、3_10和4_10。当q值不变时,聚类模型的精确度随着p值的增大而增大,即聚类模型1_10、2_10、3_10和4_10的精确度是递增的;
方式二:保持p值不变,通过改变q值来改变聚类模型的精确度,以建立精确度不同的聚类模型。如固定p=4,分别建立聚类模型4_8、4_9、4_10和4_11。当p值不变时,聚类模型的精确度随着q值的增大而减小,即聚类模型4_8、4_9、4_10和4_11的精确度是递减的;
方式三:同时调节p值和q值来改变聚类模型的精确度,以建立精确度不同的聚类模型。如分别建立聚类模型4_8、3_9、6_10和5_7。这样建立起来的多个MinHash聚类模型,其精确度并不能象上述方式一和方式二一样,比较直观的确定出来,但可以通过实验等方式确定出各聚类模型的精确度大小关系。
基于上述建立起来的多个精确度不同的MinHash聚类模型,本发明的一个实施例提供的信息推荐流程可如图2所示。在互联网应用中,用户聚类以及信息推荐的处理通常由相应的互联网应用系统进行,当需要对用户进行聚类,并根据聚类结果为用户进行信息推荐时,该流程可包括:
步骤201、互联网应用系统按照MinHash聚类模型精确度递减的顺序,依次使用相应聚类模型对未被聚类的用户元素集合进行聚类处理,直到聚类召回率满足要求时停止聚类处理。
具体的,首先使用精确度最高的聚类模型对待聚类的所有用户元素集合进行聚类处理,由于精确度较高,因此有可能有部分用户元素集合未被聚类,即这些用户元素集合未聚类到任何类别中,也就是在当前聚类模型下未被覆盖到,针对这些用户元素集合,可使用精确度次之的MinHash聚类模型进行聚类处理,以此类推,直到聚类召回率满足预设的要求时停止聚类处理。使用某种精确度的MinHash聚类模型所实现的聚类过程,可采用现有方式实现,在此不赘述。
对于采用上述方式一所建立的多个MinHash聚类模型,如p_q值分别为1_10、2_10、3_10和4_10的多个MinHash聚类模型,可首先使用精确度最高的聚类模型4_10对用户元素集合进行聚类,并判断聚类召回率是否满足要求,若满足,则聚类结束;否则,使用聚类模型3_10对聚类模型4_10未被确定出所属的类别的用户元素集合(即未和任何一个其他用户元素集合聚到一个类中的用户元素集合)进行聚类,并再次判断聚类召回率是否满足条件,以此类推,直到聚类召回率满足条件为止。其中,聚类召回率满足的条件可以根据实际情况预先设定,如可预先设定聚类召回率达到70%以上时,停止聚类。同理,对于采用上述方式二或上述方式三所建立的多个MinHash聚类模型,可按照上述方式对用户元素集合进行聚类处理。
步骤202、互联网应用系统根据聚类结果对用户进行信息推荐处理。具体的,由步骤201中的聚类方式的特性可知,同一用户元素集合至多在一个聚类模型下被覆盖。在对用户进行信息推荐时,可采用现有信息推荐方式实现。例如,根据每一个聚类模型下的聚类结果,针对每个被聚类的用户元素集合,计算出其所属类别中的各元素对于该用户元素集合的推荐分数,并按照推荐分数递减的顺序将所有元素进行排序,其中推荐分数越高,则表明用户接受相应元素的可能性越大。在向该用户元素集合所对应的用户进行推荐时,可将其中该用户元素集合中不包含的元素按照排序推荐给该用户。当然,该步骤中的信息推荐处理方式也可采用其他信息推荐方式实现,本发明实施例对此不做要求。
通过以上描述可以看出,通过建立多个不同参数的聚类模型,并根据聚类模型精确度从高到低的顺序依次使用相应聚类模型对用户进行聚类,一方面,相似度较高的用户元素集合在精确度高的聚类模型下保证了聚类精确度;另一方面,相似度较低的用户元素集合在精确度较低的聚类模型下被聚类的可能性增大,即在增大聚类召回率的同时,保证了聚类精确度,提高了信息推荐效果。
本发明的另一实施例提供的信息推荐流程可如图3所示。当需要对用户进行聚类,并根据聚类结果为用户进行信息推荐时,该流程可包括:
步骤301、互联网应用系统按照MinHash聚类模型精确度递减的顺序,依次使用相应聚类模型对所有用户元素集合进行聚类处理,直到聚类召回率满足要求时停止聚类处理。
具体的,首先使用精确度最高的MinHash聚类模型对所有待聚类的用户元素集合进行聚类,并判断聚类召回率是否满足要求,若满足,则聚类结束;否则,使用精确度次之的MinHash聚类模型对所有待聚类用户元素集合进行聚类,并判断聚类召回率是否满足条件,以此类推,直到聚类召回率满足条件。
对于采用上述方式一所建立的多个MinHash聚类模型,如p_q值分别为1_10、2_10、3_10和4_10的多个MinHash聚类模型,可首先使用精确度最高的聚类模型4_10对所有待聚类的用户元素集合进行聚类,并判断聚类召回率是否满足要求,若满足,则聚类结束;否则,使用聚类模型3_10对所有待聚类的用户元素集合进行聚类,并再次判断聚类召回率是否满足条件,以此类推,直到聚类召回率满足条件为止。其中,聚类召回率满足的条件可以根据实际情况预先设定,如可预先设定聚类召回率达到70%以上时,停止聚类。同理,对于采用上述方式二或上述方式三所建立的多个MinHash聚类模型,可按照上述方式对用户元素集合进行聚类处理。
步骤302、互联网应用系统根据聚类结果对用户进行信息推荐处理。
具体的,由步骤301中聚类方式的特性可知,同一用户元素集合可能在多个聚类模型下被覆盖,即在多个聚类模型下都能被聚类(即确定出其所属的类别),如在聚类模型4_8下,用户甲和乙被聚到一个类中;在聚类模型4_9下,用户甲、乙、丙和丁被聚到一个类中。根据聚类结果对用户进行信息推荐时,对于各个聚类模型下所得到的聚类结果,针对每个被聚类的用户元素集合,可计算出该用户元素集合所属类别中的各元素对于该用户元素集合的推荐分数,并按照推荐分数递减的顺序进行排序。如果一个用户元素集合在不同的聚类模型下都能被聚类,则对应该用户元素集合会有多个聚类模型下的推荐结果,在对该用户元素集合对应的用户进行推荐时,可优先推荐精确度高的聚类模型下的推荐结果,不同聚类模型下的相同推荐结果以精确度高的聚类模型下的推荐排序结果进行推荐;或,将该用户元素集合在不同聚类模型下所属类别中的各元素的推荐分数以不同的加权权重进行加权,并按加权后的推荐分数进行推荐排序,根据推荐排序结果对该用户进行推荐,其中,精确度高的聚类模型下该用户元素集合所属类别中的元素的推荐分数加权权重高于精确度低的聚类模型下该用户元素集合所属类别中的元素的推荐分数的加权权重,权重的调整可以通过实验的指导来调整,推荐给用户的元素中可不包括该用户元素集合所包含的元素。
例如,甲在聚类模型4_8下,推荐结果为A和B,且A的推荐分数为6,B的推荐分数为2;甲在聚类模型4_9下推荐结果为A、B、C和D,且A的推荐分数为7,B的推荐分数为2,C的推荐分数为6,D的推荐分数为4,则在向甲进行推荐时,可以采取以下方式进行推荐:
方式一、优先推荐精确度高的聚类模型下的推荐结果,同一聚类模型下的推荐结果按推荐分数从高到低的顺序依次推荐,不同聚类模型下的相同推荐结果以精确度高的聚类模型下的推荐排序结果进行推荐。即在向甲进行推荐时,将A、B、C和D依次推荐给甲。
方式二、将各个聚类模型下的推荐结果的推荐分数以不同的加权权重进行加权,并按加权后的推荐分数进行推荐排序,根据推荐排序结果对该用户进行推荐。如,甲在聚类模型4_8下的推荐结果的加权权重设为0.6,在聚类模型4_9下的推荐结果的加权权重设为0.4,则在向甲进行推荐时,A加权后推荐分数为6.4(6*0.6+7*0.4),B为2,C为2.4,D为1.6,将A、C、B和D依次推荐给甲。
通过以上描述可以看出,将精确度不同聚类模型下的推荐结果整合在一起,在保证了聚类精确度和召回率的同时,使信息推荐的选择更多,进一步提高了信息推荐的效果。
基于相同的技术构思,本发明实施例还提供了一种应用于上述流程的信息推荐设备,该设备可配置在服务器端,即配置在网络侧的互联网应用系统中。
如图4所示,为本发明实施例提供的信息推荐设备的结构示意图,该信息推荐设备用于设置有多个精确度不同的聚类模型的信息推荐系统中,可包括:
存储模块41,用于存储多个精确度不同的聚类模型;
具体的,存储模块41用于,存储多个具有相同哈希函数组数量、但每个哈希函数组中的哈希函数数量不同的MinHash聚类模型;或,
存储多个具有不同哈希函数组数量、但每个哈希函数组中的哈希函数数量相同的MinHash聚类模型。
聚类模块42,用于按照存储模块41中存储的聚类模型精确度递减的顺序,依次使用相应的聚类模型对用户元素集合进行聚类处理,以确定用户所属的类别,直到聚类召回率满足要求时停止聚类处理;
具体的,聚类模块42用于,使用精确度最高的聚类模型对所有待聚类用户元素集合进行聚类处理,并在聚类召回率未满足要求时,使用精确度次之的聚类模型对当前聚类模型下未被覆盖到的用户元素集合进行聚类处理,以此类推,直到聚类召回率满足要求时停止聚类处理;或,
使用精确度最高的聚类模型对所有待聚类的用户元素集合进行次聚类处理,并在聚类召回率未满足要求时,使用精确度次之的聚类模型对所有待聚类的用户元素集合进行聚类处理,以此类推,直到聚类召回率满足要求时停止聚类处理。
推荐模块43,用于根据聚类结果对所述用户元素集合对应的用户进行信息推荐;即根据所述用户元素集合,对所述用户元素集合所属类别中的元素进行推荐排序,并根据推荐排序结果,选择不属于该用户元素集合的元素推荐给所述用户元素集合对应的用户;
具体的,推荐模块43用于,根据聚类模块42的聚类结果,针对每个被聚类的用户元素集合,计算出各聚类模型下用户所属类别中各元素对于该用户元素集合的推荐分数,并按照推荐分数递减的顺序将所有元素进行排序,并将其中该用户元素集合中不包含的元素按照排序依次推荐给该用户元素集合对应的用户;其中,当某用户元素集合在不同的聚类模型下都能被聚类时,优先推荐精确度高的聚类模型下的推荐结果,不同聚类模型下的相同推荐结果以精确度高的聚类模型下的推荐排序结果进行推荐;或,将该用户元素集合在不同聚类模型下所属类别中的各元素的推荐分数以不同的加权权重进行加权,并按加权后的推荐分数进行推荐排序,根据推荐排序结果对该用户进行推荐,其中,精确度高的聚类模型下该用户元素集合所属类别中的元素的推荐分数加权权重高于精确度低的聚类模型下该用户元素集合所属类别中的元素的推荐分数的加权权重。
通过以上描述可以看出,通过建立多个不同参数的聚类模型,并根据聚类模型精确度从高到低的顺序依次使用相应聚类模型对用户进行聚类,一方面,相似度较高的用户元素集合在精确度高的聚类模型下保证了聚类精确度;另一方面,相似度较低的用户元素集合在精确度较低的聚类模型下被聚类的可能性增大,即在增大聚类召回率的同时,保证了聚类精确度,提高了信息推荐效果。
本发明实施例中的信息推荐并不限定于音乐推荐,新闻、电影推荐等也可以使用本发明实施例提供的信息推荐方法,而信息推荐过程中采用的聚类方法也并不限于MinHash聚类方法,其他具有精确度和召回率平衡性的聚类方法均可以用于本发明实施例提供的信息推荐方案中。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
Claims (12)
1.一种信息推荐方法,应用于互联网应用系统,所述应用系统中设置有多个精确度不同的聚类模型,且所述聚类模型包括MinHash聚类模型,其特征在于,该方法包括:
按照聚类模型精确度递减的顺序,依次使用相应聚类模型对用户所对应的用户元素集合进行聚类处理,直到聚类召回率满足设定要求时停止聚类处理;
根据聚类结果对所述用户元素集合对应的用户进行信息推荐,包括:根据所述用户元素集合,对所述用户元素集合所属类别中的元素进行推荐排序,并根据推荐排序结果,选择不属于该用户元素集合的元素推荐给所述用户元素集合对应的用户。
2.如权利要求1所述的方法,其特征在于,所述按照聚类模型精确度递减的顺序,依次使用相应聚类模型对用户所对应的用户元素集合进行聚类处理,直到聚类召回率满足设定要求时停止聚类处理,具体为:
使用精度最高的聚类模型对所有用户的用户元素集合进行聚类处理,若有用户元素集合未被聚类,则使用精度次之的聚类模型对未被聚类的用户元素集合进行聚类处理,以此类推,直到聚类召回率满足设定要求时停止聚类处理。
3.如权利要求1所述的方法,其特征在于,所述按照聚类模型精确度递减的顺序,依次使用相应聚类模型对用户所对应的用户元素集合进行聚类处理,直到聚类召回率满足设定要求时停止聚类处理,具体为:
使用精度最高的聚类模型对所有用户的用户元素集合进行聚类处理,若有用户元素集合未被聚类,则使用精度次之的聚类模型对所有用户的用户元素集合进行聚类处理,以此类推,直到聚类召回率满足设定要求时停止聚类处理。
4.如权利要求3所述的方法,其特征在于,所述根据聚类结果对所述用户元素集合对应的用户进行信息推荐,具体为:
根据所述用户元素集合,分别在不同聚类模型下的聚类结果中,对所述用户元素集合所属类别中的元素按推荐分数从高到低的顺序进行推荐排序;
根据聚类模型的精确度从高到低的顺序,优先将精确度高的聚类模型下的推荐结果推荐给所述用户元素集合对应的用户;其中,同一聚类模型下的推荐结果按推荐分数从高到低的顺序依次推荐,不同聚类模型下的相同推荐结果以精确度高的聚类模型下的推荐排序结果进行推荐,推荐给用户的元素中不包括属于该用户元素集合的元素。
5.如权利要求3所述的方法,其特征在于,所述根据聚类结果对所述用户元素集合对应的用户进行信息推荐,具体为:
根据所述用户元素集合,对各聚类模型下所述用户元素集合所属类别中的元素的推荐分数进行加权,并将加权后的推荐分数按从高到低的顺序进行推荐排序,其中,精确度高的聚类模型下所述用户元素集合所属类别中的元素的推荐分数加权权重高于精确度低的聚类模型下所述用户元素集合所属类别中的元素的推荐分数的加权权重;
根据推荐排序结果,将各聚类模型下所述用户元素集合所属类别中的元素推荐给所述用户元素集合所对应的用户,其中,推荐给用户的元素中不包括属于该用户元素集合的元素。
6.如权利要求1至5任一项所述的方法,其特征在于,所述多个精确度不同的聚类模型为多个具有相同哈希函数组数量、但每个哈希函数组中的哈希函数数量不同的MinHash聚类模型,所述多个MinHash聚类模型的精度,按照哈希函数组中的哈希函数数量递减的顺序递减;或者
所述多个精确度不同的聚类模型为多个具有不同哈希函数组数量、但每个哈希函数组中的哈希函数数量相同的MinHash聚类模型,所述多个MinHash聚类模型的精度,按照哈希函数组数量递增的顺序递减。
7.一种信息推荐设备,应用于互联网应用系统,其特征在于,包括:
存储模块,用于存储多个精确度不同的聚类模型,且所述聚类模型包括MinHash聚类模型;
聚类模块,用于按照存储模块中存储的聚类模型精确度递减的顺序,依次使用相应聚类模型对用户所对应的用户元素集合进行聚类处理,以确定用户元素集合所属的类别,直到聚类召回率满足设定要求时停止聚类处理;
推荐模块,用于根据所述用户元素集合,对所述用户元素集合所属类别中的元素进行推荐排序,并根据推荐排序结果,选择不属于该用户元素集合的元素推荐给所述用户元素集合对应的用户。
8.如权利要求7所述的设备,其特征在于,所述聚类模块具体用于,
使用精度最高的聚类模型对所有用户的用户元素集合进行聚类处理,若有用户元素集合未被聚类,则使用精度次之的聚类模型对未被聚类的用户元素集合进行聚类处理,以此类推,直到聚类召回率满足设定要求时停止聚类处理。
9.如权利要求7所述的设备,其特征在于,所述聚类模块具体用于,
使用精度最高的聚类模型对所有用户的用户元素集合进行聚类处理,若有用户元素集合未被聚类,则使用精度次之的聚类模型对所有用户的用户元素集合进行聚类处理,以此类推,直到聚类召回率满足设定要求时停止聚类处理。
10.如权利要求9所述的设备,其特征在于,所述推荐模块具体用于,
根据所述用户元素集合,分别在不同聚类模型下的聚类结果中,对所述用户元素集合所属类别中的元素按推荐分数从高到低的顺序进行推荐排序;
根据聚类模型的精确度从高到低的顺序,优先将精确度高的聚类模型下的推荐结果推荐给所述用户元素集合对应的用户;其中,同一聚类模型下的推荐结果按推荐分数从高到低的顺序依次推荐,不同聚类模型下的相同推荐结果以精确度高的聚类模型下的推荐排序结果进行推荐,推荐给用户的元素中不包括属于该用户元素集合的元素。
11.如权利要求9所述的设备,其特征在于,所述推荐模块具体用于,
根据所述用户元素集合,对各聚类模型下所述用户元素集合所属类别中的元素的推荐分数进行加权,并将加权后的推荐分数按从高到低的顺序进行推荐排序,其中,精确度高的聚类模型下所述用户元素集合所属类别中的元素的推荐分数加权权重高于精确度低的聚类模型下所述用户元素集合所属类别中的元素的推荐分数的加权权重;
根据推荐排序结果,将各聚类模型下所述用户元素集合所属类别中的元素推荐给所述用户元素集合所对应的用户,其中,推荐给用户的元素中不包括属于该用户元素集合的元素。
12.如权利要求7至11任一项所述的设备,其特征在于,
所述存储模块具体用于,存储多个具有相同哈希函数组数量、但每个哈希函数组中的哈希函数数量不同的MinHash聚类模型;
所述聚类模块具体用于,按照哈希函数组中的哈希函数数量递减的顺序依次使用相应聚类模型对用户所对应的用户元素集合进行聚类处理,以确定用户元素集合所属的类别,直到聚类召回率满足设定要求时停止聚类处理;或,
所述储存模块具体用于,存储多个具有不同哈希函数组数量、但每个哈希函数组中的哈希函数数量相同的MinHash聚类模型;
所述聚类模块具体用于,按照哈希函数组数量递增的顺序依次使用相应聚类模型对用户所对应的用户元素集合进行聚类处理,以确定用户元素集合所属的类别,直到聚类召回率满足设定要求时停止聚类处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110005636.1A CN102591873B (zh) | 2011-01-12 | 2011-01-12 | 一种信息推荐方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110005636.1A CN102591873B (zh) | 2011-01-12 | 2011-01-12 | 一种信息推荐方法和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102591873A CN102591873A (zh) | 2012-07-18 |
CN102591873B true CN102591873B (zh) | 2016-01-20 |
Family
ID=46480542
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110005636.1A Active CN102591873B (zh) | 2011-01-12 | 2011-01-12 | 一种信息推荐方法和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102591873B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103020846B (zh) * | 2012-12-14 | 2019-11-26 | 百度在线网络技术(北京)有限公司 | 一种移动应用的推送方法及系统 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103064887B (zh) * | 2012-12-10 | 2016-01-20 | 华为技术有限公司 | 一种推荐信息的方法和设备 |
CN103020845B (zh) * | 2012-12-14 | 2018-08-10 | 百度在线网络技术(北京)有限公司 | 一种移动应用的推送方法及系统 |
CN103077220B (zh) * | 2012-12-29 | 2016-06-29 | 中国科学院深圳先进技术研究院 | 一种基于用户群关联度的个性化推荐方法及系统 |
CN105335368B (zh) * | 2014-06-06 | 2018-11-16 | 阿里巴巴集团控股有限公司 | 一种产品聚类方法及装置 |
KR101624272B1 (ko) * | 2014-11-28 | 2016-05-25 | 비씨카드(주) | 사용 업종 예측을 위한 카드 사용 패턴 분석 방법 및 이를 수행하는 서버 |
CN107194769A (zh) * | 2017-05-17 | 2017-09-22 | 东莞市华睿电子科技有限公司 | 一种基于用户搜索内容的商品推荐方法 |
CN109032683B (zh) * | 2017-05-31 | 2021-03-26 | 腾讯科技(深圳)有限公司 | 配置数据处理方法及装置 |
CN109190029B (zh) * | 2018-08-22 | 2021-09-28 | 中食安泓(广东)健康产业有限公司 | 云端智能信息推送平台工作方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20100067816A (ko) * | 2008-12-12 | 2010-06-22 | 주식회사 케이티 | 프라이버시를 보호하는 개인화 추천 서비스 제공방법 및 제공서버 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100169258A1 (en) * | 2008-12-31 | 2010-07-01 | Microsoft Corporation | Scalable Parallel User Clustering in Discrete Time Window |
-
2011
- 2011-01-12 CN CN201110005636.1A patent/CN102591873B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20100067816A (ko) * | 2008-12-12 | 2010-06-22 | 주식회사 케이티 | 프라이버시를 보호하는 개인화 추천 서비스 제공방법 및 제공서버 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103020846B (zh) * | 2012-12-14 | 2019-11-26 | 百度在线网络技术(北京)有限公司 | 一种移动应用的推送方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN102591873A (zh) | 2012-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102591873B (zh) | 一种信息推荐方法和设备 | |
US7904303B2 (en) | Engagement-oriented recommendation principle | |
CN105677715B (zh) | 一种基于多用户的视频推荐方法及装置 | |
CN105701216B (zh) | 一种信息推送方法及装置 | |
CN104102648B (zh) | 基于用户行为数据的兴趣推荐方法及装置 | |
CN106776660A (zh) | 一种信息推荐方法及装置 | |
CN107896153B (zh) | 一种基于移动用户上网行为的流量套餐推荐方法及装置 | |
CN102999588A (zh) | 一种多媒体应用的推荐方法和系统 | |
CN107295107A (zh) | 推荐方法、推荐装置以及移动终端 | |
CN104182392B (zh) | 服务推荐处理的方法和装置 | |
CN102073699A (zh) | 用于基于用户行为来改善搜索结果的方法、装置和设备 | |
CN109409928A (zh) | 一种素材推荐方法、装置、存储介质、终端 | |
TW201447797A (zh) | 內容個人化之多相排序方法和系統 | |
CN103077220A (zh) | 一种基于用户群关联度的个性化推荐方法及系统 | |
JP2010534370A (ja) | 複合アルゴリズム利用した情報推薦方法及び装置 | |
CN103544623A (zh) | 一种基于用户偏好特征建模的Web 服务推荐方法 | |
KR101427104B1 (ko) | 소셜 네트워크 기반의 콘텐츠 추천 시스템과 방법 및콘텐츠 제공서버 | |
CN103034660B (zh) | 信息提供方法、装置及系统 | |
CN103729362A (zh) | 导航内容的确定方法和装置 | |
CN106326297B (zh) | 一种应用程序推荐方法及装置 | |
CN108664654A (zh) | 一种基于用户相似度的主播推荐方法及装置 | |
CN109767293A (zh) | 一种推荐方法、装置、设备及可读存储介质 | |
CN107092609A (zh) | 一种信息推送方法及装置 | |
CN107103028A (zh) | 一种信息处理方法及装置 | |
CN102930052A (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
EE01 | Entry into force of recordation of patent licensing contract |
Application publication date: 20120718 Assignee: Ocean interactive (Beijing) Information Technology Co., Ltd. Assignor: Tencent Technology (Shenzhen) Co., Ltd. Contract record no.: 2016990000422 Denomination of invention: Method and equipment for information recommendation Granted publication date: 20160120 License type: Common License Record date: 20161009 |
|
LICC | Enforcement, change and cancellation of record of contracts on the licence for exploitation of a patent or utility model |