CN109871504A - 一种基于异构信息网络与深度学习的课程推荐系统 - Google Patents
一种基于异构信息网络与深度学习的课程推荐系统 Download PDFInfo
- Publication number
- CN109871504A CN109871504A CN201910069467.4A CN201910069467A CN109871504A CN 109871504 A CN109871504 A CN 109871504A CN 201910069467 A CN201910069467 A CN 201910069467A CN 109871504 A CN109871504 A CN 109871504A
- Authority
- CN
- China
- Prior art keywords
- course
- node
- user
- network
- vector
- 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
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种基于异构信息网络与深度学习的课程推荐系统,包括:课程异构信息网络节点向量化模块、有效子网络提取模块和基于有效子网络的深度学习课程推荐模块;本发明提出的基于异构信息网络与深度学习的课程推荐系统在DeepFM深度学习模型的基础上,引入了异构信息网络中的有效子网络信息,并针对效子网络设计了单独的系统结构,使得课程推荐系统的推荐效果更佳精准。
Description
技术领域
本发明涉及一种基于异构信息网络与深度学习的课程推荐系统,属于计算机人工智能领域。
背景技术
随着互联网的普及和迅猛发展,如今互联网已经成为人们最重要的获取信息的渠道。互联网能打破时间与空间的局限,使人们能够更高效的获取信息,而在线教育就顺应了人们从互联网高效获取知识的需求,学习者足不出户便可接触自己感兴趣的教育资源。由于在线教育发展导致的课程数量激增,在线教育平台也面临着信息过载的情况。在选择课程时,学习者面对数量庞大琳琅满目的课程会感到不知所措。因此,如何帮助学习者选择恰当的课程开展个性化学习成为在线教育平台建设亟待解决的关键问题。
推荐系统是解决这一问题的一种十分有效的方式。目前在线课程领域的推荐系统主要还是使用传统的关联规则分析,协同过滤或矩阵分解的技术。如Baher等对比分析了四种关联规则分析算法在课程推荐上的推荐效果,最终发现先验关联规则算法的效果最优并将其应用于课程推荐系统中(参见文献:Baher S,Lobo L M R J.A Comparative Study ofAssociation Rule Algorithms for Course Recommender System in E-learning[J].International Journal of Computer Applications,2012,39(1):48-52.)陈永康等使用Apriori算法和协同过滤算法对真实的在线学习数据,网络招聘数据以及个人信息进行关联规则挖掘,并在此基础上构建了一个基于大数据的在线就业课程推荐系统(参见文献:陈永康,章美仁.基于大数据的在线就业课程推荐系统[J].电子商务,2017(4):72-73.)。Shah等提出了一种基于相似度正则化低秩矩阵分解技术的推荐算法,该算法能快速而稳定对预测用户-物品矩阵进行预测,并将其应用于在线课程的推荐系统。(参见文献:Shah D,Shah P,Banerjee A.Similarity based regularization for online matrix-factorization problem:An application to course recommender systems[C]TENCON2017IEEE Region 10Conference.IEEE,2017:1874-1879.)。徐江红等结合推荐算法中的矩阵分解技术,建立基于专业相关性、高值学分、实操性、教师评分和娱乐性为潜在因子的用户-潜在因子和课程-潜在因子的关系矩阵模型,最终结合余弦相似度算法,计算出用户受潜在因子的影响程度与课程对潜在因子贡献程度的相似度,并将相似度大的课程推荐给学生(参见文献:徐江红,赵婉芳,赵静雅.基于潜在因子算法的课程推荐系统研究[J].微处理机,2017,38(5):40-43.)。这些方法虽然可以取得不错的推荐效果,但还存在以下局限性:
(1)传统的课程推荐系统更多的只考虑对用户和课程的学习关系进行建模,很少引入其他的辅助信息来参与推荐,因此推荐效果还有一定的提升空间。
(2)在引入辅助信息来参与推荐时,传统的推荐系统只是简单的将辅助信息作为特征来引入,并没有相应的系统模块去针对辅助信息的形式来构建辅助信息与用户和课程之间的高阶关系。
针对上述问题,本发明提出了一种结合异构信息网络中的有效子网络与深度学习的课程推荐系统,将异构信息网络作为辅助信息引入到推荐系统中,并设计相应的系统模块来对异构信息网络中的有效子网络进行建模,最终推荐系统基于深度学习模型来学习异构信息网络与用户和课程间的高阶关系,并为用户推荐其可能感兴趣的课程。
发明内容
本发明的技术解决问题:解决传统推荐系统对辅助信息利用不足以及如何对辅助信息进行有效建模的问题,提供一种结合异构信息网络中的有效子网络与深度学习的课程推荐系统,从而保证能更精准的为用户推荐可能感兴趣的课程,提高用户的学习积极性。
本发明提出的基于异构信息网络与深度学习的课程推荐系统在DeepFM深度学习模型的基础上,引入了异构信息网络中的有效子网络信息,并针对效子网络设计了单独的系统结构,使得课程推荐系统的推荐效果更佳精准。
本发明的技术解决方案:基于异构信息网络与深度学习的课程推荐系统,如图1所示,包含如下三个系统模块:
1)课程异构信息网络节点向量化模块;
2)有效子网络提取模块;
3)基于有效子网络的深度学习课程推荐模块。
通过构建上述三个系统模块,可以完成本发明基于异构信息网络与深度学习的课程推荐系统,其中课程异构信息网络节点向量化模块以及有效子网络提取模块是本发明的基础部分,基于有效子网络的深度学习课程推荐模块是本发明的核心部分。
3.1课程异构信息网络节点向量化模块:
首先对异构信息网络及其相关的概念进行定义。
定义1异构信息网络:异构信息网络是一种有向图并且满足如下条件:
1.包含一个实体映射函数其中表示一个预先定义好的实体集合。
2.包含一个边映射函数其中表示一个预先定义好的边集合。
3.实体集合与边集合满足
一个简单的课程异构信息网络,如图2所示。在课程异构信息网络中,实体也称为节点,而边可以称为关系。在图2中包含了许多用户,课程,课程类型,学校等节点,同时也包含了节点间的关系。如用户与课程相连表示用户对课程的选学关系,课程与学校向量表示课程由该学校开设的从属关系等。
定义2元路径实例:给定异构信息网络中的两个实体和起始实体到终止实体元路径实例为在异构信息网络中从到所经过的路径。
定义3元路径实例类型:起始实体到终止实体所经过的实体所属类别的顺序(c1-c2-c3…-cn)。
在图2中,一个从用户1到课程1的元路径实例为(用户1-课程1-用户2-课程2)。而这个元路径实例所属的类型为(用户-课程-用户-课程)。
定义4用户-课程隐式反馈矩阵:给定用户集合以及课程集合 用户-课程隐式反馈矩阵中的每一个元素ru,i满足条件:当用户u学习过课程i,则ru,i=1,否则ru,i=0。
课程异构信息网络节点向量化模块的主要功能是:根据输入的异构信息网络数据以及用户-课程隐式反馈矩阵数据,将异构信息网络中的节点转化为向量,生成节点-向量查询表供有效子网络提取模块和基于有效子网络的深度学习课程推荐模块调用。
课程异构信息网络节点向量化模块实现的过程如下:
(1)元路径实例提取:基于用户-课程隐式反馈矩阵中值每一个为1的点rij,提取用户i到课程j在课程异构信息网络中的n个元路径实例,这些元路径实例必须属于提前选定的k种元路径实例类型。
(2)生成正反馈节点对:对于每一个元路径实例,将元路径实例中出现的节点两两组合成正反馈节点对,若元路径实例中包含m个节点,则可以产生m(m-1)/2个正反馈节点对。
(3)生成负反馈节点对:对于每一个元路径实例,将元路径实例中出现的每一个节点,与任意3(m-1)/2个元路径实例中未出现的节点进行两两组合生成负反馈节点对,若元路径实例中包含m个节点,则共可以产生3m(m-1)/2个负反馈节点对。
(4)初始化节点向量:为正反馈节点对与负反馈节点对中的每一个节点分别初始化一个d维的向量作为该节点的向量表示。
(5)最小化目标函数:使用正反馈节点对与负反馈节点对的向量来构造并最小化目标函数,在最小化目标的过程中不断更新节点的向量。所选取的目标函数如公式1所示:
公式1:
其中,Li代表对第i个节点的目标函数,vi表示节点i的向量表示,vj表示与节点i相对应的正反馈节点j,σ函数为sigmiod函数,N(vi)′表示由节点i产生的负反馈节点对中负反馈节点的集合,vt表示负反馈集合中节点t的向量表示,log表示以2为底的对数函数。
(6)输出节点-向量查询表:目标函数最小化完成后,所有将节点以及其向量表示构造成节点-向量查询表,并输出。
3.2有效子网络提取模块:
首先对相关概念进行如下定义:
定义5子网络:给定异构信息网络中的两个实体和起始实体到终止实体之间的子网络为包含到至少1个元路径实例中出现的实体和边的异构信息网络。
定义6子网络类型:若和之间的子网络内仅包含同一种类型的元路径实例,则此类型为该子网络类型。
有效子网络提取模块的功能是:基于输入的节点-向量查询表、异构信息网络数据以及用户-课程隐式反馈矩阵数据,处理并生成基于有效子网络的深度学习课程推荐模块所需的用户-课程正反馈样本、用户-课程正反馈有效子网络、用户-课程负反馈样本以及用户-课程负反馈有效子网络。
有效子网络提取模块实现的过程如下:
(1)生成用户-课程正反馈样本:基于用户-课程隐式反馈矩阵中每一个值为1的点rij,使用对应的用户i和课程j作为一条正反馈样本。
(2)生成用户-课程负反馈样本:基于用户-课程隐式反馈矩阵中每一个值为1的点rij,随机抽取5个rik为0的点对应的课程k,分别与用户i组合生成5条负反馈样本。
(3)生成用户-课程正反馈有效子网络与用户-课程负反馈有效子网络:对于所有用户-课程正反馈样本和用户-课程正反馈样本中的每一对用户i与课程j,产生k个课程异构信息网络中从用户i节点到课程j节点的不同类型的有效子网络。一般而言,提取,课程异构信息网络中用户i节点到课程j节点属于(c1-c2-c3…-cn)类型的有效子网络的过程为:
(3.1)元路径实例生成:(c1-c2-c3…-cn)类型元路径实例生成时,会遍历课程异构信息网络并获取用户i节点到课程j节点中所有属于(c1-c2-c3…-cn)类型的元路径实例。
(3.2)节点提取:为属于c2~cn-1类型的节点,分别提取每个类型中的m个节点,节点的提取采用相同的方法:对提取的元路径实例中相应位置属于该类型的所有节点,计算这些节点与头尾节点的相似度,并取相似度最高的前m个节点作为该类型的提取结果。其中,节点p与头尾节点的相似度计算公式如公式2所示:
公式2:
其中,simh,t,p表示节点p与头节点h和尾节点t的相似度,vh表示头节点的向量,vt表示尾节点的向量,vp表示节点p的向量。
(3.3)有效子网络生成:根据课程异构信息网络中的拓扑结构,提取出包含用户i节点,物品i节点,各类型节点的提取结果和相关的边的子网络作为有效子网络。
(4)输出用户-课程正反馈样本、用户-课程正反馈有效子网络、用户-课程负反馈样本以及用户-课程负反馈有效子网络。
3.3基于有效子网络的深度学习课程推荐模块:
与传统基于协同过滤模型的课程推荐系统和基于深度学习的课程推荐系统不同,本发明实现了一个可以使用有效子网络作为辅助信息的深度学习课程推荐系统。基于有效子网络的深度学习课程推荐模块是推荐系统中的核心模块。以下简称课程推荐模块。课程推荐模块基于DeepFM模型,并在此基础上为引入有效子网络设计了特殊的模型网络结构。
课程推荐模块会为每一个用户和课程学习学习相应的嵌入向量,并且会为输入模型的用户-课程对,使用特殊的注意力-卷积结构来学习到与该用户-课程对相关的多个不同类型有效子网络的向量表示,然后将用户嵌入向量、物品潜入向、多个有效子网络向量组合,并分别输入到FM学习层和Deep学习层去学习浅层和深层的不同表示,这样的方式将进一步的提高推荐效果。
课程推荐模块的功能是:以用户-课程正反馈样本、用户-课程正反馈有效子网络、用户-课程负反馈样本、用户-课程负反馈有效子网络以及节点-向量查询表作为输入,最终会训练一个深度学习课程推荐模型,此模型可以为每一个输入的用户-课程进行评分预估,并依据预估的评分为来为用户推荐其预估评分高的课程。
课程推荐模块实现的过程如下:
(1)初始化模块参数、用户隐向量和物品隐向量:根据用户-课程正反馈样本、用户-课程正反馈有效子网络、用户-课程负反馈样本、用户-课程负反馈有效子网络以及节点-向量查询表来初始化模块的参数以及用户和物品的隐向量。
(2)有效子网络向量化:将用户-课程正反馈有效子网络和用户-课程负反馈有效子网络中的所有的k种类型的有效子网络转化为向量。转化过程会经过如下步骤:
(2.1)获取层次向量表示:对于一个(c1-c2-c3…-cn)类型的有效子网络而言,将其看作是一个有c1-c2-c3…-cn层次的网络,每一层由属于该类别的节点组成。可以为c2~cn-1层计算相应的层次向量表示(c1层和cn层只有一个节点,可直接使用节点-向量查询表中相应的向量来表示)。cl层向量表示vcl可通过公式3计算获得:
公式3:
其中,vcl为cl层的向量表示,P(cl)′为cl层包含的节点,vp为节点p在节点-向量查询表中相应的向量,αu,p,i表示该向量的权重,而对于每一个αu,p,i,由公式4和公式5计算得到:
公式4:
公式5:
在公式4中,表示初始权重,函数f表示sigmoid函数,Wu,Wi,Wp均为权重向量,vu表示c1层的单个节点的节点向量,vi表示cn层的单个节点在节点-向量查询表中相应的向量,vp与公式3中的vp含义相同,b表示偏置项。
在公式5中,αu,p,i表示向量权重,与公式4中的含义相同,P(cl)′为cl层包含的节点,表示cl层包含的节点t的初始权重,函数exp(x)表示自然对数e的x次方。
(2.2)计算有效子网络向量:将步骤(2.1)中获取到的n个层次向量按最后一维拼接成矩阵Xp,在将Xp经过卷积变换,得到类别g子网络的向量表示vg。
(3)计算FM学习层的输出:将用户隐向量和物品隐向量与步骤(2)中得到的有效子网络向量作为输入,使用FM算法计算出M学习层的输出结果。
(4)计算Deep学习层的输出:将用户隐向量和物品隐向量与步骤(2)中得到的有效子网络向量作为输入,使用MLP多层感知机算法计算出Deep学习层的输出。
(5)最小化目标函数:将步骤(3)和步骤(4)的输出结合,得到模型的预测结果。使用预测结果来构造目标函数,并在最小化目标函数的过程中不断更新模块参数、用户隐向量和物品隐向量。在最小化目标函数时,选取的目标函数如公式6所示:
公式6:
其中,Lu,i表示对用户u和课程i的损失函数,为模型对正反馈样本中用户u和课程i的预测结果,N′为当前用户u和课程i对应的负反馈样本对中的课程集合,为模型对用户u和负反馈样本对中的课程集合内的课程t的预测结果,log表示以2为底的对数函数;
(6)生成课程推荐模型:目标函数最小化完成后,可生成课程推荐模型。课程推荐模型可以为每一个输入的用户-课程进行评分预估,并依据预估的评分为来为用户推荐其预估评分高的课程。
本发明与现有技术相比的优点在于:课程推荐系统可以有效解决在线教育领域中信息过载的问题,帮助学习者选择恰当的课程开展个性化学习。传统的课程推荐系统只考虑对用户和课程的学习关系进行建模,存在对辅助信息的利用不足以及无法对辅助信息进行有效建模的缺点。针对上述缺点,本发明提出了一种结合异构信息网络中的有效子网络与深度学习的课程推荐系统,系统包含课程异构信息网络节点向量化模块、有效子网络提取模块和基于有效子网络的深度学习课程推荐模块三大模块,在DeepFM深度学习模型的基础上,引入了异构信息网络中的有效子网络信息,并针对效子网络设计了单独的系统结构,使得课程推荐系统的推荐效果更佳精准。在实际应用中发现,基于异构信息网络与深度学习的课程推荐模型比传统的基于关联规则分析,协同过滤以及矩阵分解的推荐模型效果更好。
附图说明
图1基于异构信息网络与深度学习的课程推荐系统集成图;
图2课程异构信息网络示意图;
图3课程异构信息网络节点向量化模块实现过程;
图4有效子网络提取模块实现过程;
图5基于有效子网络的深度学习课程推荐模块实现过程。
具体实施方式
以下结合具体实例和附图对本发明进行详细说明。
如图1所示,基于异构信息网络与深度学习的课程推荐系统包含三个模块,分别是课程异构信息网络节点向量化模块、有效子网络提取模块、基于有效子网络的深度学习课程推荐模块。
整体实现过程如下:
(1)从数据库中读取用户信息数据、课程信息数据和用户-课程学习数据,并构造课程异构信息网络和用户-课程隐式反馈矩阵。其中,课程异构信息网络中包含四种类型的节点,分别是用户、学科学段、课程、课程类型。而对于用户-课程隐式反馈矩阵,若在用户-课程学习数据中用户i对课程j具有选课行为记录,则用户-课程隐式反馈矩阵中rij为1,否则为0。
(2)选定4种元路径实例类型作为元路径实例提取的依据,分别是:(用户-课程-用户-课程)、(用户-学科学段-用户-课程)、(用户-课程-课程类型-课程)、(用户-学科学段-课程类型-课程)。然后将课程异构信息网络和用户-课程隐式反馈矩阵作为课程异构信息网络节点向量化模块的输入,把课程异构信息网络中的节点转化为向量,生成节点-向量查询表。
(3)将节点-向量查询表、异构信息网络数据以及用户-课程隐式反馈矩阵数据输入有效子网络提取模块,处理并生成基于有效子网络的深度学习课程推荐模块所需的用户-课程正反馈样本、用户-课程正反馈有效子网络、用户-课程负反馈样本以及用户-课程负反馈有效子网络。
(4)以用户-课程正反馈样本、用户-课程正反馈有效子网络、用户-课程负反馈样本、用户-课程负反馈有效子网络以及节点-向量查询表作为基于有效子网络的深度学习课程推荐模块的输入,训练深度学习课程推荐模型。
(5)对于每一个用户,使用课程推荐模型,为该用户未学习过的所有课程进行评分预估,并将分数最高的前20门课程作为推荐结果。
上述步骤中各模块的具体实现过程如下:
5.1课程异构信息网络节点向量化模块
课程异构信息网络节点向量化模块实现过程如图3所示:
(1)元路径实例提取:对于用户-课程隐式反馈矩阵中值每一个为1的点rij,提取用户i到课程j在课程异构信息网络中的元路径实例,包括:20个(用户-课程-用户-课程)类型的元路径实例、20个(用户-学科学段-用户-课程)类型的元路径实例、20个(用户-课程-课程类型-课程)类型的元路径实例、20个(用户-学科学段-课程类型-课程)类型的元路径实例。
(2)生成正反馈节点对:对于每1个元路径实例,将元路径实例中出现的节点两两组合成正反馈节点对,每1个元路径实例将产生6个正反馈节点对。
(3)生成负反馈节点对:对于每1个元路径实例,将元路径实例中出现的每一个节点,与任意6个在元路径实例中未出现的节点进行两两组合生成负反馈节点对,每1个元路径实例将产生24个负反馈节点对。
(4)初始化节点向量:为正反馈节点对与负反馈节点对中的每一个节点分别初始化一个32维的向量作为该节点的向量表示。
(5)最小化目标函数:使用正反馈节点对与负反馈节点对的向量来构造并最小化目标函数。
(6)输出节点-向量查询表:目标函数最小化完成后,所有将节点以及其向量表示构造成节点-向量查询表,并输出。
5.2.有效子网络提取模块
有效子网络提取模块实现过程如图4所示:
(1)生成用户-课程正反馈样本:基于用户-课程隐式反馈矩阵中每一个值为1的点rij,使用对应的用户i和课程j作为一条正反馈样本。
(2)生成用户-课程负反馈样本:基于用户-课程隐式反馈矩阵中每一个值为1的点rij,随机抽取5个rik为0的点对应的课程k,分别与用户i组合生成5条负反馈样本。
(3)生成用户-课程正反馈有效子网络:对于所有用户-课程正反馈样本和中的每1对用户i与课程j,产生4个在课程异构信息网络中从用户i节点到课程j节点的有效子网络,包括1个(用户-课程-用户-课程)类型有效子网络、1个(用户-学科学段-用户-课程)类型有效子网络、1个(用户-课程-课程类型-课程)类型有效子网络、1个(用户-学科学段-课程类型-课程)类型有效子网络。以(用户-学科学段-课程类型-课程)类型有效子网络为例,提取该子网络的过程为:
(3.1)元路径实例生成:遍历课程异构信息网络并获取用户i节点到课程j节点中所有属于(用户-学科学段-课程类型-课程)类型的元路径实例。
(3.2)节点提取:分别提取1个用户节点,30个学科学段节点,30个-课程类型节点和1个课程节点。节点提取的方法相同,以提取学科学段节点为例,计算每一条(用户-学科学段-课程类型-课程)类型的元路径实例中学科学段节点与用户节点和课程节点的相似度,并将相似度最高的前30个节点作为提取结果。
(3.3)有效子网络构建:根据课程异构信息网络中的拓扑结构,提取出包含1个用户节点,1个物品节点,30个学科学段节点,30个课程类型节点和相关的边的子网络作为有效子网络。
(4)生成用户-课程负反馈有效子网络:对于所有用户-课程正负馈样本和中的每1对用户i与课程j,产生4个在课程异构信息网络中从用户i节点到课程j节点的有效子网络,包括1个(用户-课程-用户-课程)类型有效子网络、1个(用户-学科学段-用户-课程)类型有效子网络、1个(用户-课程-课程类型-课程)类型有效子网络、1个(用户-学科学段-课程类型-课程)类型有效子网络。提取过程如步骤(3.1)到步骤(3.3)所示。
(5)输出用户-课程正反馈样本、用户-课程正反馈有效子网络、用户-课程负反馈样本以及用户-课程负反馈有效子网络。
5.3.基于有效子网络的深度学习课程推荐模块
基于有效子网络的深度学习课程推荐模块实现过程如图5所示:
(1)初始化模块参数、用户隐向量和物品隐向量:根据用户-课程正反馈样本、用户-课程正反馈有效子网络、用户-课程负反馈样本、用户-课程负反馈有效子网络以及节点-向量查询表来初始化模块的参数以及用户和物品的隐向量。
(2)有效子网络向量化:将用户-课程正反馈有效子网络和用户-课程负反馈有效子网络中的所有的4种类型的有效子网络转化为向量。以(用户-学科学段-课程类型-课程)类型有效子网络为例,向量转化过程会经过如下步骤:
(2.1)获取层次向量表示:使用公式3,公式4和公式5,分别计算出用户层次向量表示、学科学段层次向量表示、课程类型层次向量表示、课程层次向量表示。
(2.2)计算有效子网络向量:将步骤(2.1)中获取到的用户层次向量表示、学科学段层次向量表示、课程类型层次向量表示、课程层次向量表示,按最后一维拼接成矩阵X,在将X经过卷积变换,得到(用户-学科学段-课程类型-课程)类型有效子网络的向量表示v。
(3)计算FM学习层的输出:将用户隐向量和物品隐向量与步骤(2)中得到的有效子网络向量作为输入,使用FM算法计算出M学习层的输出结果。
(4)计算Deep学习层的输出:将用户隐向量和物品隐向量与步骤(2)中得到的有效子网络向量作为输入,使用MLP多层感知机算法计算出Deep学习层的输出。
(5)最小化目标函数:将步骤(3)和步骤(4)的输出结合,得到模型的预测结果。使用预测结果来构造目标函数,并在最小化目标函数的过程中不断更新模块参数、用户隐向量和物品隐向量。
(6)生成课程推荐模型:目标函数最小化完成后,可生成课程推荐模型。课程推荐模型可以为每一个输入的用户-课程进行评分预估,并依据预估的评分为来为用户推荐其预估评分高的课程。
应用举例:本发明的系统及方法已成功应用于奥鹏在线教育平台的教师培训系统,为各省市参与培训的教师进行培训课程的推荐。在线AB测试中,基于异构信息网络与深度学习的课程推荐系统在AB测试中的各项指标均优于基于协同过滤,关联规则分析以及矩阵分解的课程推荐系统,证明了本发明系统及方法具有较好的推荐效果。
本发明未详细描述的部分属于本领域公知技术。
以上虽然描述了本发明的具体实施方法,但是本领域的技术人员应当理解,这些仅是举例说明,在不背离本发明原理和实现的前提下,可以对这些实施方案做出多种变更或修改,因此,本发明的保护范围由所附权利要求书限定。
Claims (6)
1.一种基于异构信息网络与深度学习的课程推荐系统,其特征在于,包括:课程异构信息网络节点向量化模块、有效子网络提取模块、基于有效子网络的深度学习课程推荐模块;
课程异构信息网络节点向量化模块:根据输入的异构信息网络数据以及用户-课程隐式反馈矩阵数据,将异构信息网络中的节点转化为向量,生成节点-向量查询表供有效子网络提取模块和基于有效子网络的深度学习课程推荐模块调用;
有效子网络提取模块:基于输入的节点-向量查询表、异构信息网络数据以及用户-课程隐式反馈矩阵数据,处理并生成基于有效子网络的深度学习课程推荐模块所需的用户-课程正反馈样本、用户-课程正反馈有效子网络、用户-课程负反馈样本以及用户-课程负反馈有效子网络;
基于有效子网络的深度学习课程推荐模块:以用户-课程正反馈样本、用户-课程正反馈有效子网络、用户-课程负反馈样本、用户-课程负反馈有效子网络以及节点-向量查询表作为输入,最终会训练一个深度学习课程推荐模型,所述模型为每一个输入的用户-课程进行评分预估,并依据预估的评分为来为用户推荐其预估评分高的课程。
2.根据权利要求1所述的基于异构信息网络与深度学习的课程推荐系统,其特征在于:所述课程异构信息网络节点向量化模块实现的过程如下:
(1)元路径实例提取:基于用户-课程隐式反馈矩阵中值每一个为1的点rij,提取用户i到课程j在课程异构信息网络中的n个元路径实例,这些元路径实例必须属于提前选定的k种元路径实例类型;
(2)生成正反馈节点对:对于每一个元路径实例,将元路径实例中出现的节点两两组合成正反馈节点对,若元路径实例中包含m个节点,则产生m(m-1)/2个正反馈节点对;
(3)生成负反馈节点对:对于每一个元路径实例,将元路径实例中出现的每一个节点,与任意3(m-1)/2个元路径实例中未出现的节点进行两两组合生成负反馈节点对,若元路径实例中包含m个节点,则共产生3m(m-1)/2个负反馈节点对;
(4)初始化节点向量:为正反馈节点对与负反馈节点对中的每一个节点分别初始化一个d维的向量作为该节点的向量表示;
(5)最小化目标函数:使用正反馈节点对与负反馈节点对的向量来构造并最小化目标函数,在最小化目标的过程中不断更新节点的向量,所选取的目标函数如公式1所示:
公式1:
其中,Li代表对第i个节点的目标函数,vi表示节点i的向量表示,vj表示与节点i相对应的正反馈节点j,σ函数为sigmiod函数,N(vi)′表示由节点i产生的负反馈节点对中负反馈节点的集合,vt表示负反馈集合中节点t的向量表示,log表示以2为底的对数函数;
(6)输出节点-向量查询表:目标函数最小化完成后,所有将节点以及其向量表示构造成节点-向量查询表,并输出。
3.根据权利要求1所述的基于异构信息网络与深度学习的课程推荐系统,其特征在于:所述有效子网络提取模块实现的过程如下:
(1)生成用户-课程正反馈样本:基于用户-课程隐式反馈矩阵中每一个值为1的点rij,使用对应的用户i和课程j作为一条正反馈样本;
(2)生成用户-课程负反馈样本:基于用户-课程隐式反馈矩阵中每一个值为1的点rij,随机抽取5个rik为0的点对应的课程k,分别与用户i组合生成5条负反馈样本;
(3)生成用户-课程正反馈有效子网络与用户-课程负反馈有效子网络:对于所有用户-课程正反馈样本和用户-课程正反馈样本中的每一对用户i与课程j,产生k个课程异构信息网络中从用户i节点到课程j节点的不同类型的有效子网络;
(4)输出用户-课程正反馈样本、用户-课程正反馈有效子网络、用户-课程负反馈样本以及用户-课程负反馈有效子网络。
4.根据权利要求3所述的基于异构信息网络与深度学习的课程推荐系统,其特征在于:所述步骤(3)中,产生k个课程异构信息网络中从用户i节点到课程j节点的不同类型的有效子网络的过程为:
(3.1)元路径实例生成:(c1-c2-c3…-cn)类型元路径实例生成时,会遍历课程异构信息网络并获取用户i节点到课程j节点中所有属于(c1-c2-c3…-cn)类型的元路径实例;
(3.2)节点提取:为属于c2~cn-1类型的节点,分别提取每个类型中的m个节点,节点的提取采用相同的方法:对提取的元路径实例中相应位置属于该类型的所有节点,计算这些节点与头尾节点的相似度,并取相似度最高的前m个节点作为该类型的提取结果;其中,节点p与头尾节点的相似度计算公式如公式2所示:
公式2:
其中,simh,t,p表示节点p与头节点h和尾节点t的相似度,vh表示头节点的向量,vt表示尾节点的向量,vp表示节点p的向量;
(3.3)有效子网络生成:根据课程异构信息网络中的拓扑结构,提取出包含用户i节点,物品i节点,各类型节点的提取结果和相关的边的子网络作为有效子网络。
5.根据权利要求1所述的基于异构信息网络与深度学习的课程推荐系统,其特征在于:所述基于有效子网络的深度学习课程推荐模块的实现过程如下:
(1)初始化模块参数、用户隐向量和物品隐向量:根据用户-课程正反馈样本、用户-课程正反馈有效子网络、用户-课程负反馈样本、用户-课程负反馈有效子网络以及节点-向量查询表来初始化模块的参数以及用户和物品的隐向量;
(2)有效子网络向量化:将用户-课程正反馈有效子网络和用户-课程负反馈有效子网络中的所有的k种类型的有效子网络转化为向量。
(3)计算FM学习层的输出:将用户隐向量和物品隐向量与步骤(2)中得到的有效子网络向量作为输入,使用FM算法计算出M学习层的输出结果;
(4)计算Deep学习层的输出:将用户隐向量和物品隐向量与步骤(2)中得到的有效子网络向量作为输入,使用MLP多层感知机算法计算出Deep学习层的输出;
(5)最小化目标函数:将步骤(3)和步骤(4)的输出结合,得到模型的预测结果,使用预测结果来构造目标函数,并在最小化目标函数的过程中不断更新模块参数、用户隐向量和物品隐向量,在最小化目标函数时,选取的目标函数如公式6所示:
公式6:
其中,Lu,i表示对用户u和课程i的损失函数,为模型对正反馈样本中用户u和课程i的预测结果,N′为当前用户u和课程i对应的负反馈样本对中的课程集合,为模型对用户u和负反馈样本对中的课程集合内的课程t的预测结果,log表示以2为底的对数函数;
(6)生成课程推荐模型:目标函数最小化完成后,生成课程推荐模型,课程推荐模型为每一个输入的用户-课程进行评分预估,并依据预估的评分为来为用户推荐其预估评分高的课程。
6.根据权利要求5所述的基于异构信息网络与深度学习的课程推荐系统,其特征在于:所述步骤(2)中有效子网络转化为向量步骤如下:
(2.1)获取层次向量表示:对于一个c1-c2-c3…-cn类型的有效子网络而言,将其看作是一个有c1-c2-c3…-cn层次的网络,每一层由属于该类别的节点组成,为c2~cn-1层计算相应的层次向量表示,c1层和cn层只有一个节点,直接使用节点-向量查询表中相应的向量来表示,cl层向量表示vcl通过公式3计算获得:
公式3:
其中,vcl为cl层的向量表示,P(cl)′为cl层包含的节点,vp为节点p在节点-向量查询表中相应的向量,αu,p,i表示该向量的权重,而对于每一个αu,p,i,由公式4和公式5计算得到:
公式4:
公式5:
在公式4中,表示初始权重,函数f表示sigmoid函数,Wu,Wi,Wp均为权重向量,vu表示c1层的单个节点的节点向量,vi表示cn层的单个节点在节点-向量查询表中相应的向量,vp与公式3中的vp含义相同,b表示偏置项;
在公式5中,αu,p,i表示向量权重,与公式4中的含义相同,P(cl)′为cl层包含的节点,表示cl层包含的节点t的初始权重,函数exp(x)表示自然对数e的x次方;
(2.2)计算有效子网络向量:将步骤(2.1)中获取到的n个层次向量按最后一维拼接成矩阵Xp,在将Xp经过卷积变换,得到类别g子网络的向量表示vg。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910069467.4A CN109871504B (zh) | 2019-01-24 | 2019-01-24 | 一种基于异构信息网络与深度学习的课程推荐系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910069467.4A CN109871504B (zh) | 2019-01-24 | 2019-01-24 | 一种基于异构信息网络与深度学习的课程推荐系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109871504A true CN109871504A (zh) | 2019-06-11 |
CN109871504B CN109871504B (zh) | 2020-09-29 |
Family
ID=66918123
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910069467.4A Active CN109871504B (zh) | 2019-01-24 | 2019-01-24 | 一种基于异构信息网络与深度学习的课程推荐系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109871504B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110598130A (zh) * | 2019-09-30 | 2019-12-20 | 重庆邮电大学 | 一种融合异构信息网络和深度学习的电影推荐方法 |
CN111400592A (zh) * | 2020-03-12 | 2020-07-10 | 山东师范大学 | 基于眼动技术和深度学习的个性化课程推荐方法及系统 |
CN112686736A (zh) * | 2021-01-09 | 2021-04-20 | 青岛科技大学 | 一种系统推荐方法 |
CN114780862A (zh) * | 2022-06-21 | 2022-07-22 | 达而观数据(成都)有限公司 | 一种用户兴趣向量提取方法、提取模型及计算机系统 |
CN115423546A (zh) * | 2022-07-25 | 2022-12-02 | 华中师范大学 | 一种基于多图神经网络的课程推荐方法 |
CN116910371A (zh) * | 2023-09-07 | 2023-10-20 | 南京大数据集团有限公司 | 一种基于深层关系的推荐方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160321582A1 (en) * | 2015-04-28 | 2016-11-03 | Red Marker Pty Ltd | Device, process and system for risk mitigation |
CN107145518A (zh) * | 2017-04-10 | 2017-09-08 | 同济大学 | 一种社交网络下基于深度学习的个性化推荐系统 |
CN108763493A (zh) * | 2018-05-30 | 2018-11-06 | 深圳市思迪信息技术股份有限公司 | 一种基于深度学习的推荐方法 |
US20180330232A1 (en) * | 2017-05-10 | 2018-11-15 | Fmr Llc | Identification and classification of training needs from unstructured computer text using a neural network |
CN109241366A (zh) * | 2018-07-18 | 2019-01-18 | 华南师范大学 | 一种基于多任务深度学习的混合推荐系统及其方法 |
CN109241440A (zh) * | 2018-09-29 | 2019-01-18 | 北京工业大学 | 一种基于深度学习的面向隐式反馈推荐方法 |
-
2019
- 2019-01-24 CN CN201910069467.4A patent/CN109871504B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160321582A1 (en) * | 2015-04-28 | 2016-11-03 | Red Marker Pty Ltd | Device, process and system for risk mitigation |
CN107145518A (zh) * | 2017-04-10 | 2017-09-08 | 同济大学 | 一种社交网络下基于深度学习的个性化推荐系统 |
US20180330232A1 (en) * | 2017-05-10 | 2018-11-15 | Fmr Llc | Identification and classification of training needs from unstructured computer text using a neural network |
CN108763493A (zh) * | 2018-05-30 | 2018-11-06 | 深圳市思迪信息技术股份有限公司 | 一种基于深度学习的推荐方法 |
CN109241366A (zh) * | 2018-07-18 | 2019-01-18 | 华南师范大学 | 一种基于多任务深度学习的混合推荐系统及其方法 |
CN109241440A (zh) * | 2018-09-29 | 2019-01-18 | 北京工业大学 | 一种基于深度学习的面向隐式反馈推荐方法 |
Non-Patent Citations (2)
Title |
---|
DHRUV SHAH 等: "Similarity based regularization for online matrix-factorization problem: An application to course recommender systems", 《TENCON 2017IEEE REGION 10 CONFERENCE》 * |
朱柳青: "基于深度学习的课程推荐与学习预测模型研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110598130A (zh) * | 2019-09-30 | 2019-12-20 | 重庆邮电大学 | 一种融合异构信息网络和深度学习的电影推荐方法 |
CN110598130B (zh) * | 2019-09-30 | 2022-06-24 | 重庆邮电大学 | 一种融合异构信息网络和深度学习的电影推荐方法 |
CN111400592A (zh) * | 2020-03-12 | 2020-07-10 | 山东师范大学 | 基于眼动技术和深度学习的个性化课程推荐方法及系统 |
CN111400592B (zh) * | 2020-03-12 | 2023-06-20 | 山东师范大学 | 基于眼动技术和深度学习的个性化课程推荐方法及系统 |
CN112686736A (zh) * | 2021-01-09 | 2021-04-20 | 青岛科技大学 | 一种系统推荐方法 |
CN112686736B (zh) * | 2021-01-09 | 2022-07-05 | 青岛科技大学 | 一种系统推荐方法 |
CN114780862A (zh) * | 2022-06-21 | 2022-07-22 | 达而观数据(成都)有限公司 | 一种用户兴趣向量提取方法、提取模型及计算机系统 |
CN114780862B (zh) * | 2022-06-21 | 2022-09-23 | 达而观数据(成都)有限公司 | 一种用户兴趣向量提取方法、提取模型及计算机系统 |
CN115423546A (zh) * | 2022-07-25 | 2022-12-02 | 华中师范大学 | 一种基于多图神经网络的课程推荐方法 |
CN116910371A (zh) * | 2023-09-07 | 2023-10-20 | 南京大数据集团有限公司 | 一种基于深层关系的推荐方法及系统 |
CN116910371B (zh) * | 2023-09-07 | 2024-01-23 | 南京大数据集团有限公司 | 一种基于深层关系的推荐方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN109871504B (zh) | 2020-09-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109871504A (zh) | 一种基于异构信息网络与深度学习的课程推荐系统 | |
CN110795619B (zh) | 一种融合多目标的教育资源个性化推荐系统及方法 | |
CN106779087A (zh) | 一种通用机器学习数据分析平台 | |
CN110221965A (zh) | 测试用例生成、测试方法、装置、设备及系统 | |
CN106776928A (zh) | 基于内存计算框架、融合社交环境及时空数据的位置推荐方法 | |
CN109271582A (zh) | 一种基于带属性元路径的个性化信息推荐方法 | |
CN106202377B (zh) | 一种基于随机梯度下降的在线协同排序方法 | |
CN109346063A (zh) | 一种语音数据增强方法 | |
CN110889434A (zh) | 一种基于活动的社交网络活动特征提取方法 | |
CN107562947A (zh) | 一种移动时空感知下动态即时推荐服务模型建立方法 | |
CN110377587A (zh) | 基于机器学习的迁移数据确定方法、装置、设备及介质 | |
CN109949174A (zh) | 一种异构社交网络用户实体锚链接识别方法 | |
CN109614480A (zh) | 一种基于生成式对抗网络的自动摘要的生成方法及装置 | |
CN107016566A (zh) | 基于本体的用户模型构建方法 | |
CN109948242A (zh) | 基于特征哈希的网络表示学习方法 | |
Rama et al. | A study on causal rule discovery with PC algorithm | |
CN110390058A (zh) | 考虑时效性的Web服务可信混合推荐方法 | |
CN109657048A (zh) | 一种应用于开源问答社区中回答者推荐方法 | |
CN111949894B (zh) | 一种基于多空间交互的协同过滤个性化推荐方法 | |
CN110008411A (zh) | 一种基于用户签到稀疏矩阵的深度学习兴趣点推荐方法 | |
CN114817552A (zh) | 一种习题关联关系处理方法、装置、设备及存储介质 | |
CN115438871A (zh) | 一种融合偏好消除流行度偏差的冰雪景点推荐方法及系统 | |
CN115840853A (zh) | 一种基于知识图谱和图注意力网络的课程推荐系统 | |
CN110489660A (zh) | 一种社交媒体公开数据的用户经济状况画像方法 | |
CN114565810A (zh) | 一种基于数据保护场景下的模型压缩方法及系统 |
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 |