CN110580314A - 基于图卷积神经网络和动态权重的课程推荐方法和系统 - Google Patents
基于图卷积神经网络和动态权重的课程推荐方法和系统 Download PDFInfo
- Publication number
- CN110580314A CN110580314A CN201910641347.7A CN201910641347A CN110580314A CN 110580314 A CN110580314 A CN 110580314A CN 201910641347 A CN201910641347 A CN 201910641347A CN 110580314 A CN110580314 A CN 110580314A
- Authority
- CN
- China
- Prior art keywords
- course
- user
- neural network
- graph convolution
- convolution neural
- 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.)
- Pending
Links
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 84
- 238000000034 method Methods 0.000 title claims abstract description 55
- 239000011159 matrix material Substances 0.000 claims abstract description 79
- 239000013598 vector Substances 0.000 claims abstract description 65
- 238000005065 mining Methods 0.000 claims abstract description 14
- 238000007781 pre-processing Methods 0.000 claims abstract description 13
- 238000012549 training Methods 0.000 claims description 10
- 238000004422 calculation algorithm Methods 0.000 claims description 8
- 238000006243 chemical reaction Methods 0.000 claims description 8
- 238000013135 deep learning Methods 0.000 abstract description 4
- 230000006870 function Effects 0.000 description 9
- 230000000694 effects Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000003066 decision tree Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 101150058765 BACE1 gene Proteins 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- MLYYVTUWGNIJIB-BXKDBHETSA-N cefazolin Chemical compound S1C(C)=NN=C1SCC1=C(C(O)=O)N2C(=O)[C@@H](NC(=O)CN3N=NN=C3)[C@H]2SC1 MLYYVTUWGNIJIB-BXKDBHETSA-N 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 238000013499 data model Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000009792 diffusion process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了基于图卷积神经网络和动态权重的课程推荐方法和系统,方法包括:获取用户对每一课程的评分值,并对评分值进行预处理,得到第一用户‑课程矩阵;根据第一用户‑课程矩阵,构建图卷积神经网络;根据图卷积神经网络生成用户嵌入向量和课程嵌入向量;根据用户嵌入向量和课程嵌入向量预测第一用户‑课程矩阵中未评分课程的评分值;将预测得到的评分值填入第一用户‑课程评分矩阵,得到第二用户‑课程评分矩阵;对第二用户‑课程评分矩阵进行序列模式挖掘,得到每个用户的推荐课程序列。本发明提高了预测速度且保证了预测结果的准确性,可广泛应用于深度学习技术领域。
Description
技术领域
本发明涉及深度学习技术领域,尤其是基于图卷积神经网络和动态权重的课程推荐方法和系统。
背景技术
当今社会,信息与通讯技术的进步以及普及,对教育环境产生了巨大的影响和发展,在线教育系统作为其中发展最迅猛、扩散速度最快之一的领域,广泛地影响着我们的生活。随着在线教育系统变得普及,系统上的学生和课程的数量正在快速增长,那么如何让学生更好地挑选更感兴趣的、更适应学生特点的、知识量足、知识面全面的课程,已成为当今广受关注的问题,即课程推荐问题、课程路径推荐问题。为了解决该问题,一个设计合理、效率保证且能够从大量的数据中根据学生的具体情况来推荐课程和课程路径的系统是必不可少的。
在此大前提下,各种课程和课程路径推荐系统层次不穷。现有技术的系统使用的方法大致可以这么分为两类:1)、基于历史数据的推荐方法;2)、基于内容的推荐方法。
其中,基于历史数据的推荐方法:通过对历史数据进行过滤、处理来直接对用户进行课程的推荐,但同时缺少了对实际情况的考虑,对数据量的要求也比较大。
基于内容的推荐方法:通过对用户的观察、测试、收集数据等方法把具体某个用户的特征保存在一个对应的数据集中,然后通过领域的方法和建模的方法来对用户进行课程的推荐,但其忽略了历史数据的价值,同时对噪声比较敏感。
有一些推荐系统同时考虑了基于历史数据的方法和基于内容的方法,但是其多数采用统计的方法或者只是把其中一者作为参考来设计系统,难以在数据量庞大时达到较好的效果,同时对数据的处理也相当困难。
还有一部分系统使用了大数据的方法来实现,但是其使用的方法和模型过于传统、简单,细节上存在着漏洞和不足,没有充分地利用大数据科学的优势,效果差强人意,因此也并不被广泛认可。
此外,上述推荐系统还面临两个困境:难以同时考虑全局信息和局部信息、难以对预测的结果根据实际情况进行调整。目前基于大数据技术的模型主要包括:BP神经网络模型(Back Propagation Neural Networks)和决策树模型(Decision Tree)。决策树模型运用概率的思想来净现值的期望值大于等于零的概率,但其难以解决系统的课程和用户的数量和性质会动态变化且变化速度大导致模型不精准的问题;BP神经网络运用深度学习的思想来实现目标值的预测,但其学习速度慢且输入的参数没有一个系统的理论方法,预测效果不稳定;图卷积神经网络(Graph Convolutional Network),作为一种深度学习方法,考虑数据之间的拓扑关系,结合用户和课程各自拥有的特征,有效地发掘其二者深层次的、重要的潜在关系,且训练速度比BP神经网络快,能有效地考虑全局信息和局部信息,并有效地解决此类推荐技术障碍。
发明内容
有鉴于此,本发明实施例提供一种速度快且效果显著的,基于图卷积神经网络和动态权重的课程推荐方法和系统。
第一方面,本发明实施例提供了一种基于图卷积神经网络和动态权重的课程推荐方法,包括以下步骤:
获取用户对每一课程的评分值,并对评分值进行预处理,得到第一用户-课程矩阵;
根据第一用户-课程矩阵,构建图卷积神经网络;
根据图卷积神经网络生成用户嵌入向量和课程嵌入向量;
根据用户嵌入向量和课程嵌入向量预测第一用户-课程矩阵中未评分课程的评分值;
将预测得到的评分值填入第一用户-课程评分矩阵,得到第二用户-课程评分矩阵;
对第二用户-课程评分矩阵进行序列模式挖掘,得到每个用户的推荐课程序列。
进一步,所述获取用户对每一课程的评分值,并对评分值进行预处理,得到第一用户-课程矩阵这一步骤,包括以下步骤:
获取每一用户对每一课程的评分值,其中,用户没有学习过的课程的评分值记为空值;
将评分值填入第一用户-课程矩阵;
获取用户的偏好信息。
进一步,所述根据第一用户-课程矩阵,构建图卷积神经网络这一步骤,包括以下步骤:
根据第一用户-课程矩阵,生成课程到用户的特定边信息向量;
根据特定边信息向量,对特定评分值对应的邻居进行求和;
根据求和结果,对每个节点的向量表示进行累加,得到图卷积神经网络的中间层输出。
进一步,所述根据图卷积神经网络生成用户嵌入向量和课程嵌入向量这一步骤,包括以下步骤:
对图卷积神经网络的中间层输出进行第一转换,得到用户嵌入向量;
对图卷积神经网络的中间层输出进行第二转换,得到课程嵌入向量。
进一步,所述根据用户嵌入向量和课程嵌入向量预测第一用户-课程矩阵中未评分课程的评分值这一步骤,包括以下步骤:
通过图卷积神经网络获取第一预测分量;
通过用户偏好信息获取第二预测分量;
通过KNN算法获取第三预测分量;
根据第一预测分量、第二预测分量和第三预测分量生成第一用户-课程矩阵中未评分课程的评分值。
进一步,所述通过图卷积神经网络获取第一预测分量这一步骤,包括以下步骤:
对图卷积神经网络进行训练,获取指定课程分类下所有用户均未学习的课程;
通过图卷积神经网络对所述课程进行逐一预测,得到所有用户对该课程的评分预测值。
进一步,所述通过KNN算法获取第三预测分量这一步骤,包括以下步骤:
根据用户嵌入向量和课程嵌入向量计算皮尔逊相关系数、余弦相似度、Jaccard系数、学习风格相似度和知识水平相似度;
根据皮尔逊相关系数、余弦相似度、Jaccard系数、学习风格相似度和知识水平相似度计算总相似度;
根据总相似度生成用户与用户之间的相似度信息。
进一步,所述对第二用户-课程评分矩阵进行序列模式挖掘,得到每个用户的推荐课程序列这一步骤,包括以下步骤:
根据第二用户-课程评分矩阵,生成待推荐用户对应的课程序列集合;
将课程序列集合中的所有课程作为候选序列;
计算课程序列集合中每一课程的支持度,并将支持度大于预设阈值的课程作为可选序列,生成项头表;
根据课程序列集合和项头表,构造FP树;
通过条件模式基挖掘FP树的频繁项集,生成推荐的课程序列。
第二方面,本发明实施例还提供了一种基于图卷积神经网络和动态权重的课程推荐系统,包括:
预处理模块,用于获取用户对每一课程的评分值,并对评分值进行预处理,得到第一用户-课程矩阵;
构建模块,用于根据第一用户-课程矩阵,构建图卷积神经网络;
图卷积层输出模块,用于根据图卷积神经网络生成用户嵌入向量和课程嵌入向量;
中间层输出模块,用于根据用户嵌入向量和课程嵌入向量预测第一用户-课程矩阵中未评分课程的评分值;
填充模块,用于将预测得到的评分值填入第一用户-课程评分矩阵,得到第二用户-课程评分矩阵;
推荐模块,用于对第二用户-课程评分矩阵进行序列模式挖掘,得到每个用户的推荐课程序列。
第三方面,本发明实施例还提供了一种基于图卷积神经网络和动态权重的课程推荐系统,包括:
至少一个处理器;
至少一个存储器,用于存储至少一个程序;
当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现所述的基于图卷积神经网络和动态权重的课程推荐方法。
上述本发明实施例中的一个或多个技术方案具有如下优点:本发明的实施例通过图卷积神经网络来对用户-课程矩阵进行处理,能够保持数据的完整性;本发明还对第一用户-课程评分矩阵进行填充,找到数据之间的拓扑关系,进而能够对图神经网络进行优化调整,提高了图神经网络的训练效果,对于数据量较大的在线教育系统的需求场景,本发明能够提高预测效率,且保证预测准确性,效果显著。
附图说明
图1为本发明实施例的整体步骤流程图;
图2为本发明实施例的图卷积神经网络构建示意图;
图3为本发明实施例的深度模型叠加流程示意图;
图4为本发明实施例的编码器训练示意图;
图5为本发明实施例的FP树构造示意图;
图6为本发明实施例的节点a的条件模式基的示意图。
具体实施方式
下面结合说明书附图和具体实施例对本发明作进一步解释和说明。对于本发明实施例中的步骤编号,其仅为了便于阐述说明而设置,对步骤之间的顺序不做任何限定,实施例中的各步骤的执行顺序均可根据本领域技术人员的理解来进行适应性调整。
参照图1,本发明实施例提供了一种基于图卷积神经网络和动态权重的课程推荐方法,包括以下步骤:
获取用户对每一课程的评分值,并对评分值进行预处理,得到第一用户-课程矩阵;
根据第一用户-课程矩阵,构建图卷积神经网络;
根据图卷积神经网络生成用户嵌入向量和课程嵌入向量;
根据用户嵌入向量和课程嵌入向量预测第一用户-课程矩阵中未评分课程的评分值;
将预测得到的评分值填入第一用户-课程评分矩阵,得到第二用户-课程评分矩阵;
对第二用户-课程评分矩阵进行序列模式挖掘,得到每个用户的推荐课程序列。
进一步作为优选的实施方式,所述获取用户对每一课程的评分值,并对评分值进行预处理,得到第一用户-课程矩阵这一步骤,包括以下步骤:
获取每一用户对每一课程的评分值,其中,用户没有学习过的课程的评分值记为空值;
将评分值填入第一用户-课程矩阵;
获取用户的偏好信息。
进一步作为优选的实施方式,所述根据第一用户-课程矩阵,构建图卷积神经网络这一步骤,包括以下步骤:
根据第一用户-课程矩阵,生成课程到用户的特定边信息向量;
根据特定边信息向量,对特定评分值对应的邻居进行求和;
根据求和结果,对每个节点的向量表示进行累加,得到图卷积神经网络的中间层输出。
进一步作为优选的实施方式,所述根据图卷积神经网络生成用户嵌入向量和课程嵌入向量这一步骤,包括以下步骤:
对图卷积神经网络的中间层输出进行第一转换,得到用户嵌入向量;
对图卷积神经网络的中间层输出进行第二转换,得到课程嵌入向量。
进一步作为优选的实施方式,所述根据用户嵌入向量和课程嵌入向量预测第一用户-课程矩阵中未评分课程的评分值这一步骤,包括以下步骤:
通过图卷积神经网络获取第一预测分量;
通过用户偏好信息获取第二预测分量;
通过KNN算法获取第三预测分量;
根据第一预测分量、第二预测分量和第三预测分量生成第一用户-课程矩阵中未评分课程的评分值。
进一步作为优选的实施方式,所述通过图卷积神经网络获取第一预测分量这一步骤,包括以下步骤:
对图卷积神经网络进行训练,获取指定课程分类下所有用户均未学习的课程;
通过图卷积神经网络对所述课程进行逐一预测,得到所有用户对该课程的评分预测值。
进一步作为优选的实施方式,所述通过KNN算法获取第三预测分量这一步骤,包括以下步骤:
根据用户嵌入向量和课程嵌入向量计算皮尔逊相关系数、余弦相似度、Jaccard系数、学习风格相似度和知识水平相似度;
根据皮尔逊相关系数、余弦相似度、Jaccard系数、学习风格相似度和知识水平相似度计算总相似度;
根据总相似度生成用户与用户之间的相似度信息。
进一步作为优选的实施方式,所述对第二用户-课程评分矩阵进行序列模式挖掘,得到每个用户的推荐课程序列这一步骤,包括以下步骤:
根据第二用户-课程评分矩阵,生成待推荐用户对应的课程序列集合;
将课程序列集合中的所有课程作为候选序列;
计算课程序列集合中每一课程的支持度,并将支持度大于预设阈值的课程作为可选序列,生成项头表;
根据课程序列集合和项头表,构造FP树;
通过条件模式基挖掘FP树的频繁项集,生成推荐的课程序列。
与图1的方法相对应,本发明实施例还提供了一种基于图卷积神经网络和动态权重的课程推荐系统,包括:
预处理模块,用于获取用户对每一课程的评分值,并对评分值进行预处理,得到第一用户-课程矩阵;
构建模块,用于根据第一用户-课程矩阵,构建图卷积神经网络;
图卷积层输出模块,用于根据图卷积神经网络生成用户嵌入向量和课程嵌入向量;
中间层输出模块,用于根据用户嵌入向量和课程嵌入向量预测第一用户-课程矩阵中未评分课程的评分值;
填充模块,用于将预测得到的评分值填入第一用户-课程评分矩阵,得到第二用户-课程评分矩阵;
推荐模块,用于对第二用户-课程评分矩阵进行序列模式挖掘,得到每个用户的推荐课程序列。
下面详细描述本发明基于图卷积神经网络和动态权重的课程推荐方法的具体实施步骤:
S1、根据在线教育系统的数据库得到某一个课程分类下(以下步骤默认为某一个课程分类下的前提来进行)的每一个用户对每一个课程的评分值,本事实例假定最低0分,最高5分,若用户没有上过某一门课程,则记为空值,将这一些数据填入到用户-课程矩阵当中,并视作一个图A。
对该矩阵做若干运算,得到的结果记录如下表1所示:
表1
接着,根据web日志提取信息得到学生的偏好信息,如表2所示:
表2
S2、建立图卷积神经网络模型:
S21、本实施例可以为每个评分级别分配一个特定的转换,从而形成从课程j到用户i的特定边信息向量uj→i,r,转换的形式如下:
S22、经过上述转换后,本实施例通过在特定评分r下对该节点所有此评分的邻居进行求和,然后将它们累加到单个向量表示中,从而在每个节点累积传入消息:
S23、再对中间层输出进行转换,得到最终得用户嵌入向量:
ui=σ(Whi)
S24、使用与步骤S23相同的方法得到课程嵌入向量:vi。
如图2所示,上述步骤S2中,本实施例将步骤S21-S22视为图卷积层的输出(GraphConvolution Layer),步骤S23-S24视为全连接层(Dense Layer),该模型即为一个图卷积神经网络。
另外,如图3所示,若需要深度的模型,可以根据实际情况在全连接层处通过不同种类的激活函数构成的全连接层进行叠加得到。
对于原始评分矩阵的重构,本实施例分别对每个评分r设计了一个参考概率来影响其某个评分的最终值,其表达如下:
则最终的矩阵填充值为:
S3、预测评分值
1)、课程评分的预测
a、由图卷积神经网络得到的预测分量
首先将上述神经网络进行训练,再找到具体一个课程分类下所有用户对应的没有学过的课程,逐一使用该神经网络进行预测,将用户u对课程j的评分预测值记为
该分量反应的是整体上用户和课程之间的潜在关系和主要关系。
b、根据学生偏好信息得到的预测分量:
该分量反映的是用户的偏好与课程之间的关系。
c、根据kNN得到的预测分量:
本实施例提出五种相似度计算方法:
皮尔逊相关系数:
余弦相似度:
Jaccard系数:
学习风格相似度:
知识水平相似度
总相似度:
根据上述各个式,通过KNN得到与学生u最接近的k个学生stui;
该分量反映的是学生与学生之间相似度和课程的关系。
d、由预测分量得到预测值
如图4所示,训练一个编码器(即一个堆叠的BP神经网络),使其能够从学生与课程的三个预测分量得到真实的预测分数。
S4、课程路径的推荐
本实施例为一个学生u推荐课程路径的具体算法如下。
S41、生成课程序列集合
从评分矩阵中找出u没有选过的且预测值大于3.5分的课程放进集合T中,在学生中寻找除了u以外、对集合T中的课程评过分且系统认定该课程其学习效果良好(通过课程测验、课程作业等方面衡量)的学生作为序列,序列的元素是其学过的按照时间顺序学的且属于T的课程,将全部序列整合到一个表中,如表3所示:
表3
序列号 | 序列元素 |
1 | abc |
2 | dbce |
3 | acef |
4 | bace |
5 | bacd |
S42、创建项头表
本实施例将每一课程作为候选序列的一部分,并通过计算其支持度,让支持度大于50%的候选序列作为第一轮的可选序列。
其中,支持度是指:该候选序列在总序列表中按序列元素顺序出现的次数占总序列表中序列数量的百分比。
例如:
候选序列 | 支持度 |
a | 0.8 |
b | 0.8 |
c | 1 |
d | 0.4 |
e | 0.6 |
f | 0.2 |
因为最小支持度是0.5,所以能看到课程d(支持度为04)、f(支持度为0.2)是不符合最小支持度的,不属于频繁项集,于是经过筛选以及支持度规范化表示后,课程的频繁项集就变成:
候选序列 | 支持度 |
a | 4 |
b | 4 |
c | 5 |
e | 3 |
本实施例的项头表包括了项目、支持度,以及该项在FP树中的链表,初始的时候链表为空:
课程 | 支持度 | 链表 |
a | 4 | |
b | 4 | |
c | 5 | |
e | 3 |
S43、构造FP树
再次扫描原始数据集(课程序列集),对于每一行,按照项头表中支持度从高到低顺序进行节点创建,如果有共用的祖先,则对应的公用祖先节点计数加1,如果不存在就进行创建,直到所有的数据都出现在FP树中。
如图5所示,本实施例的FP树构建流程如下:
因为c出现在所有的序列中,没有例外情况,所以只有一个节点。
因为b出现在c中的所有序列中,所以只有一个节点。
由原始数据集可得,在出现b的序列中,a出现的情况分为两种:
出现3次a,出现在有b的序列中
出现1次a,出现在没有b的序列中。
所以生成2个节点。
由原始数据集可得,e出现的情况分为三种:
出现1次e,出现在有c、b的序列中。
出现1次e,出现在有c、a的序列中。
出现1次e,出现在有c、b、a的序列中。
所以生产3个节点。
S44、通过条件模式基挖掘频繁项集
条件模式基,指的是以要挖掘的节点为叶子节点,自底向上求出FP子树,然后将FP子树的祖先节点设置为叶子节点之和。
以e的节点为例,从图5所示的FP树中可以得到一棵FP子树,将祖先节点的支持度记为叶子节点之和,及图5为e的条件模式基。
本实施例设置的条件模式基顶点的阈值为4,所以e的条件模式基为空。
同理,如图6所示,本实施例可以得到a的条件模式基。
因此,最终得到的推荐的课程序列为ca和cba。
本发明实施例还提供了一种基于图卷积神经网络和动态权重的课程推荐系统,包括:
至少一个处理器;
至少一个存储器,用于存储至少一个程序;
当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现所述的基于图卷积神经网络和动态权重的课程推荐方法。
上述方法实施例中的内容均适用于本系统实施例中,本系统实施例所具体实现的功能与上述方法实施例相同,并且达到的有益效果与上述方法实施例所达到的有益效果也相同。
此外,本发明实施例还提供了一种存储介质,其中存储有处理器可执行的指令,所述处理器可执行的指令在由处理器执行时用于执行所述的基于图卷积神经网络和动态权重的课程推荐方法。
综上所述,本发明基于图卷积神经网络和动态权重的课程推荐方法和系统具有以下优点:
1、本发明运用了大数据科学的特点,有针对性地对数据进行预处理,引入图卷积神经网络,该网络通过两种数据模型:用户-课程评分矩阵A、用户(或课程)特征矩阵X来训练模型,寻找用户与课程深层的拓扑关系,进而通过填充用户-课程评分矩阵中未评分的内容来重构用户-课程评分矩阵。之后根据此评分矩阵以及学生偏好、KNN算法(K近邻,k-NearestNeighbor)使用堆叠BP神经网络的方法来对模型预测的结果进行调整,配合数据挖掘科学来实现对学生推荐课程和课程路径。
2、本发明提出一种新的模型:图卷积神经网络(Graph Convolutional Network),该模型善于保持数据的完整性,对原本的待填充矩阵进行学习,找到数据之间的拓扑关系,在训练效果不佳时也能相应地对网络进行调整从而优化结果,且因为图节点同时更新的缘故,在数据量大的时候依然能在图训练上保持良好的效率,满足大数据背景下的在线教育系统的需求。
3、在预测用户对课程评分的过程中,本发明从三个角度(k近邻方法、图卷积神经网络方法、用户潜在倾向)预测了用户对课程的评分,由于在一个在线教育系统中,用户对课程的评分并不一直遵循某一种规律进行,往往是动态的、变化的,难以人为确定每一个预测分量各自的权重,因此在这里本发明通过引入一种机制:使用由图卷积层与堆叠BP层集成的神经网络动态调整这三个角度对整个评分的权重,来实现适应这种动态变化,使得预测值更加接近真实值。
在一些可选择的实施例中,在方框图中提到的功能/操作可以不按照操作示图提到的顺序发生。例如,取决于所涉及的功能/操作,连续示出的两个方框实际上可以被大体上同时地执行或所述方框有时能以相反顺序被执行。此外,在本发明的流程图中所呈现和描述的实施例以示例的方式被提供,目的在于提供对技术更全面的理解。所公开的方法不限于本文所呈现的操作和逻辑流程。可选择的实施例是可预期的,其中各种操作的顺序被改变以及其中被描述为较大操作的一部分的子操作被独立地执行。
此外,虽然在功能性模块的背景下描述了本发明并且采用方块图的形式举例说明,但应当理解的是,除非另有相反说明,所述的功能和/或特征中的一个或多个可以被集成在单个物理装置和/或软件模块中,或者一个或多个功能和/或特征可以在单独的物理装置或软件模块中被实现。还可以理解的是,有关每个模块的实际实现的详细讨论对于理解本发明是不必要的。更确切地说,考虑到在本文中公开的装置中各种功能模块的属性、功能和内部关系的情况下,在工程师的常规技术内将会了解该模块的实际实现。因此,本领域技术人员运用普通技术就能够在无需过度试验的情况下实现在权利要求书中所阐明的本发明。还可以理解的是,所公开的特定概念仅仅是说明性的,并不意在限制本发明的范围,本发明的范围由所附权利要求书及其等同方案的全部范围来决定。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。
计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上是对本发明的较佳实施进行了具体说明,但本发明并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做作出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。
Claims (10)
1.基于图卷积神经网络和动态权重的课程推荐方法,其特征在于:包括以下步骤:
获取用户对每一课程的评分值,并对评分值进行预处理,得到第一用户-课程矩阵;
根据第一用户-课程矩阵,构建图卷积神经网络;
根据图卷积神经网络生成用户嵌入向量和课程嵌入向量;
根据用户嵌入向量和课程嵌入向量预测第一用户-课程矩阵中未评分课程的评分值;
将预测得到的评分值填入第一用户-课程评分矩阵,得到第二用户-课程评分矩阵;
对第二用户-课程评分矩阵进行序列模式挖掘,得到每个用户的推荐课程序列。
2.根据权利要求1所述的基于图卷积神经网络和动态权重的课程推荐方法,其特征在于:所述获取用户对每一课程的评分值,并对评分值进行预处理,得到第一用户-课程矩阵这一步骤,包括以下步骤:
获取每一用户对每一课程的评分值,其中,用户没有学习过的课程的评分值记为空值;
将评分值填入第一用户-课程矩阵;
获取用户的偏好信息。
3.根据权利要求1所述的基于图卷积神经网络和动态权重的课程推荐方法,其特征在于:所述根据第一用户-课程矩阵,构建图卷积神经网络这一步骤,包括以下步骤:
根据第一用户-课程矩阵,生成课程到用户的特定边信息向量;
根据特定边信息向量,对特定评分值对应的邻居进行求和;
根据求和结果,对每个节点的向量表示进行累加,得到图卷积神经网络的中间层输出。
4.根据权利要求3所述的基于图卷积神经网络和动态权重的课程推荐方法,其特征在于:所述根据图卷积神经网络生成用户嵌入向量和课程嵌入向量这一步骤,包括以下步骤:
对图卷积神经网络的中间层输出进行第一转换,得到用户嵌入向量;
对图卷积神经网络的中间层输出进行第二转换,得到课程嵌入向量。
5.根据权利要求2所述的基于图卷积神经网络和动态权重的课程推荐方法,其特征在于:所述根据用户嵌入向量和课程嵌入向量预测第一用户-课程矩阵中未评分课程的评分值这一步骤,包括以下步骤:
通过图卷积神经网络获取第一预测分量;
通过用户偏好信息获取第二预测分量;
通过KNN算法获取第三预测分量;
根据第一预测分量、第二预测分量和第三预测分量生成第一用户-课程矩阵中未评分课程的评分值。
6.根据权利要求5所述的基于图卷积神经网络和动态权重的课程推荐方法,其特征在于:所述通过图卷积神经网络获取第一预测分量这一步骤,包括以下步骤:
对图卷积神经网络进行训练,获取指定课程分类下所有用户均未学习的课程;
通过图卷积神经网络对所述课程进行逐一预测,得到所有用户对该课程的评分预测值。
7.根据权利要求5所述的基于图卷积神经网络和动态权重的课程推荐方法,其特征在于:所述通过KNN算法获取第三预测分量这一步骤,包括以下步骤:
根据用户嵌入向量和课程嵌入向量计算皮尔逊相关系数、余弦相似度、Jaccard系数、学习风格相似度和知识水平相似度;
根据皮尔逊相关系数、余弦相似度、Jaccard系数、学习风格相似度和知识水平相似度计算总相似度;
根据总相似度生成用户与用户之间的相似度信息。
8.根据权利要求1所述的基于图卷积神经网络和动态权重的课程推荐方法,其特征在于:所述对第二用户-课程评分矩阵进行序列模式挖掘,得到每个用户的推荐课程序列这一步骤,包括以下步骤:
根据第二用户-课程评分矩阵,生成待推荐用户对应的课程序列集合;
将课程序列集合中的所有课程作为候选序列;
计算课程序列集合中每一课程的支持度,并将支持度大于预设阈值的课程作为可选序列,生成项头表;
根据课程序列集合和项头表,构造FP树;
通过条件模式基挖掘FP树的频繁项集,生成推荐的课程序列。
9.基于图卷积神经网络和动态权重的课程推荐系统,其特征在于:包括:
预处理模块,用于获取用户对每一课程的评分值,并对评分值进行预处理,得到第一用户-课程矩阵;
构建模块,用于根据第一用户-课程矩阵,构建图卷积神经网络;
图卷积层输出模块,用于根据图卷积神经网络生成用户嵌入向量和课程嵌入向量;
中间层输出模块,用于根据用户嵌入向量和课程嵌入向量预测第一用户-课程矩阵中未评分课程的评分值;
填充模块,用于将预测得到的评分值填入第一用户-课程评分矩阵,得到第二用户-课程评分矩阵;
推荐模块,用于对第二用户-课程评分矩阵进行序列模式挖掘,得到每个用户的推荐课程序列。
10.基于图卷积神经网络和动态权重的课程推荐系统,其特征在于:包括:
至少一个处理器;
至少一个存储器,用于存储至少一个程序;
当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现如权利要求1-8中任一项所述的基于图卷积神经网络和动态权重的课程推荐方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910641347.7A CN110580314A (zh) | 2019-07-16 | 2019-07-16 | 基于图卷积神经网络和动态权重的课程推荐方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910641347.7A CN110580314A (zh) | 2019-07-16 | 2019-07-16 | 基于图卷积神经网络和动态权重的课程推荐方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110580314A true CN110580314A (zh) | 2019-12-17 |
Family
ID=68811065
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910641347.7A Pending CN110580314A (zh) | 2019-07-16 | 2019-07-16 | 基于图卷积神经网络和动态权重的课程推荐方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110580314A (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111143705A (zh) * | 2019-12-26 | 2020-05-12 | 北京工业大学 | 一种基于图卷积网络的推荐方法 |
CN111179031A (zh) * | 2019-12-23 | 2020-05-19 | 第四范式(北京)技术有限公司 | 一种商品推荐模型的训练方法、装置及系统 |
CN111709819A (zh) * | 2020-01-20 | 2020-09-25 | 山东佳联电子商务有限公司 | 一种点拍网基于图神经网络的产权交易推荐系统及推荐方法 |
CN111783100A (zh) * | 2020-06-22 | 2020-10-16 | 哈尔滨工业大学 | 基于图卷积网络对代码图表示学习的源代码漏洞检测方法 |
CN111966889A (zh) * | 2020-05-20 | 2020-11-20 | 清华大学深圳国际研究生院 | 一种图嵌入向量的生成方法以及推荐网络模型的生成方法 |
CN112347352A (zh) * | 2020-11-04 | 2021-02-09 | 湖北工程学院 | 一种课程推荐方法、装置及存储介质 |
CN112657117A (zh) * | 2020-12-23 | 2021-04-16 | 浙江好习惯科技有限公司 | 跳绳课程推荐方法及装置 |
CN112948710A (zh) * | 2021-03-22 | 2021-06-11 | 华南师范大学 | 基于图神经网络的朋辈教育推荐方法、系统和存储介质 |
CN113254789A (zh) * | 2021-06-30 | 2021-08-13 | 中国气象局公共气象服务中心(国家预警信息发布中心) | 一种推送气象服务内容的方法及装置 |
WO2022066587A1 (en) * | 2020-09-22 | 2022-03-31 | Visa International Service Association | Graph learning-based system with updated vectors |
CN114637922A (zh) * | 2022-05-17 | 2022-06-17 | 浙江大学滨江研究院 | 基于神经网络集合操作的用户偏好推荐方法和装置 |
CN115187343A (zh) * | 2022-07-20 | 2022-10-14 | 山东省人工智能研究院 | 基于注意图卷积神经网络的多行为推荐方法 |
CN117688248A (zh) * | 2024-02-01 | 2024-03-12 | 安徽教育网络出版有限公司 | 一种基于卷积神经网络的在线课程推荐方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180330232A1 (en) * | 2017-05-10 | 2018-11-15 | Fmr Llc | Identification and classification of training needs from unstructured computer text using a neural network |
CN108874914A (zh) * | 2018-05-29 | 2018-11-23 | 吉林大学 | 一种基于图卷积与神经协同过滤的信息推荐方法 |
CN109299373A (zh) * | 2018-10-20 | 2019-02-01 | 上海交通大学 | 基于图卷积技术的推荐系统 |
CN109582864A (zh) * | 2018-11-19 | 2019-04-05 | 华南师范大学 | 基于大数据科学和动态权重调整的课程推荐方法及系统 |
-
2019
- 2019-07-16 CN CN201910641347.7A patent/CN110580314A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180330232A1 (en) * | 2017-05-10 | 2018-11-15 | Fmr Llc | Identification and classification of training needs from unstructured computer text using a neural network |
CN108874914A (zh) * | 2018-05-29 | 2018-11-23 | 吉林大学 | 一种基于图卷积与神经协同过滤的信息推荐方法 |
CN109299373A (zh) * | 2018-10-20 | 2019-02-01 | 上海交通大学 | 基于图卷积技术的推荐系统 |
CN109582864A (zh) * | 2018-11-19 | 2019-04-05 | 华南师范大学 | 基于大数据科学和动态权重调整的课程推荐方法及系统 |
Non-Patent Citations (3)
Title |
---|
刘沛文: ""基于用户行为特征的动态权重混合推荐算法"", 《计算机应用与软件》 * |
野马16: ""通过FP树生成频繁项集算法详解—机器学习"", 《CSDN,HTTPS://BLOG.CSDN.NET/HORACEHE16/ARTICLE/DETAILS/80072424》 * |
黄昌勤 等: ""学习云空间中基于情感分析的学习推荐研究"", 《中国电化教育》 * |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111179031A (zh) * | 2019-12-23 | 2020-05-19 | 第四范式(北京)技术有限公司 | 一种商品推荐模型的训练方法、装置及系统 |
CN111179031B (zh) * | 2019-12-23 | 2023-09-26 | 第四范式(北京)技术有限公司 | 一种商品推荐模型的训练方法、装置及系统 |
CN111143705B (zh) * | 2019-12-26 | 2021-05-28 | 北京工业大学 | 一种基于图卷积网络的推荐方法 |
CN111143705A (zh) * | 2019-12-26 | 2020-05-12 | 北京工业大学 | 一种基于图卷积网络的推荐方法 |
CN111709819A (zh) * | 2020-01-20 | 2020-09-25 | 山东佳联电子商务有限公司 | 一种点拍网基于图神经网络的产权交易推荐系统及推荐方法 |
CN111966889B (zh) * | 2020-05-20 | 2023-04-28 | 清华大学深圳国际研究生院 | 一种图嵌入向量的生成方法以及推荐网络模型的生成方法 |
CN111966889A (zh) * | 2020-05-20 | 2020-11-20 | 清华大学深圳国际研究生院 | 一种图嵌入向量的生成方法以及推荐网络模型的生成方法 |
CN111783100A (zh) * | 2020-06-22 | 2020-10-16 | 哈尔滨工业大学 | 基于图卷积网络对代码图表示学习的源代码漏洞检测方法 |
WO2022066587A1 (en) * | 2020-09-22 | 2022-03-31 | Visa International Service Association | Graph learning-based system with updated vectors |
CN112347352A (zh) * | 2020-11-04 | 2021-02-09 | 湖北工程学院 | 一种课程推荐方法、装置及存储介质 |
CN112657117A (zh) * | 2020-12-23 | 2021-04-16 | 浙江好习惯科技有限公司 | 跳绳课程推荐方法及装置 |
CN112657117B (zh) * | 2020-12-23 | 2022-02-11 | 浙江好习惯科技有限公司 | 跳绳课程推荐方法及装置 |
CN112948710A (zh) * | 2021-03-22 | 2021-06-11 | 华南师范大学 | 基于图神经网络的朋辈教育推荐方法、系统和存储介质 |
CN113254789A (zh) * | 2021-06-30 | 2021-08-13 | 中国气象局公共气象服务中心(国家预警信息发布中心) | 一种推送气象服务内容的方法及装置 |
CN114637922A (zh) * | 2022-05-17 | 2022-06-17 | 浙江大学滨江研究院 | 基于神经网络集合操作的用户偏好推荐方法和装置 |
CN115187343A (zh) * | 2022-07-20 | 2022-10-14 | 山东省人工智能研究院 | 基于注意图卷积神经网络的多行为推荐方法 |
CN115187343B (zh) * | 2022-07-20 | 2023-08-08 | 山东省人工智能研究院 | 基于注意图卷积神经网络的多行为推荐方法 |
CN117688248A (zh) * | 2024-02-01 | 2024-03-12 | 安徽教育网络出版有限公司 | 一种基于卷积神经网络的在线课程推荐方法及系统 |
CN117688248B (zh) * | 2024-02-01 | 2024-04-26 | 安徽教育网络出版有限公司 | 一种基于卷积神经网络的在线课程推荐方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110580314A (zh) | 基于图卷积神经网络和动态权重的课程推荐方法和系统 | |
CN110619081B (zh) | 一种基于交互图神经网络的新闻推送方法 | |
CN112529168B (zh) | 一种基于gcn的属性多层网络表示学习方法 | |
CN111797321B (zh) | 一种面向不同场景的个性化知识推荐方法及系统 | |
CN110781406B (zh) | 一种基于变分自动编码器的社交网络用户多属性推断方法 | |
CN112084427A (zh) | 一种基于图神经网络的兴趣点推荐方法 | |
CN110929515A (zh) | 基于协同注意力和自适应调整的阅读理解方法及系统 | |
CN111506814B (zh) | 一种基于变分自注意力网络的序列推荐方法 | |
CN109582864A (zh) | 基于大数据科学和动态权重调整的课程推荐方法及系统 | |
CN109785062A (zh) | 一种基于协同过滤模型的混合神经网络推荐系统 | |
CN115688913A (zh) | 一种云边端协同个性化联邦学习方法、系统、设备及介质 | |
CN109933720B (zh) | 一种基于用户兴趣自适应演化的动态推荐方法 | |
CN110674857A (zh) | 一种基于多尺度堆叠网络的广告点击分类方法 | |
Hu et al. | Learning peer recommendation using attention-driven CNN with interaction tripartite graph | |
Alhamdani et al. | Recommender system for global terrorist database based on deep learning | |
CN108921342A (zh) | 一种物流客户流失预测方法、介质和系统 | |
CN115982467A (zh) | 一种去偏化用户多兴趣推荐方法、装置及存储介质 | |
Parimi et al. | Community detection on large graph datasets for recommender systems | |
CN115600017A (zh) | 特征编码模型训练方法及装置、媒体对象推荐方法及装置 | |
CN112651487B (zh) | 基于图坍缩卷积神经网络的数据推荐方法、系统及介质 | |
CN112598089B (zh) | 图像样本的筛选方法、装置、设备及介质 | |
Abdollahzadeh et al. | An adaptive evolutionary algorithm for history-matching | |
CN115310004A (zh) | 融合项目时序关系的图神经协同过滤推荐方法 | |
CN112818196B (zh) | 基于电子学习平台的数据处理方法、设备、电子装置及存储介质 | |
CN115203557A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191217 |