推荐系统及其构建方法技术方案

技术编号:14970126 阅读:88 留言:0更新日期:2017-04-02 23:22
本申请提供了一种推荐系统及其构建方法。根据一个实施方式的推荐系统包括:算法模块,所述算法模块包括多个二级模块,所述二级模块的参数是可配置的;配置模块,所述配置模块包括多个参数配置模型,分别对所述多个二级模块的参数进行配置;服务模块,为用户或外部设备提供通过所述配置模块对所述算法模块进行配置的接口。通过本发明专利技术解决了相关技术中推荐系统的开发复杂度较高的问题,降低了推荐系统的搭建和使用难度。

【技术实现步骤摘要】

本专利技术涉及一种推荐系统及其构建方法
技术介绍
个性化推荐系统和算法是根据用户的兴趣特点和购买、观看等反馈行为,向用户推荐用户感兴趣的信息和商品,从而在海量信息中筛选出有用的信息。Mahout开源机器学习软件库是现有技术中常用的推荐系统,其对推荐算法模型做了很好的抽象和封装。针对协同过滤推荐,Mahout实现了常用的基于用户的协同过滤(User-basedCF)、基于项目的协同过滤(Item-basedCF)和Slope-One算法,为推荐系统开发人员提供了完善的API。但是,Mahout针对基于内容的推荐所做的工作很少。由于基于内容的推荐算法需要与特定领域知识相结合,难以在代码级别规整为一个框架,因此Mahout并未对基于内容的推荐做太多的封装与抽象。并且,Mahout仅仅在代码级别提供了良好的封装,为开发人员提供了详尽的应用程序编程接口(ApplicationProgrammingInterface,简称为API)。然而Mahout并未在功能模块级别提供太多帮助,对于想要搭建推荐系统而又不愿意亲自编程实现的人来说,需要更高层次的封装和扩展来提供傻瓜式的搭建方式,进一步降低推荐系统的开发复杂度。针对相关技术中推荐系统的开发复杂度较高的问题,还未提出有效的解决方案。
技术实现思路
本专利技术提供了一种推荐系统及其构建方法,以至少解决相关技术中推荐系统的开发复杂度较高的问题。根据本专利技术的一个方面,提供了一种推荐系统,包括:算法模块,所述算法模块包括多个二级模块,所述二级模块的参数是可配置的;配置模块,所述配置模块包括多个参数配置模型,分别对所述多个二级模块的参数进行配置;服务模块,为用户或外部设备提供通过所述配置模块对所述算法模块进行配置的接口。可选地,所述多个二级模块包括:数据抽象模块,将输入数据源转换为包括用户ID、项目ID和偏好值的关系型表的格式;相似度度量模块,基于从数据抽象模块输出的数据计算用户之间的相似度和项目之间的相似度;算法处理模块,从存储的多个算法中选择一个或多个算法,基于从数据抽象模块和相似度度量模块输出的数据进行推荐处理;算法评估模块,对采用所选择的算法获得的推荐结果进行评估。可选地,所述多个参数配置模型包括:输入数据源参数配置模型,对输入数据源的数据类型、类别、数据库参数、文件配置参数、特征数据相关参数和用户偏好相关参数中的至少之一进行配置;相似度度量参数配置模型,对用户之间的相似度度量和项目之间的相似度度量中的至少之一进行配置;算法处理参数配置模型,对选用的算法的处理流程、类型、权重、个数、以及用户邻域的类型、用户邻域包含的用户数量和用户邻域的阈值中的至少之一进行配置;算法评估参数配置模型,对是否计算协调过滤推荐中预测评分与实际评分的偏差、是否计算协调过滤推荐的查准率、是否计算协调过滤推荐的查全率、和是否计算推荐算法的运行时间中的至少之一进行配置。可选地,所述配置模块包括Web配置模块或XML配置模块,在Web配置模块和XML配置模块中的一者或二者中设置所述多个参数配置模型。可选地,所述服务模块包括Web服务模块和第三方库服务模块中的至少之一。根据本专利技术的一个方面,提供了一种推荐系统的构建方法,包括:提供算法模块,所述算法模块包括多个二级模块,所述二级模块的参数是可配置的;提供配置模块,所述配置模块包括多个参数配置模型,分别对所述多个二级模块的参数进行配置;提供服务模块,为用户或外部设备提供通过所述配置模块对所述算法模块进行配置的接口。可选地,所述多个二级模块包括:数据抽象模块,将输入数据源转换为包括用户ID、项目ID和偏好值的关系型表的格式;相似度度量模块,基于从数据抽象模块输出的数据计算用户之间的相似度和项目之间的相似度;算法处理模块,从存储的多个算法中选择一个或多个算法,基于从数据抽象模块和相似度度量模块输出的数据进行推荐处理;算法评估模块,对采用所选择的算法获得的推荐结果进行评估。可选地,所述多个参数配置模型包括:输入数据源参数配置模型,对输入数据源的数据类型、类别、数据库参数、文件配置参数、特征数据相关参数和用户偏好相关参数中的至少之一进行配置;相似度度量参数配置模型,对用户之间的相似度度量和项目之间的相似度度量中的至少之一进行配置;算法处理参数配置模型,对选用的算法的处理流程、类型、权重、个数、以及用户邻域的类型、用户邻域包含的用户数量和用户邻域的阈值中的至少之一进行配置;算法评估参数配置模型,对是否计算协调过滤推荐中预测评分与实际评分的偏差、是否计算协调过滤推荐的查准率、是否计算协调过滤推荐的查全率、和是否计算推荐算法的运行时间中的至少之一进行配置。可选地,所述配置模块包括Web配置模块或XML配置模块,在Web配置模块和XML配置模块中的一者或二者中设置所述多个参数配置模型。可选地,所述服务模块包括Web服务模块和第三方库服务模块中的至少之一。根据本专利技术的另一个方面,提供了一种推荐系统搭建方法,包括:获取互联网WEB配置页面;通过所述WEB配置页面获取用于搭建推荐系统的各项参数;根据所述各项参数搭建所述推荐系统;或者,按照指定格式规范编写可扩展标记语言XML配置文件;根据所述XML配置文件配置用于搭建推荐系统的各项参数;根据所述各项参数搭建所述推荐系统;其中,所述推荐系统用于向用户推荐所述用户感兴趣的信息;所述各项参数包括以下至少之一:与输入数据源对应的参数、与相似度度量对应的参数、与推荐算法处理流程对应的参数以及与推荐算法评估对应的参数。可选地,与输入数据源对应的参数包括以下至少之一:dataType,用于表示所述输入数据源所包含的数据类型;其中,所述输入数据源所包含的数据类型包括:特征数据或者用户偏好数据;sourceType,用于表示所述输入数据源的类别;其中,所述输入数据源的类别包括:MySQL数据库或者文件;数据库配置参数,用于指示数据库的连接配置信息,取值包括以下至少之一:dbServerName、dbUser、dbPassword;文件配置参数,用于指示输入数据源文件的存储路径,取值包括:filePath;特征数据相关参数,用于指示以下至少之一的信息:指定用户及项目特征数据所在的数据库名称、表名称、字段名称以及字段之间的逻辑组成关系;用户偏好数据相关参数,用于指示以下至少之一的信息:指定用户偏好数据所在的数据库名称、表名称、指定用户ID字段名称、项目ID字段名称、偏好值字段名称、时间戳字段名称。可选地,与相似度度量对应的参数包括本文档来自技高网...

【技术保护点】
一种推荐系统,包括:算法模块,所述算法模块包括多个二级模块,所述二级模块的参数是可配置的;配置模块,所述配置模块包括多个参数配置模型,分别对所述多个二级模块的参数进行配置;服务模块,为用户或外部设备提供通过所述配置模块对所述算法模块进行配置的接口。

【技术特征摘要】
1.一种推荐系统,包括:
算法模块,所述算法模块包括多个二级模块,所述二级模块的参数是可配置的;
配置模块,所述配置模块包括多个参数配置模型,分别对所述多个二级模块的参数进
行配置;
服务模块,为用户或外部设备提供通过所述配置模块对所述算法模块进行配置的接
口。
2.如权利要求1所述的推荐系统,其中,所述多个二级模块包括:
数据抽象模块,将输入数据源转换为包括用户ID、项目ID和偏好值的关系型表的格
式;
相似度度量模块,基于从数据抽象模块输出的数据计算用户之间的相似度和项目之间
的相似度;
算法处理模块,从存储的多个算法中选择一个或多个算法,基于从数据抽象模块和相
似度度量模块输出的数据进行推荐处理;
算法评估模块,对采用所选择的算法获得的推荐结果进行评估。
3.如权利要求1所述的推荐系统,其中,所述多个参数配置模型包括:
输入数据源参数配置模型,对输入数据源的数据类型、类别、数据库参数、文件配置
参数、特征数据相关参数和用户偏好相关参数中的至少之一进行配置;
相似度度量参数配置模型,对用户之间的相似度度量和项目之间的相似度度量中的至
少之一进行配置;
算法处理参数配置模型,对选用的算法的处理流程、类型、权重、个数、以及用户邻
域的类型、用户邻域包含的用户数量和用户邻域的阈值中的至少之一进行配置;
算法评估参数配置模型,对是否计算协调过滤推荐中预测评分与实际评分的偏差、是
否计算协调过滤推荐的查准率、是否计算协调过滤推荐的查全率、和是否计算推荐算法的
运行时间中的至少之一进行配置。
4.如权利要求1所述的推荐系统,其中,所述配置模块包括Web配置模块或XML配
置模块,在Web配置模块和XML配置模块中的一者或二者中设置所述多个参数配置模型。
5.如权利要求1所述的推荐系统,其中,所述服务模块包括Web服务模块和第三方
库服务模块中的至少之一。
6.一种推荐...

【专利技术属性】
技术研发人员:杨成李晨牛志向
申请(专利权)人:中国传媒大学
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1