CN103995831B - 基于物品间相似度的物品处理方法、系统和装置 - Google Patents
基于物品间相似度的物品处理方法、系统和装置 Download PDFInfo
- Publication number
- CN103995831B CN103995831B CN201410158957.9A CN201410158957A CN103995831B CN 103995831 B CN103995831 B CN 103995831B CN 201410158957 A CN201410158957 A CN 201410158957A CN 103995831 B CN103995831 B CN 103995831B
- Authority
- CN
- China
- Prior art keywords
- article
- feature
- similarity
- list
- original
- 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
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/903—Querying
-
- 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/901—Indexing; Data structures therefor; Storage structures
Abstract
本发明公开了一种基于物品间相似度的物品处理方法、系统和装置,所述方法包括:根据物品处理指令所涉及的物品的名称,查找物品间相似度列表中以该物品的名称为索引的相似度记录,根据查找到的相似度记录进行物品处理;其中,物品间相似度列表的更新包括:对于新增物品,从以特征为索引的特征列表中查找出与新增物品的特征相同的特征后,确定查找出的特征所对应的原有物品的名称;在物品间相似度列表中、以原有物品的名称为索引的相似度记录中,存储原有物品与新增物品间的相似度;在物品间相似度列表中创建以新增物品的名称为索引的相似度记录,存储新增物品与原有物品间的相似度;从而加快相似度更新和物品处理的速度。
Description
技术领域
本发明涉及计算机领域,尤其涉及一种基于物品间相似度的物品处理方法、系统和装置。
背景技术
随着互联网技术迅猛发展,网上信息爆炸式增长,基于特征向量的相似度计算已广泛应用于多个领域。例如,在物品推荐系统中,可将待推荐物品等以特征向量的方式表示,通过计算各待推荐物品的特征向量之间的相似度,建立相似度数据模型;这样,物品推荐系统可根据用户的需求、兴趣等,将用户感兴趣的物品推荐给用户,从而避免信息超载给用户带来的不便。再如,在垃圾邮件过滤系统中,将电子邮件的邮件数据以特征向量表示,通过计算各电子邮件的特征向量之间的相似度,对电子邮件进行分类,以便于垃圾邮件过滤规则的挖掘。为便于描述,在本文中将物品推荐系统中的待推荐物品、垃圾邮件过滤系统中的电子邮件等统称为物品。
在实际应用中,随着物品推荐系统、垃圾邮件过滤系统的不断运行,这些系统中的物品的数量将越来越多。现有技术中当有新增物品时,提取新增物品的特征,进而得到新增物品的特征向量后,分别计算新增物品的特征向量与之前的所有原有物品的特征向量之间的相似度,从而得到当前的全部物品的特征向量间的相似度;从而物品推荐系统可基于得到的物品间相似度进行物品推荐,垃圾邮件过滤系统也可基于得到的物品间相似度进行电子邮件(物品)分类。其中,物品的特征向量间的相似度即表示物品间的相似度。然而,这种方式的计算量较大,每当有新增物品时,需要计算新增物品的特征向量与之前的所有原有物品的特征向量之间的相似度,在原有物品较多的情况下,这种方式的计算量将非常大,占用的计算资源较多,导致相似度更新速度较慢。而且,现有技术中基于物品间相似度进行物品推荐或分类时占用时间较长,使得用户体验较差。
发明内容
针对上述现有技术存在的缺陷,本发明提供了一种基于物品间相似度的物品处理方法、系统和装置,用以加快相似度更新速度,并加快物品处理速度。
本发明实施例提供了一种基于物品间相似度的物品处理方法,包括:
在接收到物品处理指令后,根据所述物品处理指令所涉及的物品的名称,查找物品间相似度列表中以该物品的名称为索引的相似度记录,并根据查找到的相似度记录中所涉及的物品进行物品处理;其中,所述物品间相似度列表是以如下方法进行更新的:
对于新增物品,在提取其特征后,根据提取的特征确定所述新增物品的特征向量;
从以特征为索引的特征列表中查找出与所述新增物品的特征相同的特征后,进一步从所述特征列表中确定查找出的特征所对应的原有物品的名称;
对于确定出的每个原有物品的名称,在所述物品间相似度列表中的、以该原有物品的名称为索引的相似度记录中,存储该原有物品的特征向量与所述新增物品的特征向量间的相似度;并
在所述物品间相似度列表中,创建以所述新增物品的名称为索引的一条相似度记录,并在该相似度记录中存储所述新增物品的特征向量与各确定出的原有物品的特征向量间的相似度。
较佳地,在所述确定所述新增物品的特征向量后,还包括:
对于所述新增物品的每个特征,将该特征与所述特征列表中存储的特征进行比对,若该特征不存在于所述特征列表中,则在所述特征列表中创建以该特征为索引的特征记录后,在该特征记录中存储所述新增物品的名称;以及
所述从以特征为索引的特征列表中查找出与所述新增物品的特征相同的特征后,还包括:
对于查找出的每个特征,在以该特征为索引的特征记录中存储所述新增物品的名称。
其中,所述物品间相似度列表和所述特征列表是预先创建的:
对于预先得到的若干原有物品中的每个原有物品,提取该原有物品的特征后,确定出该原有物品的特征向量;
将各原有物品的特征组成特征集合后,创建所述特征列表;并
对于所述特征集合中的每个特征,在所述特征列表中创建一条以该特征为索引的特征记录,将具有该特征的原有物品的名称存储到该特征记录中;
对于所述特征列表中记录的每个特征,将以该特征为索引的特征记录中所涉及的任意两个原有物品确定为一对原有物品对,计算出该对原有物品的特征向量间的相似度;
创建所述物品间相似度列表后,对于每个原有物品,在所述物品间相似度列表中创建以该原有物品的名称为索引的相似度记录,并在该相似度记录中存储计算出的该原有物品的特征向量与其它原有物品的特征向量间的相似度。
较佳地,所述物品处理指令具体为物品推荐指令;以及所述根据查找到的相似度记录进行物品处理,具体为:根据查找到的相似度记录中所涉及的物品进行物品推荐。
较佳地,在所述创建以所述新增物品的名称为索引的一条相似度记录,并在该相似度记录中存储所述新增物品的特征向量与各确定出的原有物品的特征向量间的相似度后,还包括:
根据所述新增物品所对应的相似度记录中所涉及的各物品的类别属性,确定出所述新增物品的类别属性后,在该相似度记录中进行存储;
或者,所述物品处理指令具体为物品类别请求指令;以及所述根据查找到的相似度记录进行物品处理,具体为:根据查找到的相似度记录中存储的、该物品类别请求指令所涉及的物品的类别属性,进行所述物品类别请求的响应。
本发明实施例还提供了一种物品间相似度的更新方法,包括:
对于新增物品,在提取其特征后,根据提取的特征确定所述新增物品的特征向量;
从以特征为索引的特征列表中查找出与所述新增物品的特征相同的特征后,进一步从所述特征列表中确定查找出的特征所对应的原有物品的名称后,对以物品的名称为索引的物品间相似度列表进行更新:
对于确定出的每个原有物品的名称,在所述物品间相似度列表中的、以该原有物品的名称为索引的相似度记录中,存储该原有物品的特征向量与所述新增物品的特征向量间的相似度;并
在所述物品间相似度列表中,创建以所述新增物品的名称为索引的一条相似度记录,并在该相似度记录中存储所述新增物品的特征向量与各确定出的原有物品的特征向量间的相似度。
本发明实施例还提供了一种基于物品间相似度的物品处理系统,包括:
特征向量确定模块,用于对于新增物品,在提取其特征后,根据提取的特征确定所述新增物品的特征向量;
特征列表查找模块,用于从以特征为索引的特征列表中查找出与所述新增物品的特征相同的特征后,进一步从所述特征列表中确定查找出的特征所对应的原有物品的名称;
物品间相似度列表更新模块,用于对以物品的名称为索引的物品间相似度列表进行更新:对于所述特征列表查找模块确定出的每个原有物品的名称,在所述物品间相似度列表中的、以该原有物品的名称为索引的相似度记录中,存储该原有物品的特征向量与所述新增物品的特征向量间的相似度;并在所述物品间相似度列表中,创建以所述新增物品的名称为索引的一条相似度记录,在该相似度记录中存储所述新增物品的特征向量与各确定出的原有物品的特征向量间的相似度;
指令处理模块,用于在接收到物品处理指令后,根据所述物品处理指令所涉及的物品的名称,查找所述物品间相似度列表中以该物品的名称为索引的相似度记录,并根据查找到的相似度记录中所涉及的物品进行物品处理。
进一步,所述基于物品间相似度的物品处理系统,还包括:
特征列表更新模块,用于对于所述新增物品的每个特征,将该特征与所述特征列表中存储的特征进行比对,若该特征不存在于所述特征列表中,则在所述特征列表中创建以该特征为索引的特征记录后,在该特征记录中存储所述新增物品的名称;若该特征存在于所述特征列表中,则在以该特征为索引的特征记录中存储所述新增物品的名称。
进一步,所述基于物品间相似度的物品处理系统,还包括:
特征列表确定模块,用于对于预先得到的若干原有物品中的每个原有物品,提取该原有物品的特征后,确定出该原有物品的特征向量;将各原有物品的特征组成特征集合后,创建所述特征列表;并对于所述特征集合中的每个特征,在所述特征列表中创建一条以该特征为索引的特征记录,将具有该特征的原有物品的名称存储到该特征记录中;
物品间相似度列表确定模块,用于对于所述特征列表中记录的每个特征,将以该特征为索引的特征记录中所涉及的任意两个原有物品确定为一对原有物品对,计算出该对原有物品的特征向量间的相似度;并在创建所述物品间相似度列表后,对于每个原有物品,在所述物品间相似度列表中创建以该原有物品的名称为索引的相似度记录,并在该相似度记录中存储计算出的该原有物品的特征向量与其它原有物品的特征向量间的相似度。
本发明实施例还提供了一种物品间相似度的更新装置,包括:
特征向量确定模块,用于对于新增物品,在提取其特征后,根据提取的特征确定所述新增物品的特征向量;
特征列表查找模块,用于从以特征为索引的特征列表中查找出与所述新增物品的特征相同的特征后,进一步从所述特征列表中确定查找出的特征所对应的原有物品的名称;
物品间相似度列表更新模块,用于对以物品的名称为索引的物品间相似度列表进行更新:对于所述特征列表查找模块确定出的每个原有物品的名称,在所述物品间相似度列表中的、以该原有物品的名称为索引的相似度记录中,存储该原有物品的特征向量与所述新增物品的特征向量间的相似度;并在所述物品间相似度列表中,创建以所述新增物品的名称为索引的一条相似度记录,在该相似度记录中存储所述新增物品的特征向量与各确定出的原有物品的特征向量间的相似度。
本发明的技术方案中,由于有新增物品时,仅计算新增物品与那些与其具有至少一个共同特征的原有物品间的相似度,便可完成物品间相似度列表的更新,从而尽量避免了冗余计算,减少了计算量、节省了计算资源;对于原有物品的数量较多的情况,减少计算量、节省计算资源的效果尤为明显。而且,基于以物品的名称为索引的相似度记录,可较快地查找到与某个物品具有较大相似度的物品,有助于加快物品处理(如物品推荐或物品分类)的速度。
附图说明
图1为本发明实施例的得到物品间相似度列表的方法的流程图;
图2为本发明实施例的物品间相似度的更新方法的流程图;
图3为本发明实施例的基于物品间相似度的物品处理系统的内部结构框图。
具体实施方式
以下将结合附图对本发明的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施例,都属于本发明所保护的范围。
本申请使用的“模块”、“系统”等术语旨在包括与计算机相关的实体,例如但不限于硬件、固件、软硬件组合、软件或者执行中的软件。例如,模块可以是,但并不仅限于:处理器上运行的进程、处理器、对象、可执行程序、执行的线程、程序和/或计算机。举例来说,计算设备上运行的应用程序和此计算设备都可以是模块。一个或多个模块可以位于执行中的一个进程和/或线程内,一个模块也可以位于一台计算机上和/或分布于两台或更多台计算机之间。
本发明的发明人发现,当有新增物品时,提取出的新增物品的特征可能仅有几个,这样确定新增物品与各原有物品间的相似度时,计算那些与新增物品具有至少一个共同特征的原有物品与新增物品之间的相似度,对于物品间相似度的确定才有意义,而其它与新增物品没有共同特征的原有物品与新增物品之间的相似度为零,对于物品间相似度的确定并无实际意义,为冗余计算。其中,若一个物品具有某个特征,则该物品的特征向量中该特征相对应的元素值不为零;若该物品不具有某个特征,则该物品的特征向量中该特征相对应的元素值为零。
基于上述的分析,本发明的技术方案中,将物品间的相似度以物品的名称为索引记录到物品间相似度列表中,即对于每个物品,在物品间相似度列表中创建以该物品的名称为索引的相似度记录,并将其它物品与该物品间的相似度记录到其中。并且,通过以特征为索引的特征列表对具有某个特征的物品的名称进行记录。这样,若有新增物品,则可基于以特征为索引的特征列表,确定出与新增物品具有至少一个共同特征的原有物品,并计算新增物品与确定出的这些原有物品间的相似度后对物品间相似度列表进行更新。由于有新增物品时,仅计算新增物品与那些与其具有至少一个共同特征的原有物品间的相似度,便可完成物品间相似度列表的更新,从而尽量避免了冗余计算,减少了计算量、节省了计算资源;对于原有物品的数量较多的情况,减少计算量、节省计算资源的效果尤为明显。而且,基于以物品的名称为索引的相似度记录,可较快地查找到与某个物品具有较大相似度的物品,有助于加快物品处理速度。
下面结合附图详细说明本发明的技术方案。本发明实施例中当物品推荐系统或者垃圾邮件过滤系统中有新增物品而需要进行物品间相似度的更新之前,可计算出各原有物品的特征向量间的相似度,记录于以物品的名称为索引的相似度记录中,从而得到物品间相似度列表。具体地,得到记录有原有物品间的相似度的物品间相似度列表的方法的流程,如图1所示,包括如下步骤:
S101:对于每个原有物品,提取该原有物品的特征后,确定出该原有物品的特征向量。
具体地,对于每个原有物品,可根据现有的特征提取方法提取该原有物品的特征,并分别计算各特征对该原有物品的权重值,进而得到该原有物品的特征向量。例如,原有物品为b,提取出的原有物品b的特征为A、B,特征A、B对原有物品b的权重值分别为Ab、Bb,则可将原有物品b的特征向量以析出方式表示为{<A,Ab>,<B,Bb>},也就是记录原有物品b的特征向量中不为零的元素及相应的特征,这种以析出方式记录特征向量的方式可节省存储空间。
S102:建立原有物品的特征的倒排索引,得到以特征为索引的特征列表。
具体地,建立原有物品的特征的倒排索引,也就是将各原有物品的特征组成特征集合后,创建以特征为索引的特征列表,并对于特征集合中的每个特征,在特征列表中创建一条以该特征为索引的特征记录,将具有该特征的原有物品的名称存储到该特征记录中。这样,各条特征记录组成了以特征为索引的特征列表。
例如,原有物品a、b、c、d的特征向量分别以析出方式表示为{<A,Aa>}、{<A,Ab>,<B,Bb>}、{<B,Bc>,<C,Cc>}、{<B,Bd>},则得到的以特征为索引的特征列表可如下表1所示。A、B、C表示原有物品a、b、c、d的特征。
表1
索引 | 特征记录 |
A | <a,Aa>、<b,Ab> |
B | <b,Bb>、<c,Bc>、<d,Bd> |
C | <c,Cc> |
S103:确定出具有至少一个共同特征的原有物品对,并计算每对原有物品间的相似度。
具体地,对于特征列表中记录的每个特征,查找特征列表(如上表1)中、以该特征为索引的特征记录,将该特征记录中涉及的任意两个原有物品确定为一对原有物品对,计算出该对原有物品的特征向量间的相似度,即为该对原有物品间的相似度。
其中,对于一对原有物品,可根据现有的夹角余弦法或者Jaccard系数法计算出该对原有物品的特征向量间的相似度。
此外,对于任一对具有至少一个共同特征的物品x和物品y,还可根据权重归一化计算方法计算物品x和物品y间的相似度,具体为:
若物品x和物品y的特征向量分别以析出方式表示为{<P,Px>,<Q,Qx>,<R,Rx>}、{<Q,Qy>,<R,Ry>,<S,Sy>,<T,Ty>};其中,P、Q、R为物品x的特征,Px、Qx、Rx分别为特征P、Q、R对物品x的权重值;Q、R、S、T为物品y的特征,Qy、Ry、Sy、Ty分别为特征Q、R、S、T对物品y的权重值,则可确定出物品x和物品y具有共同特征Q、R后,根据如下公式1计算出物品x和物品y间的相似度Sim(x,y):
公式1中,为特征Q对物品x的归一化权重值;为特征Q对物品y的归一化权重值;为特征R对物品x的归一化权重值;为特征R对物品y的归一化权重值。
S104:创建物品间相似度列表,并对于每个原有物品,在物品间相似度列表中创建以该原有物品的名称为索引的相似度记录,并在该相似度记录中存储计算出的该原有物品的特征向量与其它原有物品的特征向量间的相似度,从而可得到记录有各原有物品间的相似度的物品间相似度列表。
其中,以某个原有物品(记为原有物品x)的名称为索引的相似度记录中可包括若干相似度子记录,每条相似度子记录中存储有与原有物品x具有至少一个共同特征的其它原有物品(记为原有物品y)的名称、以及原有物品x和原有物品y之间的相似度。例如,原有物品为a、b、c、d,得到的物品间相似度列表可如下表2所示:
表2
索引 | 相似度记录 |
a | <b,sim(a,b)> |
b | <a,sim(a,b)>、<c,sim(b,c)>、<d,sim(b,d)> |
c | <b,sim(b,c)>、<d,sim(c,d)> |
d | <b,sim(b,d)>、<c,sim(d,c)> |
基于上述的物品间相似度列表,本发明实施例提供的物品间相似度的更新方法的流程,如图2所示,具体包括如下步骤:
S201:对于新增物品,提取出新增物品的特征,并根据提取的特征确定新增物品的特征向量。
具体地,物品推荐系统中有新的待推荐物品,或垃圾邮件过滤系统中有新的电子邮件等时,可将新的待推荐物品或者新的电子邮件作为新增物品,根据现有的特征提取方法,提取出新增物品的特征,并计算出每个特征对新增物品的权重值,进而得到新增物品的特征向量。例如,新增物品为e,其特征为B、C、D,特征B、C、D对新增物品e的权重值分别为Be、Ce、De,则新增物品e的特征向量可以析出方式表示为{<B,Be>,<C,Ce>,<D,De>}。
S202:从以特征为索引的特征列表中查找出与新增物品的特征相同的特征后,进一步从特征列表中确定查找出的特征所对应的原有物品的名称。
具体地,对于新增物品的每个特征,从以特征为索引的特征列表中查找出与该特征相同的特征,并进一步从特征列表中确定出查找到的特征所对应的原有物品的名称,这样也就确定出了与新增物品具有至少一个共同特征的原有物品。
进一步,从以特征为索引的特征列表中查找出与新增物品的特征相同的特征后,还可以对于新增物品的每个特征,查找特征列表中是否存储有以该特征为索引的特征记录;若有,则在查找到的特征记录中存储新增物品的名称;否则,创建以该特征为索引的特征记录后,在该特征记录中存储新增物品的名称。也就是说,建立新增物品的特征的倒排索引后,将新增物品的特征的倒排索引与原有物品的特征的倒排索引进行合并,得到合并后的特征列表;例如,新增物品为e,其特征向量以析出方式表示为{<B,Be>,<C,Ce>,<D,De>},原有物品为上述的a、b、c、d,合并后的特征列表可如下表3所示。
表3
索引 | 特征记录 |
A | <a,Aa>、<b,Ab> |
B | <b,Bb>、<c,Bc>、<d,Bd>、<e,Be> |
C | <c,Cc>、<e,Ce> |
D | <e,De> |
S203:对于确定出的每个原有物品的名称,更新物品间相似度列表中的、以该原有物品的名称为索引的相似度记录。
具体地,在上述步骤S202中确定出与新增物品具有至少一个共同特征的原有物品后,可在本步骤中,采用上述提及的夹角余弦法、或者Jaccard系数法、或者权重归一化计算方法,分别计算新增物品的特征向量与确定出的每个原有物品的特征向量间的相似度。并且,对于确定出的每个原有物品的名称,在物品间相似度列表中的、以该原有物品的名称为索引的相似度记录中,存储该原有物品的特征向量与新增物品的特征向量间的相似度。其中,特征向量间的相似度的计算可在Hadoop集群上基于MapReduce框架完成;这样,将相似度的计算分布在多台计算机上,可处理大数据量,降低计算的时间复杂度。
例如,原有物品为上述的a、b、c、d,新增物品为e,经过本步骤的更新后,可得到如下表4所示的物品间相似度列表。
表4
索引 | 相似度记录 |
a | <b,sim(a,b)> |
b | <a,sim(a,b)>、<c,sim(b,c)>、<d,sim(b,d)>、<e,sim(b,e)> |
c | <b,sim(b,c)>、<d,sim(c,d)>、<e,sim(c,e)> |
d | <b,sim(b,d)>、<c,sim(c,d)>、<e,sim(d,e)> |
S204:在物品间相似度列表中,创建以新增物品的名称为索引的一条相似度记录,并在该相似度记录中存储新增物品的特征向量与各确定出的原有物品的特征向量间的相似度。
其中,物品间相似度列表中的以某个物品(即为物品m)的名称为索引的相似度记录中可包括若干相似度子记录,每个相似度子记录中记录有与物品m具有至少一个共同特征的一个物品(记为物品n)的名称、以及物品m和物品n之间的相似度。例如,原有物品为上述的a、b、c、d,新增物品为e,则在本步骤中可得到如下表5所示的物品间相似度列表。
表5
索引 | 相似度记录 |
a | <b,sim(a,b)> |
b | <a,sim(a,b)>、<c,sim(b,c)>、<d,sim(b,d)>、<e,sim(b,e)> |
c | <b,sim(b,c)>、<d,sim(c,d)>、<e,sim(c,e)> |
d | <b,sim(b,d)>、<c,sim(c,d)>、<e,sim(d,e)> |
e | <b,sim(b,e)>、<c,sim(c,e)>、<d,sim(d,e)> |
其中,上述的步骤S203和S204并没有严格的执行顺序,可先执行S203,也可先执行S204,还可并行执行S203和S204。
进一步,在创建以新增物品的名称为索引的一条相似度记录,并在该相似度记录中存储新增物品的特征向量与各确定出的原有物品的特征向量间的相似度后,还可根据新增物品所对应的相似度记录中所涉及的各物品的类别属性,确定出新增物品的类别属性后,在该相似度记录中对新增物品的类别属性进行存储。其中,物品的类别属性标识了物品所属的类别。
之后,若再有新增物品,可将物品间相似度列表中记录的各物品均作为原有物品,根据上述的步骤S201~S204进行物品间相似度的更新。
基于上述的物品间相似度列表,本发明实施例的基于物品间相似度的物品处理方法,具体可以为:在接收到物品处理指令后,根据物品处理指令所涉及的物品的名称,查找物品间相似度列表中,以该物品的名称为索引的相似度记录,并根据查找到的相似度记录进行物品处理;其中,物品间相似度列表是根据上述步骤S201~S204所示的方法进行更新的。
进一步,上述的物品处理指令具体可以为物品推荐指令;相应地,根据查找到的相似度记录进行物品处理,也就是根据查找到的相似度记录中所涉及的物品进行物品推荐,例如,将查找到的相似度记录中所涉及的所有物品进行推荐,或者将查找到的相似度记录中所涉及的设定个数的物品进行推荐。
或者,上述的物品处理指令具体可以为物品类别请求指令;相应地,根据查找到的相似度记录进行物品处理,也就是根据查找到的相似度记录中存储的、该物品类别请求指令所涉及的物品的类别属性,进行该物品类别请求的响应(即将该物品类别请求所涉及的物品的类别属性携带于响应中进行返回)。
基于上述的基于物品间相似度的物品处理方法,本发明实施例提供的基于物品间相似度的物品处理系统的内部结构框图,如图3所示,具体包括:特征向量确定模块301、特征列表查找模块302、物品间相似度列表更新模块303和指令处理模块304。
特征向量确定模块301用于对于新增物品,在提取其特征后,根据提取的特征确定新增物品的特征向量。
特征列表查找模块302用于从以特征为索引的特征列表中查找出与新增物品的特征相同的特征后,进一步从特征列表中确定查找出的特征所对应的原有物品的名称。
物品间相似度列表更新模块303用于对以物品的名称为索引的物品间相似度列表进行更新:对于特征列表查找模块302确定出的每个原有物品的名称,在物品间相似度列表中的、以该原有物品的名称为索引的相似度记录中,存储该原有物品的特征向量与新增物品的特征向量间的相似度;并在物品间相似度列表中,创建以新增物品的名称为索引的一条相似度记录,在该相似度记录中存储新增物品的特征向量与各确定出的原有物品的特征向量间的相似度。
指令处理模块304用于在接收到物品处理指令后,根据物品处理指令所涉及的物品的名称,查找物品间相似度列表中以该物品的名称为索引的相似度记录,并根据查找到的相似度记录中所涉及的物品进行物品处理。
进一步,上述的基于物品间相似度的物品处理系统还可包括:特征列表更新模块305、特征列表确定模块306和物品间相似度列表确定模块307。
特征列表更新模块305用于对于新增物品的每个特征,将该特征与特征列表中存储的特征进行比对,若该特征不存在于特征列表中,则在特征列表中创建以该特征为索引的特征记录后,在该特征记录中存储新增物品的名称;若该特征存在于特征列表中,则在特征列表中的以该特征为索引的特征记录中存储新增物品的名称。
特征列表确定模块306用于对于预先得到的若干原有物品中的每个原有物品,提取该原有物品的特征后,确定出该原有物品的特征向量;将各原有物品的特征组成特征集合后,创建所述特征列表;并对于所述特征集合中的每个特征,在所述特征列表中创建一条以该特征为索引的特征记录,将具有该特征的原有物品的名称存储到该特征记录中。
物品间相似度列表确定模块307用于对于特征列表中记录的每个特征,将以该特征为索引的特征记录中所涉及的任意两个原有物品确定为一对原有物品对,计算出该对原有物品的特征向量间的相似度;并在创建物品间相似度列表后,对于每个原有物品,在物品间相似度列表中创建以该原有物品的名称为索引的相似度记录,并在该相似度记录中存储计算出的该原有物品的特征向量与其它原有物品的特征向量间的相似度。
基于上述的物品间相似度的更新方法,本发明实施例的物品间相似度的更新装置包括:上述的特征向量确定模块301、特征列表查找模块302和物品间相似度列表更新模块303。进一步,物品间相似度的更新装置还可包括:上述的特征列表更新模块305、特征列表确定模块306和物品间相似度列表确定模块307。
综上所述,本发明技术方案中,由于有新增物品时,仅计算新增物品与那些与其具有至少一个共同特征的原有物品间的相似度,便可完成物品间相似度列表的更新,从而尽量避免了冗余计算,减少了计算量、节省了计算资源;对于原有物品的数量较多的情况,减少计算量、节省计算资源的效果尤为明显。而且,基于以物品的名称为索引的相似度记录,可较快地查找到与某个物品具有较大相似度的物品,有助于加快物品处理(如物品推荐或物品分类)的速度。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种基于物品间相似度的物品处理方法,其特征在于,包括:
在接收到物品处理指令后,根据所述物品处理指令所涉及的物品的名称,查找物品间相似度列表中以该物品的名称为索引的相似度记录,并根据查找到的相似度记录进行物品推荐或物品分类;其中,所述物品间相似度列表是以如下方法进行更新的:
对于新增物品,在提取其特征后,根据提取的特征确定所述新增物品的特征向量;
从以特征为索引的特征列表中查找出与所述新增物品的特征相同的特征后,进一步从所述特征列表中确定查找出的特征所对应的原有物品的名称;
对于确定出的每个原有物品的名称,在所述物品间相似度列表中的、以该原有物品的名称为索引的相似度记录中,存储该原有物品的特征向量与所述新增物品的特征向量间的相似度;并
在所述物品间相似度列表中,创建以所述新增物品的名称为索引的一条相似度记录,并在该相似度记录中存储所述新增物品的特征向量与各确定出的原有物品的特征向量间的相似度。
2.如权利要求1所述的方法,其特征在于,在所述确定所述新增物品的特征向量后,还包括:
对于所述新增物品的每个特征,将该特征与所述特征列表中存储的特征进行比对,若该特征不存在于所述特征列表中,则在所述特征列表中创建以该特征为索引的特征记录后,在该特征记录中存储所述新增物品的名称;以及
所述从以特征为索引的特征列表中查找出与所述新增物品的特征相同的特征后,还包括:
对于查找出的每个特征,在以该特征为索引的特征记录中存储所述新增物品的名称。
3.如权利要求2所述的方法,其特征在于,所述物品间相似度列表和所述特征列表是预先创建的:
对于预先得到的若干原有物品中的每个原有物品,提取该原有物品的特征后,确定出该原有物品的特征向量;
将各原有物品的特征组成特征集合后,创建所述特征列表;并
对于所述特征集合中的每个特征,在所述特征列表中创建一条以该特征为索引的特征记录,将具有该特征的原有物品的名称存储到该特征记录中;
对于所述特征列表中记录的每个特征,将以该特征为索引的特征记录中所涉及的任意两个原有物品确定为一对原有物品对,计算出该对原有物品的特征向量间的相似度;
创建所述物品间相似度列表后,对于每个原有物品,在所述物品间相似度列表中创建以该原有物品的名称为索引的相似度记录,并在该相似度记录中存储计算出的该原有物品的特征向量与其它原有物品的特征向量间的相似度。
4.如权利要求1-3任一所述的方法,其特征在于,所述物品处理指令具体为物品推荐指令;以及所述根据查找到的相似度记录进行物品处理,具体为:根据查找到的相似度记录中所涉及的物品进行物品推荐。
5.如权利要求1-3任一所述的方法,其特征在于,
在所述创建以所述新增物品的名称为索引的一条相似度记录,并在该相似度记录中存储所述新增物品的特征向量与各确定出的原有物品的特征向量间的相似度后,还包括:
根据所述新增物品所对应的相似度记录中所涉及的各物品的类别属性,确定出所述新增物品的类别属性后,在该相似度记录中进行存储;以及
所述物品处理指令具体为物品类别请求指令;以及所述根据查找到的相似度记录进行物品处理,具体为:根据查找到的相似度记录中存储的、该物品类别请求指令所涉及的物品的类别属性,进行所述物品类别请求的响应。
6.一种物品间相似度的更新方法,其特征在于,包括:
对于新增物品,在提取其特征后,根据提取的特征确定所述新增物品的特征向量;
从以特征为索引的特征列表中查找出与所述新增物品的特征相同的特征后,进一步从中确定查找出的特征所对应的原有物品的名称后,对以物品的名称为索引的物品间相似度列表进行更新:
对于确定出的每个原有物品的名称,在所述物品间相似度列表中的、以该原有物品的名称为索引的相似度记录中,存储该原有物品的特征向量与所述新增物品的特征向量间的相似度;并
在所述物品间相似度列表中,创建以所述新增物品的名称为索引的一条相似度记录,并在该相似度记录中存储所述新增物品的特征向量与各确定出的原有物品的特征向量间的相似度。
7.一种基于物品间相似度的物品处理系统,其特征在于,包括:
特征向量确定模块,用于对于新增物品,在提取其特征后,根据提取的特征确定所述新增物品的特征向量;
特征列表查找模块,用于从以特征为索引的特征列表中查找出与所述新增物品的特征相同的特征后,进一步从所述特征列表中确定查找出的特征所对应的原有物品的名称;
物品间相似度列表更新模块,用于对以物品的名称为索引的物品间相似度列表进行更新:对于所述特征列表查找模块确定出的每个原有物品的名称,在所述物品间相似度列表中的、以该原有物品的名称为索引的相似度记录中,存储该原有物品的特征向量与所述新增物品的特征向量间的相似度;并在所述物品间相似度列表中,创建以所述新增物品的名称为索引的一条相似度记录,在该相似度记录中存储所述新增物品的特征向量与各确定出的原有物品的特征向量间的相似度;
指令处理模块,用于在接收到物品处理指令后,根据所述物品处理指令所涉及的物品的名称,查找所述物品间相似度列表中以该物品的名称为索引的相似度记录,并根据查找到的相似度记录中所涉及的物品进行物品推荐或物品分类。
8.如权利要求7所述的系统,其特征在于,还包括:
特征列表更新模块,用于对于所述新增物品的每个特征,将该特征与所述特征列表中存储的特征进行比对,若该特征不存在于所述特征列表中,则在所述特征列表中创建以该特征为索引的特征记录后,在该特征记录中存储所述新增物品的名称;若该特征存在于所述特征列表中,则在以该特征为索引的特征记录中存储所述新增物品的名称。
9.如权利要求8所述的系统,其特征在于,还包括:
特征列表确定模块,用于对于预先得到的若干原有物品中的每个原有物品,提取该原有物品的特征后,确定出该原有物品的特征向量;将各原有物品的特征组成特征集合后,创建所述特征列表;并对于所述特征集合中的每个特征,在所述特征列表中创建一条以该特征为索引的特征记录,将具有该特征的原有物品的名称存储到该特征记录中;
物品间相似度列表确定模块,用于对于所述特征列表中记录的每个特征,将以该特征为索引的特征记录中所涉及的任意两个原有物品确定为一对原有物品对,计算出该对原有物品的特征向量间的相似度;并在创建所述物品间相似度列表后,对于每个原有物品,在所述物品间相似度列表中创建以该原有物品的名称为索引的相似度记录,并在该相似度记录中存储计算出的该原有物品的特征向量与其它原有物品的特征向量间的相似度。
10.一种物品间相似度的更新装置,其特征在于,包括:
特征向量确定模块,用于对于新增物品,在提取其特征后,根据提取的特征确定所述新增物品的特征向量;
特征列表查找模块,用于从以特征为索引的特征列表中查找出与所述新增物品的特征相同的特征后,进一步从所述特征列表中确定查找出的特征所对应的原有物品的名称;
物品间相似度列表更新模块,用于对以物品的名称为索引的物品间相似度列表进行更新:对于所述特征列表查找模块确定出的每个原有物品的名称,在所述物品间相似度列表中的、以该原有物品的名称为索引的相似度记录中,存储该原有物品的特征向量与所述新增物品的特征向量间的相似度;并在所述物品间相似度列表中,创建以所述新增物品的名称为索引的一条相似度记录,在该相似度记录中存储所述新增物品的特征向量与各确定出的原有物品的特征向量间的相似度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410158957.9A CN103995831B (zh) | 2014-04-18 | 2014-04-18 | 基于物品间相似度的物品处理方法、系统和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410158957.9A CN103995831B (zh) | 2014-04-18 | 2014-04-18 | 基于物品间相似度的物品处理方法、系统和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103995831A CN103995831A (zh) | 2014-08-20 |
CN103995831B true CN103995831B (zh) | 2017-04-12 |
Family
ID=51309996
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410158957.9A Active CN103995831B (zh) | 2014-04-18 | 2014-04-18 | 基于物品间相似度的物品处理方法、系统和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103995831B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107004025B (zh) * | 2015-03-13 | 2020-07-14 | 株式会社日立制作所 | 图像检索装置及检索图像的方法 |
CN108614811B (zh) * | 2016-12-09 | 2021-11-05 | 腾讯科技(深圳)有限公司 | 一种数据分析方法及装置 |
CN107451879B (zh) * | 2017-06-12 | 2018-11-02 | 北京小度信息科技有限公司 | 信息判断方法及装置 |
CN109543107A (zh) * | 2018-11-21 | 2019-03-29 | 网易无尾熊(杭州)科技有限公司 | 数据处理方法、介质、装置和计算设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102033877A (zh) * | 2009-09-27 | 2011-04-27 | 阿里巴巴集团控股有限公司 | 检索方法和装置 |
EP2627096A1 (en) * | 2012-02-09 | 2013-08-14 | Thomson Licensing | Recommendation method using similarity metrics |
CN103400286A (zh) * | 2013-08-02 | 2013-11-20 | 世纪禾光科技发展(北京)有限公司 | 一种基于用户行为进行物品特征标注的推荐系统及方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110010307A1 (en) * | 2009-07-10 | 2011-01-13 | Kibboko, Inc. | Method and system for recommending articles and products |
-
2014
- 2014-04-18 CN CN201410158957.9A patent/CN103995831B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102033877A (zh) * | 2009-09-27 | 2011-04-27 | 阿里巴巴集团控股有限公司 | 检索方法和装置 |
EP2627096A1 (en) * | 2012-02-09 | 2013-08-14 | Thomson Licensing | Recommendation method using similarity metrics |
CN103400286A (zh) * | 2013-08-02 | 2013-11-20 | 世纪禾光科技发展(北京)有限公司 | 一种基于用户行为进行物品特征标注的推荐系统及方法 |
Non-Patent Citations (4)
Title |
---|
An Item-based collaborative filtering method using Item-based hybrid similarity;SutheeraPuntheeranurak等;《Software Engineering and Service Science (ICSESS), 2011 IEEE 2nd International Conference on》;20110717;第469-472页 * |
Employing User Attribute and Item Attribute to Enhance the Collaborative Filtering Recommendation;SongJie Gong等;《JOURNAL OF SOFTWARE》;20091031;第4卷(第8期);第883-890页 * |
基于属性相似性的Item-based协同过滤算法;彭玉等;《计算机工程与应用》;20070520;第43卷(第14期);第144-147页 * |
基于混合模型推荐算法的优化;李鹏飞等;《计算机科学》;20140228;第41卷(第2期);第68-71页 * |
Also Published As
Publication number | Publication date |
---|---|
CN103995831A (zh) | 2014-08-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11423082B2 (en) | Methods and apparatus for subgraph matching in big data analysis | |
WO2020207074A1 (zh) | 一种信息推送的方法及设备 | |
CN110019876B (zh) | 数据查询方法、电子设备及存储介质 | |
US20110225161A1 (en) | Categorizing products | |
CN103995831B (zh) | 基于物品间相似度的物品处理方法、系统和装置 | |
WO2008106668A1 (en) | User query mining for advertising matching | |
US20160328445A1 (en) | Data Query Method and Apparatus | |
CN104537341A (zh) | 人脸图片信息获取方法和装置 | |
CN112818230B (zh) | 内容推荐方法、装置、电子设备和存储介质 | |
CN107277115A (zh) | 一种内容推送方法及装置 | |
EP3067804B1 (en) | Data arrangement program, data arrangement method, and data arrangement apparatus | |
US11144793B2 (en) | Incremental clustering of a data stream via an orthogonal transform based indexing | |
CN112528067A (zh) | 图数据库的存储方法、读取方法、装置及设备 | |
US20180285693A1 (en) | Incremental update of a neighbor graph via an orthogonal transform based indexing | |
Mohbey | Memory-optimized distributed utility mining for big data | |
CN108460038A (zh) | 规则匹配方法及其设备 | |
CN110019400B (zh) | 数据存储方法、电子设备及存储介质 | |
WO2015074493A1 (zh) | 一种低频点击的过滤方法、装置、计算机程序以及计算机可读介质 | |
Xu et al. | Efficient similarity join based on Earth mover’s Distance using Mapreduce | |
Babanejad et al. | Finding skyline points over dynamic incomplete database | |
CN114139547B (zh) | 知识融合方法、装置、设备、系统及介质 | |
CN104598567A (zh) | 一种基于Hadoop MapReduce编程框架的数据统计排重的方法 | |
CN107562533A (zh) | 一种数据加载处理方法及装置 | |
CN110929207B (zh) | 数据处理方法、装置和计算机可读存储介质 | |
CN104572880B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230427 Address after: Room 501-502, 5/F, Sina Headquarters Scientific Research Building, Block N-1 and N-2, Zhongguancun Software Park, Dongbei Wangxi Road, Haidian District, Beijing, 100193 Patentee after: Sina Technology (China) Co.,Ltd. Address before: 100080, International Building, No. 58 West Fourth Ring Road, Haidian District, Beijing, 20 floor Patentee before: Sina.com Technology (China) Co.,Ltd. |
|
TR01 | Transfer of patent right |