CN104462093A - 个人推荐方案 - Google Patents
个人推荐方案 Download PDFInfo
- Publication number
- CN104462093A CN104462093A CN201310418455.0A CN201310418455A CN104462093A CN 104462093 A CN104462093 A CN 104462093A CN 201310418455 A CN201310418455 A CN 201310418455A CN 104462093 A CN104462093 A CN 104462093A
- Authority
- CN
- China
- Prior art keywords
- user
- chromosome
- grading
- importance
- project
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0631—Item recommendations
Landscapes
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种系统可以包括相似度测量处理单元,被配置为基于相似度值来确定与用户相似的多个相似用户,包括基于重要性矢量和评级项目之间的差来计算关于用户对的相似度值。重要性矢量可以包括与多个项目对应的重要性值,并且每个重要性值可以表示相应项目的相似度重要性。每个相似度值可以表示用户与另一用户之间的相似度的等级。此外,系统可以包括评级处理器,该评级处理器被配置为基于来自多个相似用户的推荐来估计未评级项目的评级值以用于潜在的推荐,并且基于评级值来提供项目推荐。
Description
技术领域
本发明涉及一种个人推荐方案。
背景技术
最近,个人推荐系统正吸引越来越多的注意,因为它可以帮助用户从相对大量的数据中自动找到有用的信息。例如,已经在书籍推荐网站、电影推荐网站和电子商业等中应用各种推荐算法。一些常规的推荐系统包括执行用户相似度评估来定位相似用户,然后基于相似用户对项目进行推荐。
然而,这些常规的推荐系统在用户相似度评估中平等地对待所有项目。在一个常规的方法中,确定第一用户的评级项目和第二用户的评级项目之间的整体差异。例如,第一用户可能已对第一项目和第二项目评级,并且第二用户可能也已对第一项目和第二项目评级。常规的相似度分析可能采用第一用户的第一和第二项目的评级与第二用户的第一和第二项目的评级之间的绝对差值,并且如果绝对差值之和小于某一阈值,则第一用户和第二用户可能被识别为是相似的。然后,对于第一用户的项目推荐可能基于来自第二用户的推荐。然而,这种常规的方法没有考虑这样的事实,即在评价用户之间的相似度时一些项目可能比其他项目更重要。
发明内容
实施例提供了一种用于提供个人推荐的系统。该系统可以包括至少一个处理器以及包含可由至少一个处理器执行的指令的非瞬时性计算机可读存储介质。指令可以被配置为实现相似度测量处理单元,相似度测量处理单元被配置为基于相似度值来确定与用户相似的多个相似用户,包括基于重要性矢量和评级项目之间的差来计算关于用户对的相似度值。重要性矢量可以包括与多个项目对应的重要性值,并且每个重要性值可以表示相应项目的相似度重要性。每个相似度值可以表示用户与另一用户之间的相似度的等级。此外,指令可以被配置为实现评级处理器,该评级处理器被配置为基于来自多个相似用户的推荐来估计未评级项目的评级值以用于潜在的推荐,并且该评级处理可以被配置为基于评级值来提供项目推荐。
被配置计算关于用户对的相似度值的相似度测量处理单元可以包括:差检测器,被配置为针对用户与另一用户的对计算评级项目的用户评级之间的绝对差,并且被配置为基于绝对差和重要性矢量来计算关于该对的相似度值的相似度测量处理单元可以包括向绝对差应用重要性矢量,以便对绝对差加权。
相似度测量处理单元可以包括被配置为估计重要性矢量的项目重要性估计器,并且项目重要性估计器可以被配置为迭代地更新重要性矢量。
相似度测量处理单元可以包括被配置为基于差分进化(DE)处理来估计重要性矢量的DE处理单元。被配置为估计重要性矢量的DE处理单元可以包括:初始化单元,被配置为生成项目的初始重要性矢量作为染色体;第一算子单元,被配置为针对每个染色体选择目标染色体并随机地选择至少两个其他染色体,并且基于目标染色体和至少两个其他染色体的处理,针对每个染色体生成供体染色体(donor chromosome);第二算子单元,被配置为针对每个染色体基于目标染色体和供体染色体来确定踪迹染色体(trailchromosome);及评估单元,被配置为针对每个染色体评估目标染色体和踪迹染色体,包括计算目标染色体的适应度(fitness)和踪迹染色体的适应度,并且基于目标染色体的适应度和踪迹染色体的适应度的比较来更新染色体。评估单元可以被配置为基于更新后的染色体来估计重要性矢量的重要性值。
评级处理器可以被配置为基于来自多个相似用户的用户评级的加权集合来估计未评级项目的评级值,并且该集合可以通过相似度值来加权。评级处理可以被配置为如果评级值在阈值之上则提供项目推荐。
实施例可以包括一种存储指令的非瞬时性计算机可读介质,当指令被执行时,使得至少一个处理器提供个人推荐。指令可以包括基于相似度值来确定与用户相似的多个相似用户的指令,包括基于重要性矢量和评级项目之间的差来计算关于用户对的相似度值。重要性矢量可以包括与多个项目对应的重要性值,并且每个重要性值可以表示相应项目的相似度重要性。每个相似度值可以表示用户与另一用户之间的相似度的等级。指令可以包括基于来自多个相似用户的推荐来估计未评级项目的评级值以用于潜在的推荐并且基于评级值来提供项目推荐的指令。
计算关于用户对的相似度值的指令可以包括如下的指令:针对用户与另一用户的对,计算评级项目的用户评级之间的绝对差;以及基于绝对差和重要性矢量来计算关于该对的相似度值,包括向绝对差应用重要性矢量以便对绝对差加权。
指令可以包括基于迭代地更新重要性矢量来估计重要性矢量的指令。此外,指令可以包括基于差分进化处理来估计重要性矢量的指令。
基于差分进化来估计重要性矢量的指令可以包括如下的指令:生成项目的初始重要性矢量作为染色体;针对每个染色体选择目标染色体并随机地选择至少两个其他染色体,并且基于目标染色体和至少两个其他染色体的处理,针对每个染色体生成供体染色体;针对每个染色体基于目标染色体和供体染色体来确定踪迹染色体;针对每个染色体评估目标染色体和踪迹染色体,包括计算目标染色体的适应度和踪迹染色体的适应度,并且基于目标染色体的适应度和踪迹染色体的适应度的比较来更新染色体;以及基于更新后的染色体来估计重要性矢量的重要性值。
估计评级值的指令可以包括基于来自多个相似用户的用户评级的加权集合来估计未评级项目的评级值的指令,并且该集合通过相似度值来加权。提供项目推荐的指令可以包括如果评级值在阈值之上则提供项目推荐的指令。
实施例可以包括一种用于提供个人推荐的计算机实现的方法。该方法可以包括基于相似度值来确定与用相似户的多个相似用户,包括基于重要性矢量和评级项目之间的差来计算关于用户对的相似度值。重要性矢量可以包括与多个项目对应的重要性值,并且每个重要性值可以表示相应项目的相似度重要性。每个相似度值可以表示用户与另一用户之间的相似度的等级。方法可以包括基于来自多个相似用户的推荐来估计未评级项目的评级值以用于潜在的推荐,并且基于评级值来提供项目推荐。
计算关于用户对的相似度值可以包括:对于用户与另一用户的对,计算评级项目的用户评级之间的绝对差;以及基于绝对差和重要性矢量计算关于该对的相似度值,包括向绝对差应用重要性矢量以便对绝对差加权。
方法可以包括基于迭代地更新重要性矢量来估计重要性矢量。此外,方法可以包括基于差分进化处理来估计重要性矢量。
基于差分进化处理来估计重要性矢量可以包括:生成项目的初始重要性矢量作为染色体;针对每个染色体选择目标染色体并随机地选择至少两个其他染色体,并且基于目标染色体和至少两个其他染色体的处理,针对每个染色体生成供体染色体;针对每个染色体基于目标染色体和供体染色体来确定踪迹染色体;以及针对每个染色体评估目标染色体和踪迹染色体,包括计算目标染色体的适应度和踪迹染色体的适应度,并且基于目标染色体的适应度和踪迹染色体的适应度的比较来更新染色体;以及基于更新后的染色体来估计重要性矢量的重要性值。
估计评级值可以包括基于来自多个相似用户的用户评级的加权集合来估计未评级项目的评级值,并且该集合通过相似度值来加权。
在附图和下面的描述中阐明一个或多个实施的详情。其他特征从描述和附图以及从权利要求中将变得清楚。
附图说明
图1示出根据实施例的用于提供个人推荐的系统;
图2示出描绘根据实施例的图1的系统的示例操作的流程图;以及
图3示出描绘根据另一实施例的图1的系统的示例操作的流程图。
具体实施方式
实施例提供了一种用于提供个人推荐的系统和方法,其使用重要性矢量来识别相似用户,该重要性矢量就项目的重要性等级方面对它们加权以用于评估用户是否彼此相似。例如,特定项目的重要性值可以表示那个项目对于相似度分析的贡献。
在一个特定的非限制性的例子中,第一项目可以涉及从用户接收了高分数的流行电影。然而,对于第一项目的用户评级可能未必有助于第一用户和第二用户之间的相似度评估,因为对于大量用户而言,对于第一项目的用户评级通常是相同的高值。相反地,第二项目可以涉及从相对小的用户子集接收了高分数的特殊兴趣(不算流行的)电影。这样,如果第一用户和第二用户对第二项目也提供了高用户评级,则在评估第一用户和第二用户之间的相似度时第二项目可能比第一项目相对更重要。因此,重要性矢量可以包括相对高于关于第一项目的重要性值的、关于第二项目的重要性值。
当评估第一用户与第二用户之间的相似度时,该系统和方法可以确定第一用户对于第一和第二项目的评级与第二用户对于第一和第二项目的评级之间的差,并且使用重要性矢量对差值(差矢量)进行加权,以便获得考虑项目的重要与否的相似度值(与平等地对待所有项目相反)。计算的相似度值可以表示用户之间的相似度,例如,第一用户与第二用户有多相似。如果关于第二用户的相似度值在第一用户的预定范围(例如,K个最近邻居)之内,则第二用户可以被识别为与第一用户相似。通过以这种方式识别相似用户,该系统和方法可以基于来自相似用户(例如,第二用户)的推荐,来提供针对未评级项目(例如,第一用户未评级的)的推荐。换言之,可以借助于来自用户的相似用户的推荐来估计他/她的偏好评级。
在一个例子中,可以通过优化算法来获得重要性矢量的重要性值,其中优化算法通过基于差分进化(DE)技术而迭代更新重要性矢量来估计重要性值。DE算法是随机的实参数优化算法。根据实施例,利用基于DE的技术来估计重要性矢量的重要性值,例如获得优化的重要性矢量。将重要性矢量结合到相似度分析中可以导致更精确的推荐结果,而不需要到系统的额外的输入信息。参照下面的图进一步说明这些和其他特征。
图1示出根据实施例的用于提供个人推荐的系统100。系统100可以包括存储多个用户简档104的用户简档数据库102、相似度测量处理单元110、差分进化(DE)处理单元116、评级预测器124、至少一个处理器126和非瞬时性计算机可读介质128。系统100可以包括本领域普通技术人员公知的用于提供个人推荐的其他组件。非瞬时性计算机可读介质128可以包括指令,当由至少一个处理器126执行时,该指令被配置为实现系统100的组件和/或功能,如下面进一步描述的。
非瞬时性计算机可读介质128可以包括一个或多个非易失性存储器,举例来说,包括半导体存储设备,例如EPROM、EEPROM和闪存设备;磁盘,例如内部硬盘或可移除磁盘;磁光盘;以及CD-ROM和DVD-ROM磁盘。除了存储可执行指令之外,非瞬时性计算机可读介质128还可以存储这里讨论的任何类型的数据库结构,包括存储用户简档104的用户简档数据库102。可替换地,用户简档数据库102可以与系统100外部的系统关联,并且与用户简档104关联的信息可以由系统100的一个或多个组件存取。至少一个处理器126可以包括任何类型的专用逻辑电路,例如,FPGA(现场可编程门阵列)或ASIC(专用集成电路)。
注意到,系统100可以是向用户提供项目推荐的任何类型的个人推荐系统。例如,系统100可以向利用系统100的用户推荐未评级项目。未评级项目可以是用户没有评级的项目。然而,系统100基于已被识别为相似的其他用户的推荐,对未评级项目进行评级(例如,计算评级值)。推荐可以是识别一个或多个项目供用户考虑的形式。项目可以是消费产品或服务,并且事实上可以是太多而不能详细列出的任何类型的产品或服务,但是仅举几个例子,可以与汽车、饭店、书籍和/或电影有关。此外,系统100可以提供选择或购买所推荐的项目的机制,或者仅仅推荐它们以用于后续的购买、选择或消费。此外,系统100可以接收用户评级形式的对于项目的用户反馈。在另一例子中,系统100可以基于用户是否已购买或选择项目和/或来自用户的任何其他类型的反馈,来向项目分配用户评级。
如图1中所示,系统100可以与存储用户简档104的用户简档数据库102关联。每个用户简档104可以标识用户已评级的项目及对应的实际的用户评级108。例如,每个用户简档104可以与特定用户关联,并且包括关于已被评级的项目的用户评级108。在一个例子中,用户简档104可以包括与特定用户关联的第一用户简档104-1,并且第一用户简档104-1可以包括关于那个特定用户已评级的项目的用户评级108——其可以是任意数量的用户评级108。
用户评级108可以是表示用户满意度/不满意度的等级的任何类型的值。用户评级108可以由用户提供,或者由系统100分配。在一个例子中,用户评级108可以是一个或多个评级等级,例如,等级1至等级5。例如,如果用户不喜欢该项目,则用户可能已提供评级等级1。如果用户实在喜欢该项目,则用户可能已提供评级等级5。在这种情况下,关于评级项目的用户评级108可以是表示诸如评级等级1或5这样的满意度/不满意度的等级的信息。此外,用户反馈可以是诸如,例如非常不喜欢、不喜欢、喜欢和非常喜欢的一个或多个评级类别。然后,系统100可以将评级类别转换为数值,并且将数值存储为用户评级108。
此外,每个用户简档104(包括第一用户简档104-1)可以包括关于用户的其他信息(例如,传记数据)和/或关于项目的附加信息。例如,每个用户简档104可以包括指示某一偏好的偏好信息以及诸如与用户有关的任何类型的统计数据的用户信息,例如,年龄、性别、职业等。此外,用户信息可以包括与用户关联的行为或浏览数据(例如,对与系统100关联的网站的访问次数)以及交易数据,诸如已被评级的项目的数目、花费总额和/或购买的产品/服务等。
更一般地,用户简档数据库102可以与用户组{1,2,...,U}和项目组{1,2,...,I}关联。在一个实施例中,项目组可以表示由系统100处理的全部(或大部分)项目。用户可以向项目分配用户评级108。用户评级108(vi,j(i=1,2,...,U,j=1,2,...,I))可以被收集,并且其范围从v_low到v_high,诸如在一个特定的例子中设置值v_low=1用于“不喜欢”和v_high=5用于“喜欢”。
相似度测量处理单元110可以被配置为基于用户简档数据库102来确定与特定用户相似的多个用户。例如,相似度测量处理单元110可以基于重要性矢量和包含在用户简档数据库102中的信息来计算关于用户对的相似度值。针对特定的用户对(例如,第一用户和第二用户),相似度值可以表示用户之间的相似度,例如,第一用户与第二用户有多相似。如果相似度值在某一预定范围之内,则第一用户可以被识别为与第二用户相似。在一个例子中,相似度测量处理单元110可以使用重要性矢量和关于评级项目的用户评级108之间的差来计算关于用户对的相似度值,如下面进一步描述的。
重要性矢量可以包括与多个项目(例如,项目组{1,2,...,I})对应的重要性值。在一个简化的例子中,项目可以包括第一项目至第五项目——表示由系统100提供的所有项目。应该理解,系统100实际上可与多于五个项目关联。第一用户可以已对五个项目中的一个或多个评级,并且第二用户也可以已对五个项目中的一个或多个评级。因此,与第一用户关联的用户简档104可以包括关于五个项目中的一个或多个的用户评级108,并且与第二用户关联的用户简档104可以包括关于五个项目中的一个或多个的用户评级108。重要性矢量可以包括关于五个项目中的每一个的重要性值,例如[0.39,0.15,0.31,0.59,0.22],其中重要性矢量中的每个条目与对应项目的标识符关联。例如,值0.39可以是关于第一项目的重要性值,值0.15可以是关于第二项目的重要性值等等。在一个实施例中,重要性矢量可以针对与系统100关联的所有项目提供重要性值。
每个重要性值可以表示相应项目的相似度重要性。相似度重要性可以表示那个项目对于相似度分析的贡献。与常规方法相反,不再平等地对待项目。而是,对于确定一对用户是否彼此相似来说,一些项目可能比其他项目更重要。在一个例子中,当特定项目没有与遍布众多用户相同或相似的用户评级108广泛关联时,那个项目的相似度重要性更大,如下面进一步说明的。
在一个特定的非限制性的例子中,第一项目可以涉及从用户接收了用户评级108的流行电影。然而,关于第一项目的用户评级108可能未必有助于第一用户和第二用户之间的相似度评估,因为对于大量用户,关于第一项目的用户评级108通常是相同的高值。相反地,第二项目可以涉及从相对小的用户子集接收了高的用户评级108的特殊兴趣(不算流行的)电影。如此,如果第一用户和第二用户也对第二项目提供了高的用户评级108,则在评定第一用户和第二用户之间的相似度时第二项目可能比第一项目相对更重要。因此,重要性矢量可以包括相对高于关于第一项目的重要性值的、关于第二项目的重要性值。
如下面进一步说明的,当评估用户对(例如,第一用户和第二用户)之间的相似度时,相似度测量处理单元110可以针对每个评级项目来确定第一用户的用户评级108与第二用户的用户评级108的差,这可以导致诸如[1,2,1,1,0]的差矢量。然后,相似度测量处理单元110可以向差矢量应用重要性矢量以对差值加权,以便获得表示第一用户与第二用户之间的相似度的等级的相似度值。
差值的加权可以考虑如重要性矢量所表示的相似度重要性的各种等级(与平等地对待所有项目相反)。相似度值可以表示用户之间的相似度,例如,第一用户与第二用户有多相似。如果相似度值在阈值等级之上/之下(或者在预定范围之内),则第一用户可以被识别为与第二用户相似。相似度测量处理单元110可以针对多个用户对执行此分析,然后确定哪些用户与那个用户相似。
在一个实施例中,相似度测量处理单元110可以包括差检测器112和项目重要性估计器114。差检测器112可以被配置为针对每个用户对计算关于评级项目的用户评级108之间的绝对差。表1(提供在下)示出差检测器112的操作的例子。表1提供了第一用户和第二用户对于多个项目(例如,项目1至项目4)的用户评级108以及这些用户评级108之间的绝对差。
表1
项目1 | 项目2 | 项目3 | 项目4 | |
用户1 | 4 | 2 | 5 | 3 |
用户2 | 5 | 4 | 4 | 3 |
绝对差 | 1 | 2 | 1 | 0 |
针对项目1-4,差检测器112可以计算关于评级项目的第一用户的用户评级108和第二用户的用户评级108的差,这导致差矢量[1,2,1,0]。更一般地,差检测器。112可以基于下面的等式来计算用户对p和q之间的绝对差D(up,uq)
等式1:Dj(up,uq)=|vp,j-vq,j|
项目重要性估计器114可以估计重要性矢量的重要性值。下面进一步说明项目重要性估计器114的详情。例如,如下面进一步说明的,项目重要性估计器114可以结合DE处理单元116。DE处理单元116可以使用差分进化算法来估计重要性矢量的重要性值。一般地,DE处理单元116可以以优化重要性值的方式、基于差分进化技术来迭代地更新重要性矢量。然而,一般地,在一个实施例中,重要性矢量可以被表示为Wj(j=1,2,...,I),其被用来相对于所有用户在相似度评估中对评级项目进行加权并示出每个项目的重要性。重要性矢量的每个值(j)可以与关于对应项目的不同重要性值对应。
然后,使用具有所估计的重要性值的重要性矢量以及评级项目之间的差,相似度测量处理单元110可以被配置为计算关于该对的相似度值。在一个例子中,相似度测量处理单元110可以基于下面的等式来计算相似度值。
等式(2):S(up,uq)=ΣjwjDj(up,uq)
相似度值可以表示用户之间的相似度,例如,第一用户与第二用户有多相似。如果相似度值在阈值等级之上/之下(或者在预定范围之内),则第一用户可以被识别为与第二用户相似。因此,基于所计算的相似度值,相似度测量处理单元110可以被配置为选择多个相似用户。如下面进一步说明的,来自被识别为与特定用户相似的用户的推荐可以被用作针对那个特定用户进行未评级项目的推荐的基础。
在一个例子中,评级预测器124可以被配置为基于来自多个相似用户的推荐来估计未评级项目的评级值。例如,评级预测器124可以接收相似度值、重要性值和差值,并且基于这些值来估计要被潜在地推荐给用户的未评级项目的评级值。在一个例子中,评级值可以是评级预测器124计算的分数,表示推荐那个项目的置信等级。如果评级值比较高(或超过阈值),则评级预测器124可以确定向用户推荐那个项目。然而,如果评级值比较低(或在阈值之下),则评级预测器124可以确定不推荐那个项目。
评级预测器124可以被配置为基于来自相似用户的推荐来针对某一用户估计一个或多个项目的评级值。在一个实施例中,评级预测器124可以被配置为基于如参照下面等式所示的平均(DFM)方法来估计来自用户i的未评级项目j的评级值。
等式(3):
在此等式中,表示第i用户的评级值的平均值,Uk表示用户i的k个最近邻居用户,并且用来指示估计的评级值而不是真实值。换言之,用加权集合方法根据所有其他k个相似用户来估计某一用户的评级值。
评级预测器124可以向与那个用户关联的计算设备130提供推荐。计算设备130可以是具有处理器和存储器的任何类型的计算设备。在一些实施例中,计算设备130可以是计算机、膝上计算机、智能手机、台式机、智能手机、平板电脑或一般地能够连接至系统100的任何设备。计算设备130可以包括应用132以及任何其他公知的组件,诸如,例如操作系统和网络接口。计算设备130和系统100可以经由诸如因特网或任何类型的私有网络的任何类型的已知网络来彼此通信。应用132可以是与系统100接口的任何类型的应用。在此上下文中,应用132可以被托管在计算设备130上,并且通过任何类型的常规数据传输技术与系统100接口。此外,应用132可以被托管在系统100上,并且由计算设备130访问。
在一个实施例中,评级预测器124可以通过网络向计算设备130提供推荐,使得用户可以观看推荐。在此上下文中,评级预测器124可以执行任何类型的动作来向用户通知推荐。例如,推荐可以被发电子邮件、被显示在计算设备130的显示部分上、显示广告和/或被并到应用132的方面中。
如上指示,项目重要性估计器114被配置为估计重要性矢量的重要性值。在一个实施例中,项目重要性估计器114基于差分进化(DE)来估计重要性值。例如,项目重要性估计器114可以被配置为结合DE处理单元116。DE处理单元116可以被配置为使用DE技术来估计重要性矢量的重要性值。
DE处理单元116可以包括初始化单元118、算子单元120(例如,第一算子单元120、第二算子单元120)和评估单元122。参照图2进一步描述三个单元的详情。然而,一般地,初始化单元118可以被配置为生成项目的初始重要性矢量作为种群的染色体。对于每个染色体,第一算子单元120可以被配置为选择目标染色体并随机地选择至少两个其他染色体。然后,第一算子单元120可以被配置为基于目标染色体和至少两个其他染色体的处理生成供体染色体。对于每个染色体,第二算子单元120可以被配置为基于目标染色体和供体染色体来确定踪迹染色体,其中踪迹染色体是目标染色体和供体染色体的部分的再结合。
对于每个染色体,评估单元122可以被配置为评估目标染色体和踪迹染色体。例如,评估单元122可以被配置为计算目标染色体的适应度和踪迹染色体的适应度。对于每个染色体,评估单元122可以被配置为基于目标染色体的适应度和踪迹染色体的适应度的比较来确定更新的染色体。然后,第一算子单元120、第二算子单元120和评估单元122被配置为重复它们各自的操作达设置的次数或者直到收敛为止,并且基于处理后的染色体获得优化的重要性矢量。参照图2进一步说明与基于DE的重要性矢量优化有关的这些和其他特征。
图2示出表示图1的系统100的示例操作的流程图。虽然图2被示出为是操作的顺序且有条理的列出,但是应该理解,可以按不同的顺序、或并行地,或反复地或可以时间重叠地发生一些或所有所述操作。
图2的流程图更详细地示出了图1的系统100的操作。例如,图2的流程图提供了关于如何使用差分进化来优化重要性矢量的额外详情。用户组可以被表示为{1,2,...,U},以及关于项目的用户评级108被表示为{1,2,...,I}。一般地,如下面进一步说明的,如果基于用户的关于其他项目的评级历史和相似度评估,预测了高评级分数则系统100确定是否向新用户unew(或现有用户)推荐某一项目j。基本上,图2的流程图可以被概括为包括两个主要部分:基于DE的重要性矢量优化200和未评级项目估计250。下面说明基于DE的重要性矢量优化200。
可以计算新用户与其他用户之间的绝对差矢量(202)。例如,差检测器112可以被配置为针对新用户与另一用户的对来计算评级项目的用户评级之间的绝对差。具体地,差检测器112可以被配置为针对每个评级项目,计算相应评级项目的用户评级与相应评级项目的用户评级之间的差。例如,差检测器112可以用上述相同的方式来计算绝对差。注意到参考新用户来说明图2,实施例还可以涵盖拥有未评级项目的现有用户。
可以随机地生成项目的重要性矢量(染色体)(204)。例如,初始化单元118可以被配置为生成项目的初始重要性矢量作为种群的染色体。例如,可以随机地初始化多个染色体,并且该组初始染色体可以被认为是染色体的初始代。每个染色体可以表示将被优化的重要性矢量。在此上下文中,术语染色体可以与重要性矢量同义。如此,染色体可以被认为是具有与项目对应的一系列值的矢量。但是,术语染色体通常与差分进化技术相关联。如此,通过将差分进化应用到重要性矢量的优化,使用术语染色体来表示未被优化的重要性矢量。
最初,每个染色体的值可以在v_low到v_high的范围中,并且可以随机分配。如下面进一步说明的,可以重复地处理这代的每个染色体,使得在每次迭代期间更新染色体的值,直到过程收敛或者迭代的次数达到阈值等级为止。特定染色体的处理可以包括对染色体应用差分算子(例如,变异、交叉),评估差分算子的结果,更新染色体,然后确定过程是否已收敛,如下面进一步说明的。
可以向染色体应用DE算子(变异)(206)。例如,第一算子单元120可以对当代G的染色体(其最初是具有随机分配的值的染色体)执行变异操作。在一个例子中,变异操作可以包括从当代中选择目标染色体和随机地选择至少两个其他染色体。然后,第一算子单元120可以基于目标染色体和两个其他染色体的处理而生成供体染色体(矢量)。目标染色体可以是来自当代染色体的双亲染色体(矢量)。例如,第一算子单元120可以针对当代G之内的每个染色体执行变异操作。如此,目标染色体可以表示要处理的染色体,并且其他两个染色体是随机选择的。供体染色体可以被认为是通过差分变异操作的变异矢量。
在一个实施例中,第一算子单元120可以被配置为基于下面的等式根据目标染色体和另两个随机选择的染色体来获得供体染色体
等式(4):
参数F可以是标量数。在一个例子中,参数F可以被设置在[0.4,1]的区间中。基于此等式,对于当代G中的每个染色体,第一算子单元120可以获得供体染色体
可以向染色体应用后续的DE算子(交叉(crossover))(208)。例如,对于当代G中的每个染色体,第二算子单元120可以被配置为对目标染色体和供体染色体执行交叉操作以获得踪迹染色体一般地,基于变量(例如,交叉率和随机生成的数)的处理,第二DE算子单元122可以确定供体染色体或目标染色体的一部分作为踪迹染色体踪迹染色体可以是基于供体染色体和目标染色体的再结合的新的矢量。在一个实施例中,为了获得踪迹染色体,第二算子单元120可以被配置为基于下面的等式执行二项式交叉。
等式(5):
参数rand[0,1]可以是0和1之间的随机数。变量jrand可以是1和I之间的随机整数(其中I是项目的数目)。变量XT,j,G可以是目标矢量的第j项目,并且变量XD,j,G可以是供体矢量的第j项目。参数Cr可以是交叉率。基本上,第二算子单元120可以被配置为比较参数rand与交叉率Cr,并且确定值j是否等于变量jrand,并且如果交叉率Cr大于参数rand或者值j等于变量jrand,则第二DE算子120可以被配置为选择供体染色体的部分[j]作为踪迹染色体否则,第二算子单元120可以被配置为选择目标染色体的部分[j]作为踪迹染色体
可以执行染色体的评估(210、212、214、216、218、220、222)。例如,对于每个染色体,评估单元122可以被配置为评估目标染色体和踪迹染色体一般地,评估单元122可以被配置为计算目标染色体的适应度和踪迹染色体的适应度,并且基于目标染色体的适应度与踪迹染色体的适应度的比较,来选择目标染色体或踪迹染色体作为更新后的染色体。
可以基于目标染色体和踪迹染色体来计算新用户与其他用户之间的相似度(210)。例如,评估单元122可以被配置为使用目标染色体和踪迹染色体来分开地计算用户与其他用户之间的相似度。在一个实施例中,评估单元122可以被配置为基于上面示出的等式(2)、使用目标染色体和踪迹染色体来计算关于用户对(例如,包括新用户和不同的其他用户的每一对)的相似度值。
可以基于相似度值来选择k个最近邻居(212)。例如,评估单元122可以被配置为使用所计算的相似度值在用户当中选择相似用户。具体地,评估单元122可以选择具有预定范围之内(例如,K个最近邻居)的相似度值的用户。
可以估计关于新用户的评级项目的评级值(214)。例如,评估单元122可以被配置为根据目标染色体和踪迹染色体来计算用户评级的项目的评级值。在一个实施例中,评估单元122可以被配置为基于等式(3)来计算两组评级值。
可以计算估计的评级值与真实值之间的误差(216)。例如,对于针对目标染色体和踪迹染色体的每个评级值,评估单元122可以被配置为计算估计的评级值与真实值之间的误差。例如,评估单元122可以被配置为计算针对目标染色体的误差以及针对踪迹染色体的误差。在一个实施例中,评估单元122可以被配置为基于以下等式来计算误差。
等式(6):
变量可以表示关于用户的第j项目的评级值,而参数可以表示它的估计值。参数I可以是项目的数目。在一个实施例中,针对MAE计算的数目指示染色体的质量。在一个例子中,如果MAE比较小,则MAE可以指示染色体相对更好。然后,评估单元122可以被配置为基于下面的等式来计算目标染色体的适应度和踪迹染色体的适应度。
等式(7):Fitness(n)=-MAE(n)。
确定是否已评估当代G的所有染色体(218)。例如,评估单元122可以被配置为以与上述相同的方式评估当代G的每个染色体。如果评估单元122确定还没有评估所有染色体,则过程返回操作210。但是,如果已评估所有染色体,则过程继续到下面讨论的操作220。
可以选择更新后的染色体(220)。例如,基于对于每个染色体针对目标染色体和踪迹染色体计算的误差,评估单元122可以被配置为通过选择目标染色体或踪迹染色体作为更新后的染色体来更新每个染色体。例如,对于每个染色体,评估单元122可以被配置比较目标染色体的适应度和踪迹染色体的适应度,并且选择具有更低的适应度值的一个。然后,评估单元122可以被配置为选择更新后的染色体作为当代(或下一代)。
确定DE函数是否已收敛(222)。例如,评估单元122可以被配置为确定过程是否已收敛。例如,如果染色体的变化最小(例如,少于某一值),则评估单元122可以被配置为确定过程已收敛。如果过程已收敛,则过程继续到第二主要部分250。但是,如果过程尚未收敛,则过程返回操作206。可替换地,评估单元122可以确定迭代的次数是否已超过阈值数目,并且如果迭代的数目已超过阈值数目,则过程可以继续到过程的第二主要部分,例如250。
可以估计关于用户的未评级项目的评级值(224)。例如,在这点,已经基于上面说明的基于DE的重要性矢量优化来优化了重要性矢量。
为了确定未评级项目的评级值,相似度测量处理单元110可以基于优化的重要性矢量来确定多个相似用户。如上所说明的,差检测器112可以被配置为对于每个用户对计算关于评级项目的用户评级108之间的绝对差。然后,项目重要性估计器114可以获得优化的重要性矢量,并且基于上面的等式(2)向差矢量应用优化的重要性矢量以便获得相似度值。相似度测量处理单元110可以选择最近的K个用户(例如,基于在阈值之上/之下的相似度值来识别相似用户)。基于这些相似用户,评级预测器124可以计算关于未评级项目的评级值。例如,评级预测器124可以被配置为基于等式(3)来计算未评级项目的评级值。
确定评级值是否在阈值等级之上(226)。例如,评级预测器124可以被配置为确定评级值是否在阈值等级之上。如果评级预测器124确定评级值在阈值等级之上,则提供推荐该项目的推荐(228)。然而,如果评级预测器124确定评级值在阈值等级之下,则不提供推荐(230)。
在一个例子中,评级值可以由是评级预测器124计算的分数,表示推荐那个项目的置信等级。如果评级值比较高(或超过阈值),则评级预测器124可以确定向用户推荐那个项目。然而,如果评级值比较低(或在阈值之下),则评级预测器124可以确定不推荐那个项目。
例如,评级预测器124可以向与用户关联的计算设备130提供推荐。在一个实施例中,评级预测器124可以通过网络向计算设备130提供推荐,使得用户可以观看推荐。在此上下文中,评级预测器124可以执行任何类型的动作来向用户通知推荐。例如,推荐可以被发电子邮件、被显示在计算设备130的显示部分上、显示广告和/或被并入到应用132的方面中。
根据实施例,基于DE的重要性矢量优化的伪码被提供如下。
%基于DE的优化
%NumOfChrom:DE种群中染色体(重要性矢量)的数目
%LenOfIndiv:个体的长度(项目的数目)
%Population:一代的所有染色体
%F:用于变异的标量数
%CrossRate:交叉率
%TargetChrom:目标染色体
%DonChrom:供体染色体
%TrailChrom:踪迹染色体
%RandChrom1:随机选择的染色体1
%RandChrom2:随机选择的染色体2
图3示出表示图1的系统100的示例操作的流程图。虽然图3被示出为操作的顺序且有条理的列出,但是应该理解,可以按不同的顺序、或并行地,或反复地或可以时间重叠地发生一些或所有操作。
可以计算关于用户对的评级项目的用户评级之间的差(302)。例如,差检测器112可以被配置为针对每个用户对计算关于评级项目的用户评级108之间的绝对差,该计算可以基于等式(1)。
可以获得包括与多个项目对应的重要性值的重要性矢量,其中每个重要性值表示相应项目的相似度重要性(304)。例如,项目重要性估计器114可以获得重要性矢量。在一个实施例中,可能已基于DE技术优化了重要性矢量。针对图2进一步描述了重要性矢量的优化。
可以基于重要性矢量和关于用户对的差来计算相似度值(308)。例如,使用具有所估计的重要性值的重要性矢量以及评级项目之间的差,相似度测量处理单元110可以被配置为计算关于该对的相似度值。在一个例子中,相似度测量处理单元110可以基于等式(2)来计算相似度值。相似度值可以表示用户之间的相似度,例如,第一用户与第二用户有多相似。如果相似度值在阈值等级之上/之下(或者在预定范围之内),则第一用户可以被识别为与第二用户相似。因此,基于所计算的相似度值,相似度测量处理单元110可以被配置为选择众多相似用户。如下面进一步说明的,来自被识别为与特定用户相似的用户的推荐可以被用作针对那个特定用户进行未评级项目的推荐的基础。
可以基于来自多个相似用户的推荐来估计关于未评级项目的评级值(308)。例如,评级预测器124可以被配置为基于来自多个相似用户的推荐来估计未评级项目的评级值。例如,评级预测器124可以接收相似度值、重要性值和差值,并且基于这些值来估计要被潜在地推荐给用户的未评级项目的评级值。在一个实施例中,评级预测器124可以被配置为基于等式(3)来估计评级值。
可以基于评级值来提供项目推荐(310)。例如,如果评级值比较高(或超过阈值),则评级预测器124可以确定向用户推荐那个项目。然而,如果评级值比较低(或在阈值之下),则评级预测器124可以确定不推荐那个项目。在一个实施例中,评级预测器124可以通过网络向计算设备130提供推荐,使得用户可以观看推荐。在此上下文中,评级预测器124可以执行任何类型的动作来向用户通知推荐。例如,推荐可以被发电子邮件、被显示在计算设备130的显示部分上、显示广告和/或被并入到应用132的方面中。
这里描述的各种技术的实施方式可以以数字电子电路的方式实现,或者以计算机硬件、固件、软件、或它们的组合来实现。实施方式可以实现为计算机程序产品,即,有形地体现在信息载体中的计算机程序,例如在机器可读存储设备中或者在传播的信号中,以供数据处理装置执行,或者控制数据处理装置的操作,数据处理装置例如可编程处理器、计算机或多个计算机。计算机程序,如上面描述的计算机程序,可以以任何形式的编程语言编写,包括汇编或解释语言,并且可以以任何形式进行部署,包括作为独立的程序或者作为模块、组件、子例程或其他适于在计算环境中使用的单元。计算机程序可以被部署以便在一个计算机上或在位于一个地点或在多个地点分布并由通信网络相互连接的多个计算机上执行。
方法步骤可以由一个或多个可编程处理器执行,可编程处理器执行计算机程序,以便通过对输入数据进行操作并产生输出来执行功能。方法步骤还可以由专用逻辑电路执行,以及装置可以被实现为专用逻辑电路,例如,FPGA(现场可编程门阵列)或ASIC(专用集成电路)。
作为示例,适于执行计算机程序的处理器包括通用和专用微处理器二者,以及任何类型的数字计算机的任意一个或多个处理器。一般,处理器将从只读存储器或随机访问存储器、或者从两者接收指令和数据。计算机的元件可以包括至少一个用于执行指令的处理器,和用于储存指令和数据的一个或多个存储器设备。一般,计算机还可以包括一个或多个用于存储数据的海量储存设备,或者可操作地耦接到一个或多个用于存储数据的海量储存设备以从其接收数据或向其传送数据,或者二者皆有,海量储存设备例如磁盘、磁光盘或光盘。适于体现计算机程序指令和数据的信息载体包括所有形式的非易失性存储器,作为示例,包括半导体存储器器件,例如EPROM、EEPROM和闪存设备;磁盘,例如内置硬盘或可移动磁盘;磁光盘;以及CD-ROM和DVD-ROM盘。处理器和存储器可以用专用逻辑电路补充,或者结合到专用逻辑电路中。
为了提供与用户的交互,实施方式可以在具有显示设备和键盘以及指示设备(pointing device)的计算机上实现,显示设备例如阴极射线管(CRT)或液晶显示器(LCD)监视器,用于向用户显示信息,指示设备例如鼠标或跟踪球,用户可以利用指示设备和键盘将输入提供给计算机。其他种类的设备也可以被用来提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈,例如,视觉反馈、听觉反馈或触觉反馈;并且,来自用户的输入可以以任何形式接收,包括声音、语音或触觉输入。
实施方式可以在包括后端组件或包括中间件组件或包括前端组件的计算系统中实现,或者在这样的后端、中间件、前端组件的任意组合中实现,后端组件例如数据服务器,中间件组件例如应用服务器,前端组件例如具有图形用户接口或Web浏览器的客户端计算机,用户可以通过图形用户界面或Web浏览器与实施方式进行交互。组件可以通过任何形式或介质的数字数据通信例如,通信网络,相互连接。通信网络的示例包括局域网(LAN)和广域网(WAN),例如,因特网。
虽然已经如这里所描述地说明了所描述的实施方式的某些特征,但是本领域技术人员现在会想到许多修改、替换,变化或等效物。因此,应当理解,权利要求意图覆盖落入实施例的范围内的全部这样的修改和变化。
Claims (20)
1.一种用于提供个人推荐的系统,该系统包括:
至少一个处理器;
包括通过至少一个处理器可执行的指令的非瞬时性计算机可读存储介质,其中指令被配置为实现,
相似度测量处理单元,被配置为基于相似度值来确定与用户相似的多个相似用户,包括基于重要性矢量和评级项目之间的差来计算关于用户对的相似度值,重要性矢量包括与多个项目对应的重要性值,每个重要性值表示相应项目的相似度重要性,每个相似度值表示用户与另一用户之间的相似度的等级;以及
评级处理器,被配置为基于来自多个相似用户的推荐来估计未评级项目的评级值以用于潜在的推荐,评级处理被配置为基于评级值来提供项目推荐。
2.如权利要求1所述的系统,其中,被配置为计算关于用户对的相似度值的相似度测量处理单元包括:
差检测器,被配置为针对用户与另一用户的对来计算评级项目的用户评级之间的绝对差,
其中,相似度测量处理单元被配置为基于绝对差和重要性矢量来计算关于该对的相似度值,包括向绝对差应用重要性矢量以便对绝对差加权。
3.如权利要求1所述的系统,其中,相似度测量处理单元包括被配置为估计重要性矢量的项目重要性估计器,项目重要性估计器被配置为迭代地更新重要性矢量。
4.如权利要求1所述的系统,其中,相似度测量处理单元包括被配置为基于差分进化(DE)处理来估计重要性矢量的DE处理单元。
5.如权利要求4所述的系统,其中,被配置为估计重要性矢量的DE处理单元包括:
初始化单元,被配置为生成项目的初始重要性矢量作为染色体;
第一算子单元,被配置为针对每个染色体选择目标染色体并随机地选择至少两个其他染色体,并且基于目标染色体和至少两个其他染色体的处理来针对每个染色体生成供体染色体;
第二算子单元,被配置为针对每个染色体基于目标染色体和供体染色体来确定踪迹染色体;
评估单元,被配置为针对每个染色体来评估目标染色体和踪迹染色体,包括计算目标染色体的适应度和踪迹染色体的适应度并且基于目标染色体的适应度和踪迹染色体的适应度的比较来更新染色体,其中评估单元被配置为基于更新后的染色体来估计重要性矢量的重要性值。
6.如权利要求1所述的系统,其中,评级处理器被配置为基于来自多个相似用户的用户评级的加权集合来估计未评级项目的评级值,并且该集合通过相似度值加权。
7.如权利要求1所述的系统,其中,评级处理被配置为如果评级值在阈值之上则提供项目推荐。
8.一种非瞬时性计算机可读介质,存储当被执行时使得至少一个处理器提供个人推荐的指令,其中指令包括如下的指令:
基于相似度值来确定与用户相似的多个相似用户,包括基于重要性矢量和评级项目之间的差来计算关于用户对的相似度值,重要性矢量包括与多个项目对应的重要性值,每个重要性值表示相应项目的相似度重要性,每个相似度值表示用户与另一用户之间的相似度的等级;
基于来自多个相似用户的推荐来估计未评级项目的评级值以用于潜在的推荐;以及
基于评级值来提供项目推荐。
9.如权利要求8所述的非瞬时性计算机可读介质,其中,计算关于用户对的相似度值的指令包括如下的指令:
针对用户与另一用户的对来计算评级项目的用户评级之间的绝对差;以及
基于绝对差和重要性矢量来计算关于该对的相似度值,包括向绝对差应用重要性矢量以便对绝对差加权。
10.如权利要求8所述的非瞬时性计算机可读介质,其中,指令包括如下的指令:
基于迭代地更新重要性矢量来估计重要性矢量。
11.如权利要求8所述的非瞬时性计算机可读介质,其中,指令包括如下的指令:
基于差分进化处理来估计重要性矢量。
12.如权利要求11所述的非瞬时性计算机可读介质,其中,基于差分进化处理来估计重要性矢量的指令包括:
生成项目的初始重要性矢量作为染色体;
针对每个染色体选择目标染色体并随机地选择至少两个其他染色体,并且基于目标染色体和至少两个其他染色体的处理,针对每个染色体生成供体染色体;
针对每个染色体基于目标染色体和供体染色体来确定踪迹染色体;
针对每个染色体评估目标染色体和踪迹染色体,包括计算目标染色体的适应度和踪迹染色体的适应度,并且基于目标染色体的适应度和踪迹染色体的适应度的比较来更新染色体;以及
基于更新后的染色体来估计重要性矢量的重要性值。
13.如权利要求8所述的非瞬时性计算机可读介质,其中,估计评级值的指令包括如下的指令:
基于来自多个相似用户的用户评级的加权集合来估计未评级项目的评级值,并且该集合通过相似度值来加权。
14.如权利要求8所述的非瞬时性计算机可读介质,其中,提供项目推荐的指令包括如果评级值在阈值之上则提供项目推荐的指令。
15.一种用于提供个人推荐的计算机实现的方法,该方法包括:
基于相似度值来确定与用户相似的多个相似用户,包括基于重要性矢量和评级项目之间的差来计算关于用户对的相似度值,重要性矢量包括与多个项目对应的重要性值,每个重要性值表示相应项目的相似度重要性,每个相似度值表示用户与另一用户之间的相似度的等级;
基于来自多个相似用户的推荐来估计未评级项目的评级值以用于潜在的推荐;以及
基于评级值来提供项目推荐。
16.如权利要求15所述的计算机实现的方法,其中,计算关于用户对的相似度值包括:
针对用户与另一用户的对来计算评级项目的用户评级之间的绝对差;以及
基于绝对差和重要性矢量来计算关于该对的相似度值,包括向绝对差应用重要性矢量以便对绝对差加权。
17.如权利要求15所述的计算机实现的方法,进一步包括:
基于迭代地更新重要性矢量来估计重要性矢量。
18.如权利要求15所述的计算机实现的方法,进一步包括:
基于差分进化处理来估计重要性矢量。
19.如权利要求18所述的计算机实现的方法,其中,基于差分进化处理来估计重要性矢量包括:
生成项目的初始重要性矢量作为染色体;
针对每个染色体选择目标染色体并随机地选择至少两个其他染色体,并且基于目标染色体和至少两个其他染色体的处理,针对每个染色体生成供体染色体;
针对每个染色体基于目标染色体和供体染色体确定踪迹染色体;
针对每个染色体评估目标染色体和踪迹染色体,包括计算目标染色体的适应度和踪迹染色体的适应度,并且基于目标染色体的适应度和踪迹染色体的适应度的比较来更新染色体;以及
基于更新后的染色体来估计重要性矢量的重要性值。
20.如权利要求15所述的计算机实现的方法,其中,估计评级值包括:
基于来自多个相似用户的用户评级的加权集合来估计未评级项目的评级值,并且该集合通过相似度值来加权。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310418455.0A CN104462093B (zh) | 2013-09-13 | 2013-09-13 | 个人推荐方案 |
US14/036,922 US20150081471A1 (en) | 2013-09-13 | 2013-09-25 | Personal recommendation scheme |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310418455.0A CN104462093B (zh) | 2013-09-13 | 2013-09-13 | 个人推荐方案 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104462093A true CN104462093A (zh) | 2015-03-25 |
CN104462093B CN104462093B (zh) | 2019-12-10 |
Family
ID=52668849
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310418455.0A Active CN104462093B (zh) | 2013-09-13 | 2013-09-13 | 个人推荐方案 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20150081471A1 (zh) |
CN (1) | CN104462093B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110278250A (zh) * | 2019-06-10 | 2019-09-24 | 腾讯科技(深圳)有限公司 | 终端选择方法、装置和存储介质 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108664484A (zh) * | 2017-03-28 | 2018-10-16 | 腾讯科技(北京)有限公司 | 媒体内容推荐方法及装置 |
US11113702B1 (en) * | 2018-12-12 | 2021-09-07 | Amazon Technologies, Inc. | Online product subscription recommendations based on a customers failure to perform a computer-based action and a monetary value threshold |
US11288582B2 (en) | 2019-03-29 | 2022-03-29 | Rovi Guides, Inc. | Systems and methods for providing media content recommendations |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030110056A1 (en) * | 2001-10-31 | 2003-06-12 | International Business Machines Corporation | Method for rating items within a recommendation system based on additional knowledge of item relationships |
CN101287082A (zh) * | 2008-05-16 | 2008-10-15 | 华东师范大学 | 一种引入节目热门度权重的协作过滤推荐方法 |
US20120323725A1 (en) * | 2010-12-15 | 2012-12-20 | Fourthwall Media | Systems and methods for supplementing content-based attributes with collaborative rating attributes for recommending or filtering items |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005512350A (ja) * | 2001-04-26 | 2005-04-28 | アウェア, インコーポレイテッド | 両端計測からのループ特性用のシステム及び方法 |
JP4240096B2 (ja) * | 2006-09-21 | 2009-03-18 | ソニー株式会社 | 情報処理装置および方法、プログラム並びに記録媒体 |
US20120310770A1 (en) * | 2011-06-01 | 2012-12-06 | Universidade Da Coruna (Otri) | Recommendation method and system |
-
2013
- 2013-09-13 CN CN201310418455.0A patent/CN104462093B/zh active Active
- 2013-09-25 US US14/036,922 patent/US20150081471A1/en not_active Abandoned
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030110056A1 (en) * | 2001-10-31 | 2003-06-12 | International Business Machines Corporation | Method for rating items within a recommendation system based on additional knowledge of item relationships |
CN101287082A (zh) * | 2008-05-16 | 2008-10-15 | 华东师范大学 | 一种引入节目热门度权重的协作过滤推荐方法 |
US20120323725A1 (en) * | 2010-12-15 | 2012-12-20 | Fourthwall Media | Systems and methods for supplementing content-based attributes with collaborative rating attributes for recommending or filtering items |
Non-Patent Citations (1)
Title |
---|
杨启文等: ""差分进化算法综述"", 《模式识别与人工智能》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110278250A (zh) * | 2019-06-10 | 2019-09-24 | 腾讯科技(深圳)有限公司 | 终端选择方法、装置和存储介质 |
CN110278250B (zh) * | 2019-06-10 | 2021-11-30 | 腾讯科技(深圳)有限公司 | 终端选择方法、装置和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN104462093B (zh) | 2019-12-10 |
US20150081471A1 (en) | 2015-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11538060B2 (en) | Systems and methods for search query refinement | |
CN109360012A (zh) | 广告投放渠道的选择方法及装置、存储介质、电子设备 | |
Lin et al. | Multiobjective personalized recommendation algorithm using extreme point guided evolutionary computation | |
US11687352B2 (en) | Machine-learning models applied to interaction data for determining interaction goals and facilitating experience-based modifications to interface elements in online environments | |
CN105631698A (zh) | 用于策略部署的风险量化 | |
EP4181026A1 (en) | Recommendation model training method and apparatus, recommendation method and apparatus, and computer-readable medium | |
US9727653B2 (en) | System and method for identifying and ranking user preferences | |
US10902298B2 (en) | Pushing items to users based on a reinforcement learning model | |
US11423324B2 (en) | Training and estimation of selection behavior of target | |
US20160189177A1 (en) | Determination of a Purchase Recommendation | |
CN112528153B (zh) | 内容推荐方法、装置、设备、存储介质以及程序产品 | |
US11948095B2 (en) | Method and system for recommending digital content | |
US20180247247A1 (en) | Method and system for search provider selection based on performance scores with respect to each search query | |
Chan et al. | Continuous model selection for large-scale recommender systems | |
Kragt et al. | Using a choice experiment to improve decision support tool design | |
CN104462093A (zh) | 个人推荐方案 | |
CN112598472A (zh) | 产品推荐方法、装置、系统、介质和程序产品 | |
WO2011106015A1 (en) | Eliciting customer preference from purchasing behavior surveys | |
CA3004344C (en) | Method and apparatus for dynamically selecting content for online visitors | |
CN105631697A (zh) | 用于安全策略部署的自动系统 | |
Cugnata et al. | Comparison of alternative imputation methods for ordinal data | |
Cortez et al. | Global and decomposition evolutionary support vector machine approaches for time series forecasting | |
US20230297862A1 (en) | Performing predictive inferences using multiple predictive models | |
US20140039983A1 (en) | Location evaluation | |
Almomani et al. | Selecting a good stochastic system for the large number of alternatives |
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 |