一种基于时间衰减的协同过滤系统及方法

文档序号:6503443阅读:207来源:国知局
一种基于时间衰减的协同过滤系统及方法
【专利摘要】本发明公开了一种基于时间衰减的协同过滤方法及系统,该方法包括如下步骤:把传统协同过滤算法公式中的频次和共现做分解,形成新的协同过滤公式;于该新的协同过滤公式中引入时间衰减因子,构建最终的协同过滤公式,使用户兴趣迁移比较快的应用场景多采用用户行为最近发生的数据,而用户兴趣行为变化比较慢的数据,多利用用户历史行为记录;根据具体需要选择相应的时间衰减因子进行过滤,完成推荐,本发明可以通过调整时间衰减因子,灵活地选择用户行为数据的范围,快速地调整以适应具体的应用,准确地分析出用户的兴趣,更好地实现推荐。
【专利说明】-种基于时间衰减的协同过滤系统及方法

【技术领域】
[0001] 本发明关于一种协同过滤系统及方法,特别是涉及一种基于时间衰减的协同过滤 系统及方法。

【背景技术】
[0002] 在电子商务网站或者内容网站中都有大量的商品或者内容,用户往往不知道这个 网站所有的内容,用户寻找自己所需要的东西往往通过目录页浏览和搜索的方式,目前推 荐系统的应用也越来越广泛,逐步成为内容找用户的一种很好的方式。
[0003] 协同过滤是推荐系统常用的算法。协同过滤就是根据用户的历史行为记录,通常 是浏览某个商品,收藏某个商品,购买某个商品,根据历史行为记录,可以发现商品和商品 之间的联系,在新的用户下一次浏览这个商品的时候,推荐给他所需要的商品,推荐给他的 商品往往是他需要的,这样就主动地帮助到了用户。
[0004] 传统的协同过滤算法计算两个商品的关联程度是采用下面的公式:
[0005] Relate (A,B) = CoOccur (A,B) / (Freq (A) *Freq (B))。
[0006] S卩:A,B的关联关系和A,B同时出现的次数成正比,跟A,B单独出现的次数成反 比。
[0007] 推荐系统首先需要考虑的一点就是用户的兴趣,用户对什么感兴趣,能通过用户 的对于商品的浏览行为上表现出来,根据用户的兴趣来给用户推荐网站的内容,推荐成功 的概率往往会提1?许多。
[0008] 然而,推荐所基于的用户行为的日志通常占据的大量的存储空间。日志的量越大, 计算的时间越长。通过分析海量的日志,发现用户的兴趣,进而推荐给用户他所感兴趣的内 容。而用户行为日志在不断的增长,用户的兴趣却在随着时间发生着变化。如何利用好海 量日志,既快速又准确的分析出用户的兴趣。这成为实际系统开发中不得不解决的一个问 题。
[0009] 另外,协同过滤算法可以应用于很多场景,购物类网站、内容类网站、可以算是一 个比较通用的算法。但在具体网站中,根据不同的应用的不同,内容的不同,用户的不同,算 法往往都需要根据具体情况做出自己的调整。有些应用,用户需求变化的很快,协同过滤算 法如何能快速的调整以适应具体的应用,这也是一个需要解决的问题。


【发明内容】

[0010] 为克服上述现有技术存在的不足,本发明之目的在于提供一种基于时间衰减的协 同过滤系统及方法,其可以以根据具体的情况,调整时间衰减因子,灵活的选择用户行为数 据的范围,快速地调整以适应具体的应用,准确地分析出用户的兴趣。
[0011] 为达上述及其它目的,本发明提出一种基于时间衰减的协同过滤方法,包括如下 步骤:
[0012] 步骤一,把传统协同过滤算法公式中的频次和共现做分解,形成新的协同过滤公 式;
[0013] 步骤二,于该新的协同过滤公式中引入时间衰减因子,构建最终的协同过滤公式, 使用户兴趣迁移比较快的应用场景多采用用户行为最近发生的数据,而用户兴趣行为变化 比较慢的数据,多利用用户历史行为记录;
[0014] 步骤三,根据具体需要选择相应的时间衰减因子进行过滤,完成推荐。
[0015] 进一步地,于步骤一中,将频次分解为增量频次和存量频次,共现分解为增量共现 和存量共现。
[0016] 进一步地,该时间衰减因子的取值为0?1之间。
[0017] 进一步地,当该时间衰减因子的取值为0时,完全利用新得到的用户行为数据来 作为推荐的依据。当该时间衰减因子取值为1时,则采用自日志存储之日起的所有数据作 为推荐的依据。
[0018] 进一步地,于步骤三中,根据频次和共现的大小选择时间衰减因子。
[0019] 进一步地,该最终的协同过滤公式衰减到一阈值后不再衰减,以免丢失历史信息。
[0020] 为达到上述及其他目的,本发明还提供一种基于时间衰减的协同过滤系统,至少 包括:
[0021] 分解模组,用于把传统协同过滤算法公式中的频次和共现做分解,形成新的协同 过滤公式;
[0022] 时间衰减因子引入模组,于该新的协同过滤公式中引入时间衰减因子,构建最终 的协同过滤公式,使用户兴趣迁移比较快的应用场景多采用用户行为最近发生的数据,而 用户兴趣行为变化比较慢的数据,多利用用户历史行为记录;
[0023] 时间衰减因子选择模组,根据具体需要,选择相应的时间衰减因子进行协同过滤, 完成推荐。
[0024] 进一步地,该分解模组将频次分解为增量频次和存量频次,共现分解为增量共现 和存量共现。
[0025] 进一步地,该时间衰减因子的取值为0?1之间。
[0026] 进一步地,该时间衰减因子选择模组根据频次和共现的大小选择时间衰减因子。
[0027] 与现有技术相比,本发明一种基于时间衰减的协同过滤系统及方法,通过将传统 协同过滤算法公式中的频次和共现分解形成新的协同过滤公式,并于新的协同过滤公式中 引入时间衰减因子,以便根据需要选择时间衰减因子,使得本发明可以根据具体的情况,调 整时间衰减因子,灵活的选择用户行为数据的范围,快速地调整用户行为数据的范围以适 应具体的应用,更为准确地分析出用户的兴趣,实现更好地推荐。

【专利附图】

【附图说明】
[0028] 图1为本发明一种基于时间衰减的协同过滤方法的步骤流程图;
[0029] 图2为设定衰减因子为0. 9时的衰减周期图;
[0030] 图3为本发明一种基于时间衰减的协同过滤系统的系统架构图。

【具体实施方式】
[0031] 以下通过特定的具体实例并结合【专利附图】
附图
【附图说明】本发明的实施方式,本领域技术人员可 由本说明书所揭示的内容轻易地了解本发明的其它优点与功效。本发明亦可通过其它不同 的具体实例加以施行或应用,本说明书中的各项细节亦可基于不同观点与应用,在不背离 本发明的精神下进行各种修饰与变更。
[0032] 图1为本发明一种基于时间衰减的协同过滤方法的步骤流程图。如图1所示,本 发明一种基于时间衰减的协同过滤方法,包括如下步骤:
[0033] 步骤101,把传统协同过滤算法公式中的频次Freq(A)、Freq⑶和共现 CoOccur(A,B)做分解,形成新的协同过滤公式。频次分解为增量频次和存量频次,共现分 解为增量共现和存量共现。
[0034] 即:CoOccur (A,B) = His_CoOccur (A,B)+New_CoOccur (A,B)
[0035] Freq (A) = Hi s_Freq(A)+New_Freq(A)
[0036] Freq(B) = His_Freq(B)+New_Freq(B)〇
[0037] 这样,传统的协同过滤算法就变成了:
[0038] Relate(A, B) = (His_CoOccur(A, B)+New_CoOccur(A, B))/((His_Freq(A)+New_ Freq (A)) *(His_Freq(B)+New_Freq(B)))〇
[0039] 步骤102,于新的协同过滤公式中引入时间衰减因子,构建最终的协同过滤公式, 使用户兴趣迁移比较快的应用场景多用用户行为最近发生的数据,而用户兴趣行为变化比 较慢的数据,多借鉴用户历史行为记录。
[0040] 这里,把时间因子用Alfa表示。
[0041] 最终的协同过滤公式可以用下面公式表示。
[0042] Relate(A,B) = (Alfa*His_CoOccur(A,B)+New_CoOccur (A,B))/((Alfa*His_ Freq(A)+New_Freq(A)) *(Alfa*His_Freq(B)+New_Freq(B)))〇
[0043] 其中,Alfa的取值应该是0?1之间。
[0044] 极端情况,当Alfa的取值为0时,完全利用新得到的用户行为数据来作为推荐的 依据。当Alfa为1时,则用自日志存储之日起的所有数据作为推荐的依据。
[0045] 步骤103,根据具体需要,选择相应的时间衰减因子进行协同过滤,完成推荐。一般 来说,需要根据频次和共现的大小选择时间衰减因子,而且为了避免损失历史信息,衰减最 好有一个止损值,即最终的协同过滤公式衰减到了某个阈值后不再衰减,这样可以避免历 史信息的丢失。图2为设定衰减因子为0. 9时的衰减周期图,可见,时间衰减因子可以灵活 有效的调节用户兴趣随着时间分布的权重。
[0046] 图3为本发明一种基于时间衰减的协同过滤系统的系统架构图。如图3所示,本 发明一种基于时间衰减的协同过滤系统,至少包括:分解模组301、时间衰减因子引入模组 302以及时间衰减因子选择模组303。
[0047] 其中分解模组301用于把传统协同过滤算法公式中的频次Freq (A)、Freq(B)和共 现CoOccur (A,B)做分解,形成新的协同过滤公式。频次分解为增量频次和存量频次,共现 分解为增量共现和存量共现。
[0048] 即:CoOccur (A,B) = His_Co0ccur (A,B)+New_Co0ccur (A,B)
[0049] Freq (A) = Hi s_Freq(A)+New_Freq(A)
[0050] Freq(B) = His_Freq(B)+New_Freq(B)〇
[0051] 这样,新的协同过滤公式就变成了:
[0052] Relate(A, B) = (His_CoOccur(A, B)+New_CoOccur(A, B))/((His_Freq(A)+New_ Freq (A)) *(His_Freq(B)+New_Freq(B)))〇
[0053] 时间衰减因子引入模组302于新的协同过滤公式中引入时间衰减因子,构建最终 的协同过滤公式,使用户兴趣迁移比较快的应用场景多用用户行为最近发生的数据,而用 户兴趣行为变化比较慢的数据,多借鉴用户历史行为记录。
[0054] 这里,把时间因子用Alfa表示。
[0055] 最终的协同过滤公式可以用下面公式表示。
[0056] Relate(A,B) = (Alfa*His_CoOccur(A,B)+New_CoOccur (A,B))/((Alfa*His_ Freq(A)+New_Freq(A)) *(Alfa*His_Freq(B)+New_Freq(B)))〇
[0057] 其中,Alfa的取值应该是0?1之间。
[0058] 极端情况,当Alfa的取值为0时,完全利用新得到的用户行为数据来作为推荐的 依据。当Alfa为1时,则用自日志存储之日起的所有数据作为推荐的依据。
[0059] 时间衰减因子选择模组303根据具体需要,选择相应的时间衰减因子。一般来说, 需要根据频次和共现的大小选择时间衰减因子,而且为了避免损失历史信息,衰减最好有 一个止损值,即到了某个大小后不再衰减,这样可以避免历史信息的丢失
[0060] 综上所述,本发明一种基于时间衰减的协同过滤系统及方法,通过将传统协同过 滤算法公式中的频次和共现分解形成新的协同过滤公式,并于新的协同过滤公式中引入时 间衰减因子,以便根据需要选择时间衰减因子,使得本发明可以根据具体的情况,调整时间 衰减因子,灵活的选择用户行为数据的范围,快速地调整用户行为数据的范围以适应具体 的应用,更为准确地分析出用户的兴趣,实现更好地推荐。
[0061] 上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何本 领域技术人员均可在不违背本发明的精神及范畴下,对上述实施例进行修饰与改变。因此, 本发明的权利保护范围,应如权利要求书所列。
【权利要求】
1. 一种基于时间衰减的协同过滤方法,包括如下步骤: 步骤一,把传统协同过滤算法公式中的频次和共现做分解,形成新的协同过滤公式; 步骤二,于该新的协同过滤公式中引入时间衰减因子,构建最终的协同过滤公式,使用 户兴趣迁移比较快的应用场景多采用用户行为最近发生的数据,而用户兴趣行为变化比较 慢的数据,多利用用户历史行为记录; 步骤三,根据具体需要选择相应的时间衰减因子进行过滤,完成推荐。
2. 如权利要求1所述的一种基于时间衰减的协同过滤方法,其特征在于:于步骤一中, 将频次分解为增量频次和存量频次,共现分解为增量共现和存量共现。
3. 如权利要求1所述的一种基于时间衰减的协同过滤方法,其特征在于:该时间衰减 因子的取值为〇?1之间。
4. 如权利要求3所述的一种基于时间衰减的协同过滤方法,其特征在于:当该时间衰 减因子的取值为〇时,完全利用新得到的用户行为数据来作为推荐的依据。当该时间衰减 因子取值为1时,则采用自日志存储之日起的所有数据作为推荐的依据。
5. 如权利要求1所述的一种基于时间衰减的协同过滤方法,其特征在于:于步骤三中, 根据频次和共现的大小选择时间衰减因子。
6. 如权利要求1所述的一种基于时间衰减的协同过滤方法,其特征在于:该最终的协 同过滤公式衰减到一阈值后不再衰减,以免丢失历史信息。
7. -种基于时间衰减的协同过滤系统,至少包括: 分解模组,用于把传统协同过滤算法公式中的频次和共现做分解,形成新的协同过滤 公式; 时间衰减因子引入模组,于该新的协同过滤公式中引入时间衰减因子,构建最终的协 同过滤公式,使用户兴趣迁移比较快的应用场景多采用用户行为最近发生的数据,而用户 兴趣行为变化比较慢的数据,多利用用户历史行为记录; 时间衰减因子选择模组,根据具体需要,选择相应的时间衰减因子进行协同过滤,完成 推荐。
8. 如权利要求7所述的基于时间衰减的协同过滤系统,其特征在于:该分解模组将频 次分解为增量频次和存量频次,共现分解为增量共现和存量共现。
9. 如权利要求7所述的基于时间衰减的协同过滤系统,其特征在于:该时间衰减因子 的取值为〇?1之间。
10. 如权利要求7所述的基于时间衰减的协同过滤系统,其特征在于:该时间衰减因子 选择模组根据频次和共现的大小选择时间衰减因子。
【文档编号】G06F17/30GK104216884SQ201310206887
【公开日】2014年12月17日 申请日期:2013年5月29日 优先权日:2013年5月29日
【发明者】陈冬, 陈运文, 纪达麒, 刘作涛, 姚璐, 辛颖伟 申请人:酷盛(天津)科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1