本发明属于推荐系统技术领域,具体涉及一种在线教育场景下的混合推荐系统。
背景技术:
在线教育场景下,全国各地的教育体制、政策存在极大的差异性,不同地域的考情、考纲、教材多样性明显。现有的在线教育企业虽然积累了海量的数据资料,用户也会频繁使用在线教育app进行试卷、题目等资料的搜索及下载,但是依然存在用户的查找效率低下,用户体验较差等缺陷。
技术实现要素:
针对现有技术中的缺陷,本发明提供一种在线教育场景下的混合推荐系统,实现了高效、稳定地个性化推荐,提升用户体验。
一种在线教育场景下的混合推荐系统,包括:
构建模块:用于构建若干个不同的子推荐引擎;所述子推荐引擎包括基于用户行为的第一推荐引擎、基于用户偏好及人口统计的第二推荐引擎、以及基于内容相似度的第三推荐引擎;
混合推荐模块:用于接收查询用户录入的用户信息,将所述用户信息与所述子推荐引擎进行匹配;当子推荐引擎匹配成功时,根据该子推荐引擎生成该用户信息对应的推荐内容,返回给对应的查询用户。
优选地,所述第一推荐引擎通过以下方法构建:
采集用户的历史行为;
对所述历史行为进行清洗转化,构建评分矩阵;
采用所述评分矩阵分别训练出基于物品的协同过滤模型以及基于用户的协同过滤模型;
根据预设的优化策略对基于物品的协同过滤模型和基于用户的协同过滤模型进行融合,得到所述第一推荐引擎。
优选地,所述评分矩阵包括物品相似度矩阵,所述物品相似度矩阵的构建方法包括:
从预设的物品候选集中选取两个不同的物品,分别统计对该两个物品有过历史行为的用户总数,以及同时对该两个物品有过历史行为的用户总数,计算该两个物品间的相似度;
依次遍历物品候选集中所有的物品,计算所有物品间的相似度,构建所述物品相似度矩阵;
基于物品的协同过滤模型的训练方法包括:
获取目标用户在预设的时间段内有过历史行为的物品,筛选出与该物品间的相似度大于预设值、且目标用户未发生过历史行为的物品作为推荐内容。
优选地,所述评分矩阵包括用户相似度矩阵,所述用户相似度矩阵的构建方法包括:
选取两个不同的用户,分别统计该两个用户有过历史行为的物品总数,以及该两个用户同时有过历史行为的物品总数,计算该两个用户间的相似度;
依次遍历所有用户,计算所有用户间的相似度,构建所述用户相似度矩阵;
基于用户的协同过滤模型的训练方法包括:
获取与目标用户相似度较高的用户,筛选出与获取到的用户有过历史行为、且目标用户还未发生过历史行为的物品作为推荐内容。
优选地,所述历史行为包括用户的点击行为、收藏行为和购买行为;
所述优化策略包括热门物品降权和时效性衰减。
优选地,所述热门物品降权的计算方法为:物品间的相似度乘以1/(log(1+n(i))),其中n(i)为物品总数;
所述时效性衰减的计算方法为:物品间的相似度乘以时间衰减函数f(t2,t1),t2为最近一次历史行为时间,t1为上一次历史行为时间。
优选地,所述第二推荐引擎的训练方法包括:
根据所述用户的历史行为计算基于不同维度下的热门物品排行榜以及用户历史行为统计数据;
结合该用户的所述用户信息与所述用户历史行为统计数据,构建该用户不同生命周期下的偏好结果;
设置不同时期的行为权重,利用该行为权重对不同时期的偏好信息进行加权求和,得出用户完整生命周期下的偏好信息;
通过用户完整生命周期下的偏好信息,查询热门物品排行榜,返回多个推荐物品候选集,根据预设的占比对推荐物品候选集进行融合,得到最终推荐列表。
优选地,所述结合该用户的所述用户信息与所述用户历史行为统计数据,构建该用户不同生命周期下的偏好结果具体包括:
结合在线教育场景将生命周期划分为新用户时期、转化时期、活跃时期及维护时期,分别统计不同生命周期下的历史行为,得出用户在不同生命周期的偏好信息。
优选地,所述第三推荐引擎的训练方法包括:
采集物品的内容标签;
根据物品的内容标签计算物品间的相似度,筛选出目标用户最近一次有过历史行为的物品,在录入的新物品列表中查找相似度大于预设值的物品构成新物品推荐列表;
将该新物品推荐列表中物品根据业务规则加分进行位次提升,将重排序后的新物品推荐列表作为推荐内容。
优选地,所述混合推荐模块具体用于:
将所述用户信息与所述第一推荐引擎进行匹配;当命中该层,则根据用户信息输出所述第一推荐引擎的推荐结果,作为第一推荐结果;当没有命中该层,根据用户信息输出所述第二推荐引擎的推荐结果,作为第一推荐结果;
根据用户信息输出所述第三推荐引擎的推荐结果,作为第二推荐结果;
结合所述第一推荐结果和第二推荐结果,得到所述推荐内容。
由上述技术方案可知,本发明提供的在线教育场景下的混合推荐系统,子推荐引擎由自上而下设置的基于用户行为的第一推荐引擎、基于用户偏好及人口统计的第二推荐引擎、以及基于内容相似度的第三推荐引擎组成,通过对多个推荐引擎的推荐结果融合,保证了最终得到的推荐内容的多样性,实现了高效、稳定地个性化推荐,提升用户体验。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍。在所有附图中,类似的元件或部分一般由类似的附图标记标识。附图中,各元件或部分并不一定按照实际的比例绘制。
图1为本发明实施例提供的混合推荐系统的模块框图。
图2为本发明实施例提供的混合推荐系统运行方法的流程图。
具体实施方式
下面将结合附图对本发明技术方案的实施例进行详细的描述。以下实施例仅用于更加清楚地说明本发明的技术方案,因此只作为示例,而不能以此来限制本发明的保护范围。需要注意的是,除非另有说明,本申请使用的技术术语或者科学术语应当为本发明所属领域技术人员所理解的通常意义。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
实施例一:
一种在线教育场景下的混合推荐系统,参见图1,包括:
构建模块:用于构建若干个不同的子推荐引擎;所述子推荐引擎包括基于用户行为的第一推荐引擎、基于用户偏好及人口统计的第二推荐引擎、以及基于内容相似度的第三推荐引擎;
混合推荐模块:用于接收查询用户录入的用户信息,将所述用户信息与所述子推荐引擎进行匹配;当子推荐引擎匹配成功时,根据该子推荐引擎生成该用户信息对应的推荐内容,返回给对应的查询用户。
具体地,推荐内容可以是推荐列表。该系统可实现海量内容下的用户个性化推荐。该系统首先计算各个推荐引擎的初步推荐结果,结合用户实时请求,返回最终个性化推荐内容。
该系统中,子推荐引擎由自上而下设置的基于用户行为的第一推荐引擎、基于用户偏好及人口统计的第二推荐引擎、以及基于内容相似度的第三推荐引擎组成,通过对多个推荐引擎的推荐结果融合,保证了最终得到的推荐内容的多样性,实现了高效、稳定地个性化推荐,提升用户体验。该系统采用了机器学习算法和后端技术,实现了一种个性化综合推荐系统,帮助用户获取感兴趣的内容资讯,提升了用户点击率及活跃度。
实施例二:
实施例二在实施例一的基础上,增加了第一推荐引擎的创建方法。
所述第一推荐引擎通过以下方法构建:
采集用户的历史行为;所述历史行为包括用户的点击行为、收藏行为和购买行为;
对所述历史行为进行清洗转化,构建评分矩阵;
采用所述评分矩阵分别训练出基于物品的协同过滤模型以及基于用户的协同过滤模型;
根据预设的优化策略对基于物品的协同过滤模型和基于用户的协同过滤模型进行融合,得到所述第一推荐引擎。
优选地,所述优化策略包括热门物品降权和时效性衰减。所述热门物品降权的计算方法为:物品间的相似度乘以1/(log(1+n(i))),降低热门物品的分值,其中n(i)为物品总数;所述时效性衰减的计算方法为:物品间的相似度乘以时间衰减函数f(t2,t1),t2为最近一次历史行为时间,t1为上一次历史行为时间,行为间间隔越久,分值越低。
具体地,历史行为中增加了用户的点击行为(例如点击次数),提高了用户黏性及活跃度。
优选地,所述评分矩阵包括物品相似度矩阵,所述物品相似度矩阵的构建方法包括:
从预设的物品候选集中选取两个不同的物品,分别统计对该两个物品有过历史行为的用户总数,以及同时对该两个物品有过历史行为的用户总数,计算该两个物品间的相似度;例如选取物品i与物品j,分别统计对物品i和物品j有过点击、下载行为的用户总数以及同时对物品i和物品j有过行为的用户总数。
依次遍历物品候选集中所有的物品,计算所有物品间的相似度,构建所述物品相似度矩阵;
基于物品的协同过滤模型的训练方法包括:
获取目标用户在预设的时间段内有过历史行为的物品,筛选出与该物品间的相似度大于预设值、且目标用户未发生过历史行为的物品作为推荐内容。
优选地,所述评分矩阵包括用户相似度矩阵,所述用户相似度矩阵的构建方法包括:
选取两个不同的用户,分别统计该两个用户有过历史行为的物品总数,以及该两个用户同时有过历史行为的物品总数,计算该两个用户间的相似度;例如选取用户i与用户j,分别统计用户i和用户j有过历史行为的物品总数以及用户i和用户j同时有过历史行为的物品总数。
依次遍历所有用户,计算所有用户间的相似度,构建所述用户相似度矩阵;
基于用户的协同过滤模型的训练方法包括:
获取与目标用户相似度较高的用户,筛选出与获取到的用户有过历史行为、且目标用户还未发生过历史行为的物品作为推荐内容。
本发明实施例所提供的系统,为简要描述,实施例部分未提及之处,可参考前述系统实施例中相应内容。
实施例三:
实施例三在上述实施例的基础上,增加了第二推荐引擎的创建方法。
所述第二推荐引擎的训练方法包括:
根据所述用户的历史行为计算基于不同维度下的热门物品排行榜以及用户历史行为统计数据;
结合该用户的所述用户信息与所述用户历史行为统计数据,构建该用户不同生命周期下的偏好结果;
设置不同时期的行为权重,利用该行为权重对不同时期的偏好信息进行加权求和,得出用户完整生命周期下的偏好信息;
通过用户完整生命周期下的偏好信息,查询热门物品排行榜,返回多个推荐物品候选集,根据预设的占比对推荐物品候选集进行融合,得到最终推荐列表。
具体地,热门物品排行榜为针对所有用户的非个性化物品排行榜。偏好信息包括年级、科目、地域等。基于不同维度下的热门物品排行榜包括基于地域、年级、科目等维度的热门物品排行榜。用户信息还包括注册信息。第二推荐引擎构建时,结合在线教育场景构建用户生命周期,基于用户生命周期构建用户偏好信息,使之更契合在线教育的应用场景。
优选地,所述结合该用户的所述用户信息与所述用户历史行为统计数据,构建该用户不同生命周期下的偏好结果具体包括:
结合在线教育场景将生命周期划分为新用户时期、转化时期、活跃时期及维护时期,分别统计不同生命周期下的历史行为,得出用户在不同生命周期的偏好信息。
本发明实施例所提供的系统,为简要描述,实施例部分未提及之处,可参考前述系统实施例中相应内容。
实施例四:
实施例四在上述实施例的基础上,增加了第三推荐引擎的创建方法。
所述第三推荐引擎的训练方法包括:
采集物品的内容标签;
根据物品的内容标签计算物品间的相似度,筛选出目标用户最近一次有过历史行为的物品,在录入的新物品列表中查找相似度大于预设值的物品构成新物品推荐列表;
将该新物品推荐列表中物品根据业务规则加分进行位次提升,将重排序后的新物品推荐列表作为推荐内容。
具体地,第三推荐引擎添加新物品并引入排序规则,提升新物品次序。第三推荐引擎为基于内容相似度的推荐引擎,保证内容新鲜度,提升了新内容的曝光程度,提高了推荐的多样性,解决现有推荐系统中存在的用户/物品冷启动问题。
本发明实施例所提供的系统,为简要描述,实施例部分未提及之处,可参考前述系统实施例中相应内容。
实施例五:
实施例五在上述实施例的基础上,增加了以下内容。
参见图2,所述混合推荐模块具体用于:
将所述用户信息与所述第一推荐引擎进行匹配;当命中该层,则根据用户信息输出所述第一推荐引擎的推荐结果,作为第一推荐结果;当没有命中该层,根据用户信息输出所述第二推荐引擎的推荐结果,作为第一推荐结果;
根据用户信息输出所述第三推荐引擎的推荐结果,作为第二推荐结果;
结合所述第一推荐结果和第二推荐结果,得到所述推荐内容。
具体地,命中该层是指该层引擎返回有物品的推荐列表,未命中即返回物品推荐列表为空。用户信息还包括用户id。混合推荐模块首先根据用户id在基于用户行为的第一推荐引擎中获取推荐列表,若命中第一推荐引擎,则将第一推荐引擎的推荐结果作为最终基于用户的推荐内容;若用户历史行为过于稀疏,该用户即使有过行为,也不一定能够通过协同过滤模型计算出推荐结果,所以未命中第一推荐引擎,则进入基于用户偏好及人口统计的第二推荐引擎,第二推荐引擎根据用户偏好返回推荐列表,生成基于用户的推荐内容。随后该系统会触发基于物品相似度的第三推荐引擎返回新内容推荐结果,最终可以通过动态调整推荐结果占比,生成最终的推荐内容。
第一推荐结果对用户历史行为进行了精确分析,使得推荐结果符合用户的行为偏好及查询意愿,实现了个性化推荐系统的构建。第二推荐结果旨在解决物品冷启动问题,对于新上线的物品,因其没有用户点击行为,不会出现在第一推荐结果中,根据马太效应,新物品很难有曝光机会。因此基于该推荐引擎,将新物品添加至最终推荐列表。将第一推荐结果与第二推荐相融合,一方面可以为用户提交个性化的推荐结果,提高用户兴趣度;另一方面可以解决物品冷启动问题,提高推荐列表的新颖度和覆盖率。
本发明实施例所提供的系统,为简要描述,实施例部分未提及之处,可参考前述系统实施例中相应内容。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。