CN106940801B - 一种用于广域网络的深度强化学习推荐系统及方法 - Google Patents
一种用于广域网络的深度强化学习推荐系统及方法 Download PDFInfo
- Publication number
- CN106940801B CN106940801B CN201610005068.8A CN201610005068A CN106940801B CN 106940801 B CN106940801 B CN 106940801B CN 201610005068 A CN201610005068 A CN 201610005068A CN 106940801 B CN106940801 B CN 106940801B
- Authority
- CN
- China
- Prior art keywords
- user
- module
- distributed computing
- wide
- computing module
- 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.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及用于广域网络的深度强化学习推荐系统,包括:数据采集及预处理模块、分布式实时数据库、历史数据库、离线训练模块、在线训练模块、广域分布式深度强化学习模块、分布式计算模块以及用户交互模块;数据采集及预处理模块用于采集数据并对数据进行预处理;分布式实时数据库用于存储在给定时效内的分布式数据;历史数据库用于保存已经过了给定时效的数据;离线训练模块根据历史数据,进行权重和偏置的调整;在线训练模块根据分布式实时数据,进行权重和偏置的调整;广域分布式深度强化学习模块根据推荐请求,结合权重与偏置,生成推荐结果;用户交互模块接收推荐请求,将推荐结果呈现给用户。
Description
技术领域
本发明涉及分布式数据处理方法和学习推荐系统,特别涉及一种用于广域网络的深度强化学习推荐系统及方法。
背景技术
随着物联网、云计算、智能家居等技术的高速发展,多形态的传感器、终端设备和智能系统产生了大规模的广域分布式数据,比如用户行为、图像文字、音视频等,分布于整个网络空间中的不同位置上,这些数据可以用于提高预测、推荐和服务的综合性能。随着这些数据量迅速增长,迫切需要研究对广域分布式大数据的高效处理技术,以支持大数据分析及其应用。对于高精度和高速度的机器学习模型来说,训练数据和模型参数的规模都有可能会大到单机无法存储和处理。当数据量大到不能在单机上存储时,必须采用分布式存储方法,而当模型大到不能在单机上训练时,必须采用分布式的训练模型。作为一种大数据存储及处理的最新技术,Hadoop大数据处理平台难以达到秒级及以下的响应延迟,也就难以有效地满足广域分布式数据的实时或即时处理。究其原因,该技术的大部分资源都浪费在计算机集群之间的数据通信上,而只有改善通信代价这一瓶颈,才能提高广域分布式大数据处理的精度和速度。
以推荐系统为例,当前商业领域对个性化推荐业务的需求正在快速增长,所涉及的数据规模和数据处理复杂度也呈爆炸式增长。推荐系统主要是为了解决在信息超载的情况下如何在网络空间中找到可信产品和为用户提供合适服务的问题,以广播推荐系统为例,它主要用于向用户或用户群推荐个性化的广播节目,帮助用户及其好友找到有共同兴趣的新节目。现有推荐方法包括协同过滤推荐、基于内容的推荐、基于社会网络分析方法的推荐、基于知识的推荐、基于关联规则的推荐、基于效用的推荐、基于复杂网络的推荐、混合推荐等。协同过滤推荐的主要优点是能处理诸如音频、艺术品等非结构化的复杂对象,共享其他相似用户的经验和反馈信息,可以发现用户潜在的但自己尚未发现的兴趣偏好。它的主要缺点是有稀疏性问题、大规模扩展问题、推荐性能受限问题、新用户问题或冷启动问题,与其相关的研究包括最邻近、聚类、线性回归、神经网络、贝叶斯网、概率模型和图论方法等。基于内容的推荐的主要优点是没有稀疏问题,可以推荐新的还不流行的项目,能为有特殊癖好的用户提供合适的推荐服务,列出推荐项目的内容特征,很直观且易解释。它的主要缺点是特征提取方法应用很有限,必须要求内容有良好的结构,并可以抽取成有意义的特征,新用户问题,多样性差,可扩展性差。而且,基于内容的推荐需要得到机器学习方法的支持,包括TF-IDF、聚类、遗传算法、决策树、神经网络和贝叶斯分类器等。此外,基于社会网络分析的推荐是通过社会网络分析方法考察用户和用户之间的相关性,并把这种相关性应用于推荐系统的一类方法,目前的研究主要是对协同过滤的延伸。根据J.Golbeck,P.Massa,P.Avesani等人的研究表明,利用节点之间的关系计算节点之间信任度,再利用它们之间的信任度进行推荐,可以比一般的协同推荐获得更好的推荐效果。
由于各种推荐系统及方法有各自的优缺点,在实际应用中,组合推荐方法经常被采用,特别是基于内容和协同过滤的组合,以弥补各自推荐技术的弱点。组合推荐系统由Burke et al.首先提出,当时主要是用于组合基于内容的推荐和协同过滤。早期的组合推荐系统的权重是静态的,比如Belkor et al.用权重组合了107个不同的推荐算法,以优化整体的均方根误差(RMSE),而这个权重对每个用户都是相同的,且不随时间变化。之后的AdaRec系统采用了动态组合策略,以应对用户兴趣的变化,这种策略就相当于权重在0和1之间选择,0表示不选择,1表示选择。还有一些研究者提出了依据用户反馈来调整权重,以及利用Hadoop的分布式策略来改善计算效率。综上所述,传统的个性化推荐方法,以协同过滤算法为代表,存在多样性差、可扩展性差等缺点,而基于大规模数据和分布式策略的组合推荐方法,则存在通信代价高、计算效率低、个性化不足、时效性不够等问题。
发明内容
本发明的目的在于克服已有的组合推荐方法通信代价高、计算效率低、个性化不足、时效性不够的缺陷,从而提供一种能有效提高计算效率、降低通信代价、改善个性化和时效性的推荐系统与方法。
为了实现上述目的,本发明提供了一种用于广域网络的深度强化学习推荐系统,包括:数据采集及预处理模块、分布式实时数据库、历史数据库、离线训练模块、在线训练模块、广域分布式深度强化学习模块、分布式计算模块以及用户交互模块;其中,
所述数据采集及预处理模块用于采集数据并对数据进行预处理;
所述分布式实时数据库用于存储在给定时效内的分布式数据;
所述历史数据库用于保存已经过了给定时效的数据;
所述离线训练模块根据历史数据,对所述广域分布式深度强化学习模块进行权重和偏置的调整;
所述在线训练模块根据分布式实时数据,对所述广域分布式深度强化学习模块进行具有地理分布式、时效性和个性化特征的权重和偏置的调整,根据用户的不同,以及时间和地点的不同,这些权重或偏置是不同的;
所述广域分布式深度强化学习模块根据用户的推荐请求,结合具有地理分布式、时效性和个性化特征的所述权重与偏置,为该用户生成推荐结果;
所述用户交互模块接收用户的推荐请求,并将所述广域分布式深度强化学习模块所生成的推荐结果呈现给用户。
上述技术方案中,所述广域分布式深度强化学习模块进一步包括:组合推荐结果子模块、调整权重子模块、发送需要计算的用户标签和接收计算出的推荐结果子模块,以及向用户交互模块推送推荐结果子模块;其中,
所述组合推荐结果子模块用于对所述分布式计算模块返回的推荐结果进行权重组合,从而推荐出整个结果集;所述调整权重子模块根据用户对推荐的关注情况来调整推荐算法的推荐权重;所述发送需要计算的用户标签和接收计算出的推荐结果子模块用于向不同类型的分布式计算模块发送需要计算推荐结果的用户标签,并接收不同类型的分布式计算模块发送的推荐结果集;所述向用户交互模块推送推荐结果子模块用于将组合好的结果集向用户的客户端推荐。
上述技术方案中,所述分布式计算模块有多种类型,多种类型的分布式计算模块进一步包括:运行协同过滤算法的第1类分布式计算模块、运行基于内容推荐算法的第2类分布式计算模块、运行基于社交网络推荐算法的第3类分布式计算模块,以及运行基于关联规则推荐算法的第4类分布式计算模块;其中,
所述运行协同过滤算法的第1类分布式计算模块进一步包括:接收广域分布式深度强化学习模块发送的用户标签单元、向广域分布式深度强化学习模块发送计算出的Top-N推荐结果集单元、向对应的广域分布式数据库请求所需的数据单元,以及运行协同过滤算法计算出推荐的Top-N推荐结果集单元;
所述运行基于内容推荐算法的第2类分布式计算模块进一步包括:接收广域分布式深度强化学习模块发送的用户标签单元、向广域分布式深度强化学习模块发送计算出的Top-N推荐结果集单元、向对应的广域分布式数据库请求所需的数据单元,以及运行基于内容推荐算法计算出推荐的Top-N推荐结果集单元;
所述运行基于社交网络推荐算法的第3类分布式计算模块进一步包括:接收广域分布式深度强化学习模块发送的用户标签单元、向广域分布式深度强化学习模块发送计算出的Top-N推荐结果集单元、向对应的广域分布式数据库请求所需的数据单元,以及运行基于社交网推荐算法计算出推荐的Top-N推荐结果集单元;
所述运行基于关联规则推荐算法的第4类分布式计算模块进一步包括:接收广域分布式深度强化学习模块发送的用户标签单元、向广域分布式深度强化学习模块发送计算出的Top-N推荐结果集单元、向对应的广域分布式数据库请求所需的数据单元,以及运行基于关联规则的推荐算法计算出推荐的Top-N推荐结果集单元。
上述技术方案中,所述运行基于内容推荐算法的第2类分布式计算模块能够对所述运行协同过滤算法的第1类分布式计算模块、运行基于社交网络推荐算法的第3类分布式计算模块以及运行基于关联规则推荐算法的第4类分布式计算模块所生成的推荐结果进行过滤。
上述技术方案中,所述离线训练模块以无监督训练的方法对权重和偏置进行调整。
上述技术方案中,所述在线训练模块采用梯度下降法对权重和偏置进行调整。
本发明还提供了基于所述的用于广域网络的深度强化学习推荐系统所实现的深度强化学习推荐方法,包括:
步骤1)、所述广域分布式深度强化学习模块收到用户的推荐请求后,向各分布式计算模块发送需要计算推荐结果的用户标签;
步骤2)、所述分布式计算模块分别计算对应用户标签的推荐结果,将结果返回给广域分布式深度强化学习模块;
步骤3)、根据用户群或用户标签不同,采用不同权重和偏置的广域分布式深度强化学习模块来组合和强化各个计算结果,向用户生成最终的推荐结果;其中,所述权重和偏置通过学习获得,根据用户群或用户标签的不同,以及时间和地点的不同,这些参数可能是不同的。
上述技术方案中,所述步骤2)进一步包括:
所述分布式计算模块主要包括4类,其总数设为M,广域分布式深度强化学习模块的总数设为J,第j个用户群以就近原则对应于第j个广域分布式深度强化学习模块,j=1,2,…,J;
第1类分布式计算模块向历史数据库请求并获得所需的用户评分数据,记为{i1:
r1,i2:r2,,…,ik:rk};第1类分布式计算模块对接收的数据组成一个用户对结果的评分矩阵
(rij),其中rij为用户i对结果j的评分,对于没有评分的结果用0表示;第1类分布式计算模
块对评分矩阵(rij)进行奇异值分解,通过构建一个只有对角元
素的矩阵∑,并将∑中的元素从大到小排列,在某个奇异值的数目(r)之后,其他的奇异值
都置为0,即保留r个重要特征,其余特征认为是噪声或冗余特征;第1类分布式计算模块对
经过奇异值分解的简化矩阵运行基于协同过滤算法,通过用户对某个结果的评分公式 计算出top N结果集,其中,
Rating(userId,j)是用户对未接触结果j的估计评分,Rating(userId,k)是用户对已接触
结果k的评分,similarity(j,k)是结果j和k间的欧氏距离相似度或皮尔逊相似度或余弦相
似度;第1类分布式计算模块将计算出的top N结果集返回给广域分布式深度强化学习模
块;
第2类分布式计算模块向历史数据库请求包含用户信息、结果信息、用户接触历史
在内的数据;第2类分布式计算模块根据用户的信息和用户的接触历史计算出用户的兴趣
图谱,记为{interest 1:value 1,interest 2:value 2,…,interest k:value k};其中,
interest代表感兴趣的内容;value代表感兴趣的程度;第2类分布式计算模块根据结果信
息和用户的兴趣图谱的比较,由计算出最符合用
户兴趣的top N结果集,其中totalValue(userId,j)是用户对结果j的总喜爱程度,α(i)表
示结果j是否包含interest i,取值为(1,0),而value(i)则表示用户对interest i的喜爱
程度;然后将计算出的top N结果集返回给所述广域分布式深度强化学习模块;
第3类分布式计算模块向包含用户的好友关系的数据库、用户观看历史的数据库
请求并获得所需数据;第3类分布式计算模块对用户的好友建立社交图谱,构建用户关系矩
阵(Relationij),其中的元素Relationij表示用户i和j间的关系亲密度,计算出身边的好友
对用户的影响因子;第3类分布式计算模块通过得到好友关于某个结果
对用户的影响因子,其中totalValue(userId,j)是朋友对用户关于结果j的整体影响值,
influence(i,userId)表示朋友i对用户的影响值,IsWatched(i,j)=(1,0)表示用户i是否
接触过结果j;如果totalValue(userId,j)大于用户的阈值,就向用户推荐该结果,并计算
出top N结果集;第3类分布式计算模块将计算出的top N结果集返回给广域分布式深度强
化学习模块;
第4类分布式计算模块向包含用户接触历史的数据库请求并获得所需数据,并组成一个接触历史数据集;第4类分布式计算模块运行关于关联规则的推荐算法,计算出信任度和支持度,然后根据信任度和支持度的高低,推荐用户没有接触过且最有可能接触的topN结果集;第4类分布式计算模块将计算出的top N结果集返回给广域分布式深度强化学习模块。
上述技术方案中,所述步骤2)还包括:第2类分布式计算模块过滤所述第1类分布式计算模块、第3类分布式计算模块以及第4类分布式计算模块的计算结果。
上述技术方案中,所述步骤3)包括:所述广域分布式深度强化学习模块接收到来自第1类分布式计算模块、第2类分布式计算模块、第3类分布式计算模块、第4类分布式计算模块返回的top N结果集,记为I1、I2、I3和I4,广域分布式深度强化学习模块将来自所有分布式计算模块的节目集作为输入集合{xi},通过可学习的权重{wij}和偏置{bj}进行组合和强化,推荐出最终的结果集作为输出集合{yi}。
本发明的优点在于:
本发明通过广域分布式深度强化学习、分布式计算和分布式存储,提高了在复杂多变的广域网络环境下大规模数据处理的个性化、时效性、多样性、可扩展性、通信代价和计算效率。
附图说明
图1是本发明的一种用于广域网络的深度强化学习推荐系统的框架图;
图2是本发明的一种用于广域网络的深度强化学习推荐方法的流程示意图。
具体实施方式
现结合附图对本发明作进一步的描述。
本发明的用于广域网络的深度强化学习推荐系统具有广泛的用途,如在视频或音频点播系统中为用户推荐用户可能感兴趣的节目,在购物网站中为用户推荐用户可能感兴趣的商品。在下面的实施例中,以向用户推荐用户可能感兴趣的节目的深度强化学习推荐系统为例,对深度强化学习推荐系统的构成、功能、工作流程等做详细说明。当该推荐系统用于其他场合时,其构成、功能、工作流程总体上没有本质区别,只要将其中的数据做相应修改即可。
如图1所示,本发明的一种用于广域网络的深度强化学习推荐系统包括:数据采集及预处理模块、分布式实时数据库、历史数据库、离线训练模块、在线训练模块、广域分布式深度强化学习模块、多种类型的分布式计算模块,以及用户交互模块;其中,
所述数据采集及预处理模块的基本功能是采集来自用户、服务提供商等数据源的各种数据,并对这些数据进行预处理,包括数据清洗、归一化和结构化等,这些预处理后的数据可被分布式计算模块调用,也可用于广域分布式深度强化学习模块的训练。
所述分布式实时数据库用于存储在给定时效内的分布式数据,主要是指在推荐列表中的节目被用户点击、观看、打分或分享等在线用户行为和用户反馈信息。
所述历史数据库用于保存已经过了给定时效的用户反馈信息和其它信息,主要包括:1)包含用户标签、性别、年龄、爱好在内的用户基本信息;2)用户对节目打分信息;3)包含节目标签、类型、演员、导演在内的节目信息;4)包含用户标签、节目标签、观看时间等在内的用户观看历史;5)包含用户好友关系在内的用户好友关系图谱。
所述离线训练模块的基本功能是,根据历史数据,对广域分布式深度强化学习模块进行权重{wij}和偏置{bj}的调整,以无监督训练为主,但也可以进行监督训练;所述无监督训练可采用现有技术中的多种已知方法,可选地,在本实施例中,无监督训练采用基于网络能量函数最小化的训练方法;所述监督训练可采用现有技术中的多种已知方法,可选地,在本实施例中,监督训练可采用以t-k到t-1时刻数据作为训练集,以t时刻数据作为训练标签的梯度下降法。
所述在线训练模块的基本功能是,根据实时接收到的用户对推荐节目的反馈数据,用梯度下降法调整广域分布式深度强化学习模块中所涉及的所有权重{wij}和偏置{bj},用以提高与被观看节目相关的权重和偏置,同时降低与最近较少被观看节目相关的权重和偏置。
所述广域分布式深度强化学习模块以就近原则布置于各用户群的附近,该模块结合具有地理分布式、时效性和个性化特征的权重与偏置,为用户生成推荐结果。广域分布式深度强化学习模块中的权重与偏置具有地理分布式、时效性和个性化特征;根据用户群或用户标签的不同,以及时间和地点的不同,这些权重或偏置是不同的。所述广域分布式深度强化学习模块进一步包括:组合推荐节目子模块、调整权重子模块、发送需要计算的用户标签和接收计算出的节目子模块,以及向用户交互模块推送节目子模块。
具体地,所述组合推荐节目子模块的基本功能是对多种类型的分布式计算模块返回的节目进行权重组合,从而推荐出整个节目集;所述调整权重子模块的基本功能是根据用户对推荐的点击情况来调整推荐算法的推荐权重;所述发送需要计算的用户标签和接收计算出的节目子模块的基本功能是向不同类型的分布式计算模块发送需要计算推荐节目的用户标签,并接收不同类型的分布式计算模块发送的推荐节目集;所述向用户交互模块推送节目子模块的基本功能是将组合好的节目集向用户的客户端推荐。
所述分布式计算模块具有多种类型,每一种类型的分布式计算模块上运行有一种推荐算法,在本实施例中,所述多种类型的分布式计算模块进一步包括:运行协同过滤算法的第1类分布式计算模块、运行基于内容推荐算法的第2类分布式计算模块、运行基于社交网络推荐算法的第3类分布式计算模块,以及运行基于关联规则推荐算法的第4类分布式计算模块。
具体地,所述运行协同过滤算法的第1类分布式计算模块进一步包括:接收广域分布式深度强化学习模块发送的用户标签单元、向广域分布式深度强化学习模块发送计算出的Top-N节目集单元、向对应的广域分布式数据库请求所需的数据单元,以及运行协同过滤算法计算出推荐的Top-N节目集单元。
具体地,所述运行基于内容推荐算法的第2类分布式计算模块进一步包括:接收广域分布式深度强化学习模块发送的用户标签单元、向广域分布式深度强化学习模块发送计算出的Top-N节目集单元、向对应的广域分布式数据库请求所需的数据单元,以及运行基于内容推荐算法计算出推荐的Top-N节目集单元。
具体地,所述运行基于社交网络推荐算法的第3类分布式计算模块进一步包括:接收广域分布式深度强化学习模块发送的用户标签单元、向广域分布式深度强化学习模块发送计算出的Top-N节目集单元、向对应的广域分布式数据库请求所需的数据单元,以及运行基于社交网推荐算法计算出推荐的Top-N节目集单元。
具体地,所述运行基于关联规则推荐算法的第4类分布式计算模块进一步包括:接收广域分布式深度强化学习模块发送的用户标签单元、向广域分布式深度强化学习模块发送计算出的Top-N节目集单元、向对应的广域分布式数据库请求所需的数据单元,以及运行基于关联规则的推荐算法计算出推荐的Top-N节目集单元。
需要说明的是,上文所提到的四种推荐算法仅是现有技术中常用的四种推荐算法,在实际使用时并不局限于上述四种推荐算法。可采用上述四种推荐算法中的部分或全部,也可采用并未包含在上述四种推荐算法中的其他类型的推荐算法。在不对计算负载以及实时性造成太大影响的前提下,原则上推荐算法的类型越多越好,类型越多,效果越好。此外,某一种类型的分布式计算模块在系统中并不局限于一个,可以布置有多个。
所述用户交互模块的基本功能是获得用户的推荐请求,并将广域分布式深度强化学习模块推荐的节目以可视化的方式呈现给用户。
基于前述的用于广域网络的深度强化学习推荐系统,如图2所示,本发明还包括用于广域网络的深度强化学习推荐方法,所述方法包括:
步骤1:广域分布式深度强化学习模块收到用户的推荐请求后,向各分布式计算模块发送需要计算推荐节目的用户标签。
步骤2:分布式计算模块分别计算对应用户标签的推荐节目,并经由过滤之后,将结果返回给广域分布式深度强化学习模块。
其中,分布式计算模块主要包括4类,其总数设为M,广域分布式深度强化学习模块的总数设为J,第j个用户群以就近原则对应于第j个广域分布式深度强化学习模块,j=1,2,…,J。
具体地,第1类分布式计算模块向历史数据库请求并获得所需的用户评分数据,记为{i1:r1,i2:r2,,…,ik:rk};第1类分布式计算模块对接收的数据组成一个用户对节目的评分矩阵(rij),其中rij为用户i对节目j的评分,对于没有评分的节目用0表示;第1类分布式计算模块对评分矩阵(rij)进行奇异值分解(SVD),通过 构建一个只有对角元素的矩阵∑,并将∑中的元素从大到小排列,在某个奇异值的数目(r)之后,其他的奇异值都置为0,即保留r个重要特征,其余特征认为是噪声或冗余特征;第1类分布式计算模块对经过奇异值分解的简化矩阵运行基于协同过滤算法,通过用户对某个节目的评分公式 计算出top N节目集,其中,Rating(userId,j)是用户对未观看节目j的估计评分,Rating(userId,k)是用户对已看节目k的评分,similarity(j,k)是节目j和k间的欧氏距离相似度或皮尔逊相似度或余弦相似度;第1类分布式计算模块将计算出的top N节目集返回给广域分布式深度强化学习模块。
具体地,第2类分布式计算模块向历史数据库请求包含用户信息、节目信息、用户观看历史在内的数据;第2类分布式计算模块根据用户的信息和用户的观看历史计算出用户的兴趣图谱,记为{interest 1:value 1,interest 2:value 2,…,interest k:valuek};其中,interest代表感兴趣的内容;value代表感兴趣的程度;第2类分布式计算模块根据节目的信息和用户的兴趣图谱的比较,由 计算出最符合用户兴趣的top N节目集,其中totalValue(userId,j)是用户对节目j的总喜爱程度,α(i)表示节目j是否包含interest i,取值为(1,0),而value(i)则表示用户对interest i的喜爱程度;第2类分布式计算模块可以独立使用,也可以用于过滤其他模块(包括第1类分布式计算模块、第3类分布式计算模块以及第4类分布式计算模块)的计算结果,然后将计算出的top N节目集返回给广域分布式深度强化学习模块。
具体地,第3类分布式计算模块向包含用户的好友关系的数据库、用户观看历史的
数据库请求并获得所需数据;第3类分布式计算模块对用户的好友建立社交图谱,构建用户
关系矩阵(Relationij),其中的元素Relationij表示用户i和j间的关系亲密度,并通过包括
rooted pageRank在内的现有方法计算出身边的好友对用户的影响因子;第3类分布式计算
模块通过 得到好友关于
某个节目对用户的影响因子,其中totalValue(userId,j)是朋友对用户关于节目j的整体
影响值,influence(i,userId)表示朋友i对用户的影响值,IsWatched(i,j)=(1,0)表示用
户i是否看过节目j;如果totalValue(userId,j)大于用户的阈值,就向用户推荐该节目,并
计算出top N节目集;第3类分布式计算模块将计算出的top N节目集返回给广域分布式深
度强化学习模块。
具体地,第4类分布式计算模块向包含用户观看历史的数据库请求并获得所需数据,并组成一个观看历史数据集;第4类分布式计算模块运行关于关联规则的推荐算法,计算出信任度和支持度,然后根据信任度和支持度的高低,推荐用户没有观看过且最有可能观看的top N节目集;第4类分布式计算模块将计算出的top N节目集返回给广域分布式深度强化学习模块。
步骤3:根据用户群或用户标签不同,采用不同权重和偏置的广域分布式深度强化学习模块来组合和强化各个计算结果,向用户推荐节目。
其中,所述权重和偏置是通过学习获得的,根据用户群或用户标签的不同,以及时间和地点的不同,这些参数可能是不同的。
具体地,广域分布式深度强化学习模块接收到来自第1类分布式计算模块、第2类分布式计算模块、第3类分布式计算模块、第4类分布式计算模块返回的top N节目集,记为I1、I2、I3和I4,其中,第3类分布式计算模块可以经由第2类分布式计算模块的过滤后,得到I5={i|i∈I2and i∈I3},代替原来的I2和I3;广域分布式深度强化学习模块将来自所有分布式计算模块的节目集作为输入集合{xi},通过可学习的权重{wij}和偏置{bj}进行组合和强化,推荐出最终的节目集作为输出集合{yi}。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制。尽管参照实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,对本发明的技术方案进行修改或者等同替换,都不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。
Claims (9)
1.一种用于广域网络的深度强化学习推荐系统,其特征在于,包括:数据采集及预处理模块、分布式实时数据库、历史数据库、离线训练模块、在线训练模块、广域分布式深度强化学习模块、分布式计算模块以及用户交互模块;其中,
所述数据采集及预处理模块用于采集数据并对数据进行预处理;
所述分布式实时数据库用于存储在给定时效内的分布式数据;
所述历史数据库用于保存已经过了给定时效的数据;
所述离线训练模块根据历史数据,对所述广域分布式深度强化学习模块进行权重和偏置的调整;所述权重和偏置具体为所述分布式计算模块返回的推荐结果的权重和偏置;
所述在线训练模块根据分布式实时数据,对所述广域分布式深度强化学习模块进行具有地理分布式、时效性和个性化特征的权重和偏置的调整,根据用户的不同,以及时间和地点的不同,这些权重或偏置是不同的;
所述广域分布式深度强化学习模块根据用户的推荐请求,结合具有地理分布式、时效性和个性化特征的所述权重与偏置,为该用户生成推荐结果;
所述广域分布式深度强化学习模块,将来自所有分布式计算模块的推荐结果作为输入集合,通过可学习的权重和偏置进行组合和强化,推荐出最终的结果集作为输出集合;
所述广域分布式深度强化学习模块进一步包括:组合推荐结果子模块、调整权重子模块、发送需要计算的用户标签和接收计算出的推荐结果子模块,以及向用户交互模块推送推荐结果子模块;其中,
所述组合推荐结果子模块用于对所述分布式计算模块返回的推荐结果进行权重组合,从而推荐出整个结果集;所述调整权重子模块根据用户对推荐的关注情况来调整推荐算法的推荐权重;所述发送需要计算的用户标签和接收计算出的推荐结果子模块用于向不同类型的分布式计算模块发送需要计算推荐结果的用户标签,并接收不同类型的分布式计算模块发送的推荐结果集;所述向用户交互模块推送推荐结果子模块用于将组合好的结果集向用户的客户端推荐;
所述用户交互模块接收用户的推荐请求,并将所述广域分布式深度强化学习模块所生成的推荐结果呈现给用户。
2.根据权利要求1所述的用于广域网络的深度强化学习推荐系统,其特征在于,所述分布式计算模块有多种类型,多种类型的分布式计算模块进一步包括:运行协同过滤算法的第1类分布式计算模块、运行基于内容推荐算法的第2类分布式计算模块、运行基于社交网络推荐算法的第3类分布式计算模块,以及运行基于关联规则推荐算法的第4类分布式计算模块;其中,
所述运行协同过滤算法的第1类分布式计算模块进一步包括:接收广域分布式深度强化学习模块发送的用户标签单元、向广域分布式深度强化学习模块发送计算出的Top-N推荐结果集单元、向对应的广域分布式数据库请求所需的数据单元,以及运行协同过滤算法计算出推荐的Top-N推荐结果集单元;
所述运行基于内容推荐算法的第2类分布式计算模块进一步包括:接收广域分布式深度强化学习模块发送的用户标签单元、向广域分布式深度强化学习模块发送计算出的Top-N推荐结果集单元、向对应的广域分布式数据库请求所需的数据单元,以及运行基于内容推荐算法计算出推荐的Top-N推荐结果集单元;
所述运行基于社交网络推荐算法的第3类分布式计算模块进一步包括:接收广域分布式深度强化学习模块发送的用户标签单元、向广域分布式深度强化学习模块发送计算出的Top-N推荐结果集单元、向对应的广域分布式数据库请求所需的数据单元,以及运行基于社交网推荐算法计算出推荐的Top-N推荐结果集单元;
所述运行基于关联规则推荐算法的第4类分布式计算模块进一步包括:接收广域分布式深度强化学习模块发送的用户标签单元、向广域分布式深度强化学习模块发送计算出的Top-N推荐结果集单元、向对应的广域分布式数据库请求所需的数据单元,以及运行基于关联规则的推荐算法计算出推荐的Top-N推荐结果集单元。
3.根据权利要求2所述的用于广域网络的深度强化学习推荐系统,其特征在于,所述运行基于内容推荐算法的第2类分布式计算模块能够对所述运行协同过滤算法的第1类分布式计算模块、运行基于社交网络推荐算法的第3类分布式计算模块以及运行基于关联规则推荐算法的第4类分布式计算模块所生成的推荐结果进行过滤。
4.根据权利要求1所述的用于广域网络的深度强化学习推荐系统,其特征在于,所述离线训练模块以无监督训练的方法对权重和偏置进行调整。
5.根据权利要求1所述的用于广域网络的深度强化学习推荐系统,其特征在于,所述在线训练模块采用梯度下降法对权重和偏置进行调整。
6.基于权利要求1-5之一的用于广域网络的深度强化学习推荐系统所实现的深度强化学习推荐方法,包括:
步骤1)、所述广域分布式深度强化学习模块收到用户的推荐请求后,向各分布式计算模块发送需要计算推荐结果的用户标签;
步骤2)、所述分布式计算模块分别计算对应用户标签的推荐结果,将结果返回给广域分布式深度强化学习模块;
步骤3)、根据用户群或用户标签不同,采用不同权重和偏置的广域分布式深度强化学习模块来组合和强化各个计算结果,向用户生成最终的推荐结果;其中,所述权重和偏置通过学习获得,根据用户群或用户标签的不同,以及时间和地点的不同,这些参数可能是不同的;所述权重和偏置具体为所述分布式计算模块返回的推荐结果的权重和偏置;具体为:
广域分布式深度强化学习模块将来自所有分布式计算模块推荐结果作为输入集合,通过可学习的权重和偏置进行组合和强化,推荐出最终的结果集作为输出集合。
7.根据权利要求6所述的深度强化学习推荐方法,其特征在于,所述步骤2)进一步包括:
所述分布式计算模块主要包括4类,其总数设为M,广域分布式深度强化学习模块的总数设为J,第j个用户群以就近原则对应于第j个广域分布式深度强化学习模块,j=1,2,…,J;
第1类分布式计算模块向历史数据库请求并获得所需的用户评分数据,记为{i1:r1,i2:r2,…,ik:rk};第1类分布式计算模块对接收的数据组成一个用户对结果的评分矩阵(rij),其中rij为用户i对结果j的评分,对于没有评分的结果用0表示;第1类分布式计算模块对评分矩阵(rij)进行奇异值分解,通过构建一个只有对角元素的矩阵∑,并将∑中的元素从大到小排列,在某个奇异值的数目(r)之后,其他的奇异值都置为0,即保留r个重要特征,其余特征认为是噪声或冗余特征;第1类分布式计算模块对经过奇异值分解的简化矩阵运行基于协同过滤算法,通过用户对某个结果的评分公式 计算出top N结果集,其中,Rating(userId,j)是用户对未接触结果j的估计评分,Rating(userId,k)是用户对已接触结果k的评分,similarity(j,k)是结果j和k间的欧氏距离相似度或皮尔逊相似度或余弦相似度;第1类分布式计算模块将计算出的top N结果集返回给广域分布式深度强化学习模块;
第2类分布式计算模块向历史数据库请求包含用户信息、结果信息、用户接触历史在内的数据;第2类分布式计算模块根据用户的信息和用户的接触历史计算出用户的兴趣图谱,记为{interest1:value1,interest2:value2,…,interest k:value k};其中,interest代表感兴趣的内容;value代表感兴趣的程度;第2类分布式计算模块根据结果信息和用户的兴趣图谱的比较,由计算出最符合用户兴趣的top N结果集,其中totalValue(userId,j)是用户对结果j的总喜爱程度,α(i)表示结果j是否包含interest i,取值为(1,0),而value(i)则表示用户对interesti的喜爱程度;然后将计算出的top N结果集返回给所述广域分布式深度强化学习模块;
第3类分布式计算模块向包含用户的好友关系的数据库、用户观看历史的数据库请求并获得所需数据;第3类分布式计算模块对用户的好友建立社交图谱,构建用户关系矩阵Relationij,其中的元素Relationij表示用户i和j间的关系亲密度,计算出身边的好友对用户的影响因子;第3类分布式计算模块通过得到好友关于某个结果对用户的影响因子,其中totalValue(userId,j)是朋友对用户关于结果j的整体影响值,influence(i,userId)表示朋友i对用户的影响值,IsWatched(i,j)=(1,0)表示用户i是否接触过结果j;如果totalValue(userId,j)大于用户的阈值,就向用户推荐该结果,并计算出top N结果集;第3类分布式计算模块将计算出的top N结果集返回给广域分布式深度强化学习模块;
第4类分布式计算模块向包含用户接触历史的数据库请求并获得所需数据,并组成一个接触历史数据集;第4类分布式计算模块运行关于关联规则的推荐算法,计算出信任度和支持度,然后根据信任度和支持度的高低,推荐用户没有接触过且最有可能接触的top N结果集;第4类分布式计算模块将计算出的top N结果集返回给广域分布式深度强化学习模块。
8.根据权利要求7所述的深度强化学习推荐方法,其特征在于,所述步骤2)还包括:第2类分布式计算模块过滤所述第1类分布式计算模块、第3类分布式计算模块以及第4类分布式计算模块的计算结果。
9.根据权利要求7所述的深度强化学习推荐方法,其特征在于,所述步骤3)包括:所述广域分布式深度强化学习模块接收到来自第1类分布式计算模块、第2类分布式计算模块、第3类分布式计算模块、第4类分布式计算模块返回的top N结果集,记为I1、I2、I3和I4,广域分布式深度强化学习模块将来自所有分布式计算模块的节目集作为输入集合{xi},通过可学习的权重{wij}和偏置{bj}进行组合和强化,推荐出最终的结果集作为输出集合{yi}。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610005068.8A CN106940801B (zh) | 2016-01-04 | 2016-01-04 | 一种用于广域网络的深度强化学习推荐系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610005068.8A CN106940801B (zh) | 2016-01-04 | 2016-01-04 | 一种用于广域网络的深度强化学习推荐系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106940801A CN106940801A (zh) | 2017-07-11 |
CN106940801B true CN106940801B (zh) | 2019-10-22 |
Family
ID=59468476
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610005068.8A Expired - Fee Related CN106940801B (zh) | 2016-01-04 | 2016-01-04 | 一种用于广域网络的深度强化学习推荐系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106940801B (zh) |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107231436B (zh) | 2017-07-14 | 2021-02-02 | 网宿科技股份有限公司 | 一种进行业务调度的方法和装置 |
CN107515909B (zh) * | 2017-08-11 | 2020-05-19 | 深圳市云网拜特科技有限公司 | 一种视频推荐方法及系统 |
CN107491992B (zh) * | 2017-08-25 | 2020-12-25 | 哈尔滨工业大学(威海) | 一种基于云计算的智能服务推荐方法 |
CN107562881A (zh) * | 2017-09-04 | 2018-01-09 | 网易无尾熊(杭州)科技有限公司 | 推荐系统的干预方法、介质、系统及计算设备 |
CN107730173A (zh) * | 2017-10-13 | 2018-02-23 | 郑州云海信息技术有限公司 | 一种基于数据分析的小型超市自动采购方法及系统 |
CN109726808B (zh) * | 2017-10-27 | 2022-12-09 | 腾讯科技(深圳)有限公司 | 神经网络训练方法和装置、存储介质及电子装置 |
CN107665315B (zh) * | 2017-10-31 | 2020-12-15 | 上海应用技术大学 | 一种适用于Hadoop的基于角色与信任的访问控制方法 |
CN108093304A (zh) * | 2017-12-29 | 2018-05-29 | 东莞市纽格力信息技术有限公司 | 一种基于用户习惯的智能推荐方法和系统 |
CN108573021B (zh) * | 2018-02-24 | 2021-10-08 | 浙江金华伽利略数据科技有限公司 | 一种动态数据的综合价值评估方法 |
CN108550162B (zh) * | 2018-03-27 | 2020-02-07 | 清华大学 | 一种基于深度强化学习的物体检测方法 |
CN108595595B (zh) * | 2018-04-19 | 2020-06-16 | 北京理工大学 | 一种基于交互式差分进化计算的用户知识需求获取方法 |
CN108897990B (zh) * | 2018-06-06 | 2021-10-29 | 东北大学 | 面向大规模高维序列数据的交互特征并行选择方法 |
CN109034981A (zh) * | 2018-08-23 | 2018-12-18 | 上海海事大学 | 一种电商协同过滤推荐方法 |
CN109299372B (zh) * | 2018-10-18 | 2021-03-16 | 浙江正元智慧科技股份有限公司 | 一种基于协同过滤的智慧选课推荐方法 |
CN109543840B (zh) * | 2018-11-09 | 2023-01-10 | 北京理工大学 | 一种基于多维分类强化学习的动态推荐系统设计方法 |
CN109299327A (zh) * | 2018-11-16 | 2019-02-01 | 广州市百果园信息技术有限公司 | 视频推荐方法、装置、设备及存储介质 |
CN109451038A (zh) * | 2018-12-06 | 2019-03-08 | 北京达佳互联信息技术有限公司 | 一种信息推送方法、装置、服务器及计算机可读存储介质 |
CN109783817B (zh) * | 2019-01-15 | 2022-12-06 | 浙江大学城市学院 | 一种基于深度强化学习的文本语义相似计算模型 |
CN109903138B (zh) * | 2019-02-28 | 2021-05-18 | 华中科技大学 | 一种个性化商品推荐方法 |
CN110110225B (zh) * | 2019-04-17 | 2020-08-07 | 重庆第二师范学院 | 基于用户行为数据分析的在线教育推荐模型及构建方法 |
CN110362754B (zh) * | 2019-06-11 | 2022-04-29 | 浙江大学 | 基于强化学习的线上社交网络信息源头检测的方法 |
CN110825955B (zh) * | 2019-06-27 | 2024-06-25 | 安徽师范大学 | 基于位置服务的分布式差分隐私推荐方法 |
CN110351580B (zh) * | 2019-07-12 | 2021-07-13 | 四川长虹电器股份有限公司 | 基于非负矩阵分解的电视节目专题推荐方法及系统 |
CN110838024A (zh) * | 2019-10-16 | 2020-02-25 | 支付宝(杭州)信息技术有限公司 | 基于深度强化学习的信息推送方法及装置、设备 |
CN112929751B (zh) * | 2019-12-06 | 2022-11-18 | 北京达佳互联信息技术有限公司 | 用于确定动作执行的系统、方法及终端 |
CN111091200B (zh) * | 2019-12-20 | 2021-03-19 | 深圳前海微众银行股份有限公司 | 训练模型的更新方法、系统、智能设备、服务器及存储介质 |
CN111445291B (zh) * | 2020-04-01 | 2022-05-13 | 电子科技大学 | 一种为社交网络影响力最大化问题提供动态决策的方法 |
CN112312216B (zh) * | 2020-10-16 | 2022-08-16 | 山东海看新媒体研究院有限公司 | 基于模因理论的可追溯电视推荐方法及系统 |
CN114647773B (zh) * | 2020-12-17 | 2024-03-22 | 赣南师范大学 | 基于多元线性回归和第三方信用的改进协同过滤方法 |
CN112818146B (zh) * | 2021-01-26 | 2022-12-02 | 山西三友和智慧信息技术股份有限公司 | 一种基于产品图像风格的推荐方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6922680B2 (en) * | 2002-03-19 | 2005-07-26 | Koninklijke Philips Electronics N.V. | Method and apparatus for recommending an item of interest using a radial basis function to fuse a plurality of recommendation scores |
CN102663019B (zh) * | 2012-03-21 | 2017-06-20 | 北京英孚斯迈特信息技术有限公司 | 一种即时推荐系统 |
CN103353872B (zh) * | 2013-06-03 | 2017-03-01 | 大连理工大学 | 一种基于神经网络的教学资源个性化推荐方法 |
CN103345698A (zh) * | 2013-07-09 | 2013-10-09 | 焦点科技股份有限公司 | 电子商务环境下基于云计算处理模式的个性化推荐方法 |
US20160259857A1 (en) * | 2015-03-06 | 2016-09-08 | Microsoft Technology Licensing, Llc | User recommendation using a multi-view deep learning framework |
-
2016
- 2016-01-04 CN CN201610005068.8A patent/CN106940801B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN106940801A (zh) | 2017-07-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106940801B (zh) | 一种用于广域网络的深度强化学习推荐系统及方法 | |
Afoudi et al. | Hybrid recommendation system combined content-based filtering and collaborative prediction using artificial neural network | |
CN111008332B (zh) | 内容项推荐方法、装置、服务器以及存储介质 | |
Li et al. | Exploiting explicit and implicit feedback for personalized ranking | |
CN110175895B (zh) | 一种物品推荐方法及装置 | |
WO2021139415A1 (zh) | 数据处理方法、装置、计算机可读存储介质及电子设备 | |
CN104063481A (zh) | 一种基于用户实时兴趣向量的电影个性化推荐方法 | |
CN109543840A (zh) | 一种基于多维分类强化学习的动态推荐系统设计方法 | |
CN109670909A (zh) | 一种基于概率矩阵分解和特征融合的旅游产品推荐方法 | |
Liang et al. | Collaborative filtering based on information-theoretic co-clustering | |
CN109597899A (zh) | 媒体个性化推荐系统的优化方法 | |
Jagtap et al. | Homogenizing social networking with smart education by means of machine learning and Hadoop: A case study | |
Serrano | Intelligent recommender system for big data applications based on the random neural network | |
Ghorbani et al. | An introduction on separating gray-sheep users in personalized recommender systems using clustering solution | |
Salmani et al. | Hybrid movie recommendation system using machine learning | |
Guo et al. | Research on collaborative filtering personalized recommendation algorithm based on deep learning optimization | |
Cao et al. | A Recommendation Approach Based on Product Attribute Reviews: Improved Collaborative Filtering Considering the Sentiment Polarity. | |
Castillo et al. | ExUP recommendations: Inferring user's product metadata preferences from single-criterion rating systems | |
CN116186395A (zh) | 一种资源推荐、模型训练方法及装置、设备及存储介质 | |
Kaushik | An enhanced recommendation system using proposed efficient K means user-based clustering algorithm | |
Reshak et al. | Explicit feedback based movie recommendation system: A survey | |
Sidana | Recommendation systems for online advertising | |
Prajna et al. | Implementation of a hybrid recommendation system for Movies | |
Liu | A Study on Collaborative Filtering Recommendation Algorithms | |
Liang et al. | A Novel Tourist Attraction Recommendation System Based on Improved Visual Bayesian Personalized Ranking. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20191022 Termination date: 20220104 |
|
CF01 | Termination of patent right due to non-payment of annual fee |