CN117688248B - 一种基于卷积神经网络的在线课程推荐方法及系统 - Google Patents
一种基于卷积神经网络的在线课程推荐方法及系统 Download PDFInfo
- Publication number
- CN117688248B CN117688248B CN202410137076.2A CN202410137076A CN117688248B CN 117688248 B CN117688248 B CN 117688248B CN 202410137076 A CN202410137076 A CN 202410137076A CN 117688248 B CN117688248 B CN 117688248B
- Authority
- CN
- China
- Prior art keywords
- course
- neural network
- convolutional neural
- courses
- evaluation
- 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.)
- Active
Links
- 238000013527 convolutional neural network Methods 0.000 title claims abstract description 110
- 238000000034 method Methods 0.000 title claims abstract description 62
- 238000012549 training Methods 0.000 claims abstract description 40
- 239000011159 matrix material Substances 0.000 claims abstract description 31
- 238000012360 testing method Methods 0.000 claims abstract description 29
- 230000000694 effects Effects 0.000 claims abstract description 21
- 238000011176 pooling Methods 0.000 claims abstract description 13
- 238000011156 evaluation Methods 0.000 claims description 114
- 238000004422 calculation algorithm Methods 0.000 claims description 26
- 230000006870 function Effects 0.000 claims description 15
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 claims description 12
- 238000012545 processing Methods 0.000 claims description 12
- 238000013135 deep learning Methods 0.000 claims description 7
- 238000004364 calculation method Methods 0.000 claims description 6
- 230000001502 supplementing effect Effects 0.000 claims description 6
- 238000003064 k means clustering Methods 0.000 claims description 5
- 230000004913 activation Effects 0.000 claims description 3
- 238000012937 correction Methods 0.000 claims description 3
- 238000005259 measurement Methods 0.000 claims description 3
- 238000007781 pre-processing Methods 0.000 claims description 3
- 238000001914 filtration Methods 0.000 description 16
- 238000005516 engineering process Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
Landscapes
- Electrically Operated Instructional Devices (AREA)
Abstract
本发明适用于课程智能推荐领域,具体是一种基于卷积神经网络的在线课程推荐方法,包括以下步骤:利用训练集对卷积神经网络模型进行多轮迭代训练,利用测试集对卷积神经网络模型进行测试,基于MSE均方误差来检验卷积神经网络模型的预测效果并调整模型参数,直到模型收敛,得到所需的卷积神经网络模型;利用卷积神经网络模型向学员推荐课程。本发明还提供了一种基于卷积神经网络的在线课程推荐系统。本发明利用训练后的卷积神经网络模型向学员推荐课程,卷积神经网络模型包括嵌入层、卷积层、池化层和全连接层,可以有效提取学员特征矩阵与课程特征矩阵,将学员特征矩阵与课程特征矩阵之间进行全连接,获得与学员更为匹配的候选课程列表。
Description
技术领域
本发明属于课程智能推荐技术领域,尤其涉及一种基于卷积神经网络的在线课程推荐方法及系统。
背景技术
目前,比较火热的“互联网+教育”的形式解决了传统线下教育对时间和空间的局限性,“互联网+教育”的模式已经成为学习者热门的学习方式。
因此,在线教育平台和在线教育平台上的课程数量也出现了巨大幅度的增长,在线教育平台上也出现了非常多的课程,使用户难以高效地选择自己感兴趣的课程,为提升用户体验,在线课程推荐技术成为解决在线教育平台课程选择的有效方式之一。
现阶段的课程推荐方法比较主流的是使用基于协同过滤推荐算法来进行课程推荐,协同过滤算法还需要学员对课程进行打分;示例性的,基于协同过滤推荐算法可以是基于学员的协同过滤推荐算法,也可以是基于课程的协同过滤推荐算法;其中,基于学员的协同过滤推荐算法中,认为学员A和学员B相似是由于学员A喜欢的大多数课程学员B同样也喜欢;而基于课程的协同过滤推荐算法中,认为课程A和课程B有着很大的相似性是由于喜欢课程A的学员大都也喜欢课程B。
上述算法虽然比较简单,且能够在课程推荐学习中实现一定的课程推荐效果,但是基于协同过滤的推荐算法产生候选课程的方式,难以提取学员与课程中的文本特征,而且对于一些新录入平台的课程,其评价数据比较少,因此,由于数据的稀疏性与冷启动问题一直严重限制了其推荐效果,比较影响课程推荐结果。
发明内容
本发明实施例的目的在于提供一种基于卷积神经网络的在线课程推荐方法及系统,旨在解决上述背景技术中所提出的技术问题。
为实现上述目的,本发明提供了如下的技术方案。
在本发明的第一方面,提供了一种基于卷积神经网络的在线课程推荐方法,该推荐方法包括以下步骤:
获取评价文本数据集,将评价文本数据集划分为训练集train_j和测试集test_j;
搭建深度学习的卷积神经网络模型;
利用训练集train_j对卷积神经网络模型进行多轮迭代训练,利用测试集test_j对卷积神经网络模型进行测试,基于MSE均方误差来检验卷积神经网络模型的预测效果并调整模型参数,直到模型收敛,得到所需的卷积神经网络模型;
利用卷积神经网络模型向学员推荐课程;
判断推荐给学员的课程数量是否达到所需的推荐课程数量;
若是,将推荐给学员的课程推送到学员客户端进行展示;
若否,计算所需的推荐课程数量与推荐给学员的课程数量之间的差额数量,基于课程的补充推荐方法从课程库中选择对应差额数量的补充课程推荐给学员。
作为本发明进一步的方案,基于课程的补充推荐方法从课程库中选择对应差额数量的补充课程的步骤包括:
在课程库中选取未推荐给学员的候选课程;
提取每一个候选课程的评价数据集,计算评价数据集/>中评价文本的数量/>;
基于数量对所有的候选课程进行递增排序,按递增顺序选择与差额数量相等的候选课程作为补充课程推荐给学员。
作为本发明进一步的方案,获取评价文本数据集的步骤包括:
使用scrapy框架从课程学习社区平台上获取课程评价数据,对课程评价数据进行预处理,得到评价文本数据集,评价文本数据集包括同一学员对不同课程的评价数据集和不同学员对同一课程的评价数据集/>,其中,评价数据集/>表示为:
;
评价数据集表示为:
;
其中,,/>表示一条评价文本,/>表示评价文本中的一个词,都是正整数,/>表示每一条评价文本中的词数量,/>表示学员/>的评价数量;/>表示课程/>的评价数量。
作为本发明进一步的方案,搭建的卷积神经网络模型包括嵌入层、卷积层、池化层和全连接层;其中:
在嵌入层中,对评价数据集中的每个评价文本/>进行向量化处理,对于一句长度为/>的评价文本/>的向量化表示为/>;对评价数据集/>中的每个评价文本/>进行向量化处理,对于一句长度为/>的评价文本/>的向量化表示为;/>表示每个词进行词向量化后的维度;
在卷积层中,有多个卷积核,将嵌入层的文本向量通过卷积运算提取学员特征,将嵌入层的文本向量/>通过卷积运算提取课程特征/>;
在池化层中,采用最大值池化操作取最大值特征作为学员特征和课程特征/>,其中:/>,/>;
在全连接层中,计算表达全局特征的学员特征矩阵和课程特征矩阵/>,其中,,/>;其中,/>为卷积神经网络中全连接层的偏置变量,为全连接层的权重矩阵;
将学员特征矩阵与课程特征矩阵/>之间进行全连接,得到学员对课程的预测评价值,利用Top-N的方法生成候选课程列表/>。
作为本发明进一步的方案,还包括采用K-means聚类算法对候选课程列表进行聚类的操作,将候选课程列表/>划分到z个簇中,其中,K-means算法用于将具有高度相似性的课程划分到同一个簇中,课程之间的相似性采用欧式距离作为衡量的标准,欧式距离计算公式为:
,/>;
为了保证推荐列表中课程的多样性,推荐列表中的课程之间的相似性应当比较小,因此,在每个簇中计算簇中的每个课程到其他簇的中心点的距离和,计算公式如下:
;
其中,表示第/>个簇的中心点;
将每个簇中与其他簇的中心的距离之和为最大的课程作为每个簇的代表课程,由这些代表课程组成最终包含有z个课程的课程推荐列表。
作为本发明进一步的方案,卷积运算包括一个滤波器,滤波器应用于在s个评价文本的窗口产生一个新的特征/>,特征/>由文本/>通过/>生成,b是一个偏置项,/>,tanh是一个非线性双曲正切函数。
作为本发明进一步的方案,在全连接层中,还将连接时间权重和学员特征/>,对学员特征/>进行与时间权重/>的加权操作:/>,F表示学员的最终语义向量,G表示激活函数,/>表示全连接层的权值;/>表示全连接层的偏差函数。
作为本发明进一步的方案,基于MSE均方误差来检验卷积神经网络模型的效果并调整模型参数,直到模型收敛的步骤包括:
利用MSE均方误差计算学员对课程的预测评价和真实评价之差平方的期望值;
在期望值大于期望阈值时,利用优化器Adam调整模型参数继续训练卷积神经网络模型,直到期望值小于期望阈值时,停止对模型的迭代训练,进而更新参数;
其中,MSE均方误差的表达式为:
,其中,/>表示为学员u对课程k的真实评价,/>表示学员u对课程k的预测评价,/>是训练集中评价的数量。
作为本发明进一步的方案,利用优化器Adam调整模型参数的步骤包括:
利用优化器Adam来更新梯度,经过偏置校正后,根据每一次迭代学习效率确定准确范围,进而更新参数;其中:
利用Adam计算梯度估计:;
更新一阶矩估计:;
更新二阶矩估计:;
修正一阶矩的偏差:;
修正二阶矩的偏差:;
计算参数更新量:;
参数更新:;
其中,学习率的初始值为 0.001,/>和/>分别默认为 0.9 和 0.999;极小常数默认值为/>,作用是防止分母为 0;初始化时,一阶矩变量/>,二阶矩变量/>都为0。
在本发明的第二方面,提供了一种基于卷积神经网络的在线课程推荐系统,该推荐系统包括:
数据处理模块,用于获取评价文本数据集,将评价文本数据集划分为训练集train_j和测试集test_j;
模型搭建模块,用于搭建深度学习的卷积神经网络模型;
模型训练模块,用于利用训练集train_j对卷积神经网络模型进行多轮迭代训练,利用测试集test_j对卷积神经网络模型进行测试,基于MSE均方误差来检验卷积神经网络模型的预测效果并调整模型参数,直到模型收敛,得到所需的卷积神经网络模型;
课程推荐模块,用于利用卷积神经网络模型向学员推荐课程;
推荐结果判断模块,用于判断推荐给学员的课程数量是否达到所需的推荐课程数量;
课程推送模块,用于在推荐结果判断模块的判断结果为是的时候,将推荐给学员的课程推送到学员客户端进行展示;
课程补充模块,用于在推荐结果判断模块的判断结果为否的时候,计算所需的推荐课程数量与推荐给学员的课程数量之间的差额数量,基于课程的补充推荐方法从课程库中选择对应差额数量的补充课程推荐给学员。
与现有技术相比,本发明的基于卷积神经网络的在线课程推荐方法及系统的有益效果是:
第一,本发明的在线课程推荐方法,根据在线课程平台上的评价文本数据集,并利用训练集train_j对卷积神经网络模型进行多轮迭代训练,利用测试集test_j对卷积神经网络模型进行测试,基于MSE均方误差来检验卷积神经网络模型的预测效果并调整模型参数,直到模型收敛,得到所需的卷积神经网络模型,利用训练后的卷积神经网络模型向学员推荐课程,推荐效果好;
第二,本发明用于向学员推荐课程的卷积神经网络模型包括嵌入层、卷积层、池化层和全连接层,可以有效提取学员特征矩阵与课程特征矩阵,将学员特征矩阵与课程特征矩阵之间进行全连接,得到学员对课程的预测评价值,利用Top-N的方法生成候选课程列表,获得与学员更为匹配的候选课程列表;
第三,本发明的推荐方法还包括采用K-means聚类算法对候选课程列表进行簇的聚类操作,将每个簇中与其他簇的中心的距离之和为最大的课程作为每个簇的代表课程,由这些代表课程组成最终包含有z个课程的课程推荐列表,该课程推荐列表的课程更具多样性;
第四,在推荐给学员的课程数量没有达到所需的推荐课程数量时,计算所需的推荐课程数量与推荐给学员的课程数量之间的差额数量,基于课程的补充推荐方法从课程库中选择对应差额数量的补充课程推荐给学员;其中,选择在线课堂平台中评价数量少的课程补充到课程推荐列表中,能够使得更多没有热点的课程能够参与到课程推荐的活动中,使得没有热点的课程能够被获得更多的评价数据,减少课程数据的稀疏性与冷启动问题。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例。
图1为本发明卷积神经网络提取评价文本特征的结构示意图;
图2为本发明一种基于卷积神经网络的在线课程推荐方法的实现流程图;
图3为本发明在线课程推荐方法的一个子流程图;
图4为本发明在线课程推荐方法的另一个子流程图;
图5为本发明基于卷积神经网络的在线课程推荐系统的结构框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
在本发明的说明书和权利要求书及上述附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如101、102等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
下面将结合本发明示例性实施例中的附图,对本发明示例性实施例中的技术方案进行清楚、完整地描述,显然,所描述的示例性实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前,现阶段的课程推荐方法比较主流的是使用基于协同过滤推荐算法来进行课程推荐,协同过滤算法还需要学员对课程进行评价打分;具体的,基于协同过滤推荐算法可以是基于学员的协同过滤推荐算法,也可以是基于课程的协同过滤推荐算法;基于学员的协同过滤推荐算法中,认为学员A和学员B相似是由于学员A喜欢的大多数课程学员B同样也喜欢;而基于课程的协同过滤推荐算法中,认为课程A和课程B有着很大的相似性是由于喜欢课程A的学员大都也喜欢课程B。
但是基于协同过滤的推荐算法产生候选课程的方式,难以提取学员与课程中的文本特征,而且由于数据的稀疏性与冷启动问题一直严重限制了其推荐效果,比较影响课程推荐结果。
为解决上述问题,本发明提供了一种基于卷积神经网络的在线课程推荐方法及系统,方法包括以下步骤:利用训练集对卷积神经网络模型进行多轮迭代训练,利用测试集对卷积神经网络模型进行测试,基于MSE均方误差来检验卷积神经网络模型的预测效果并调整模型参数,直到模型收敛,得到所需的卷积神经网络模型;利用卷积神经网络模型向学员推荐课程。本发明还提供了一种基于卷积神经网络的在线课程推荐系统。本发明利用训练后的卷积神经网络模型向学员推荐课程,卷积神经网络模型包括嵌入层、卷积层、池化层和全连接层,可以有效提取学员特征矩阵与课程特征矩阵,将学员特征矩阵与课程特征矩阵之间进行全连接,获得与学员更为匹配的候选课程列表。
以下结合具体实施例对本发明的具体实现进行详细描述。
如图2所示,在本发明的一个实施例中,一种基于卷积神经网络的在线课程推荐方法,该推荐方法包括以下步骤:
步骤S101:获取评价文本数据集,将评价文本数据集划分为训练集train_j和测试集test_j;
具体的,本发明获取评价文本数据集的步骤包括:
使用scrapy框架的爬虫技术从课程学习社区平台上获取课程评价数据,该课程评价数据包括不同用户对同一个课程的评价数据,该数据可以反映出众多学员对该课程的印象和评价;相应的,上述的课程评价数据还包括同一个用户对不同课程的评价数据,这个评价数据反映了该用户的一些课程喜好;
进一步的,由于本发明采用评价文本来作为数据基础,然而,由于大多数的评价文本的语言格式比较杂乱不一,在评价文本中也会有一些无意义的字符等,因此,本发明还需要对课程评价数据进行预处理,得到评价文本数据集,所述的预处理主要包括以下的一些步骤,比如去除无意义字符的步骤、统一评价文本长度的步骤;其中,对于统一评价文本长度的过程,对于长度没有达到标准长度时,则采用末尾补零的形式,而对于长度超过标准长度的,使用keras中的文本处理方法来缩减长度,从而实现评价文本的长度能够统一成标准长度。
可以理解的是,本发明的评价文本数据集包括同一学员对不同课程的评价数据集/>和不同学员对同一课程的评价数据集/>,其中,评价数据集/>表示为:
;
评价数据集表示为:
;
其中,,/>表示一条评价文本,/>表示评价文本中的一个词,都是正整数,/>表示每一条评价文本中的词数量,/>表示学员/>的评价数量;/>表示课程/>的评价数量。
请继续参阅图1和图2,本发明的基于卷积神经网络的在线课程推荐方法还包括:
步骤S102:搭建深度学习的卷积神经网络模型,其中,搭建的卷积神经网络模型包括嵌入层、卷积层、池化层和全连接层;其中:
在嵌入层中,对评价数据集中的每个评价文本/>进行向量化处理,对于一句长度为/>的评价文本/>的向量化表示为/>;
对评价数据集中的每个评价文本/>进行向量化处理,对于一句长度为/>的评价文本/>的向量化表示为/>;/>表示每个词进行词向量化后的维度;
在卷积层中,有多个卷积核,一方面将嵌入层的文本向量通过卷积运算提取学员特征/>,另一方面,将嵌入层的文本向量/>通过卷积运算提取课程特征/>;
在池化层中,采用最大值池化操作取最大值特征作为学员特征和课程特征/>,其中:/>,/>,其中,/>表示第m个学员特征;/>表示第个课程特征;
进一步的,在全连接层中,计算表达全局特征的学员特征矩阵和课程特征矩阵/>,其中,/>,/>;其中,/>为卷积神经网络中全连接层的偏置变量,/>为全连接层的权重矩阵;
将学员特征矩阵与课程特征矩阵/>之间进行全连接,得到学员对课程的预测评价值,进一步利用Top-N的方法生成候选课程列表/>;
本发明用于向学员推荐课程的卷积神经网络模型包括嵌入层、卷积层、池化层和全连接层,可以有效提取学员特征矩阵与课程特征矩阵,将学员特征矩阵与课程特征矩阵之间进行全连接,得到学员对课程的预测评价值,利用Top-N的方法生成候选课程列表,获得与学员更为匹配的候选课程列表。
进一步的,考虑到学员对于一些课程的喜爱程度也会随时间的变化而变化,因此,本发明引入了时间权重,具体的,在本发明的全连接层中,本发明还将连接时间权重和学员特征/>,对学员特征/>进行与时间权重/>的加权操作:
,其中,F表示学员的最终语义向量,G表示激活函数,/>表示全连接层的权值;/>表示全连接层的偏差函数。
本发明通过引入了时间权重,能够更准确的得到学员评价数据中的真实意图表示,得到较为准确的学员对课程的偏好数据,提高课程推荐的准确度。
请继续参阅图2,本发明的基于卷积神经网络的在线课程推荐方法还包括:
步骤S103:利用训练集train_j对卷积神经网络模型进行多轮迭代训练,利用测试集test_j对卷积神经网络模型进行测试,基于MSE均方误差来检验卷积神经网络模型的预测效果并调整模型参数,直到模型收敛,得到所需的卷积神经网络模型;
步骤S104:利用卷积神经网络模型向学员推荐课程;
本发明的在线课程推荐方法,根据在线课程平台上的评价文本数据集,并利用训练集train_j对卷积神经网络模型进行多轮迭代训练,利用测试集test_j对卷积神经网络模型进行测试,基于MSE均方误差来检验卷积神经网络模型的预测效果并调整模型参数,直到模型收敛,得到所需的卷积神经网络模型,利用训练后的卷积神经网络模型向学员推荐课程,推荐效果好。
步骤S105:判断推荐给学员的课程数量是否达到所需的推荐课程数量;
若是,执行步骤S106:将推荐给学员的课程推送到学员客户端进行展示;
若否,执行步骤S107:计算所需的推荐课程数量与推荐给学员的课程数量之间的差额数量,基于课程的补充推荐方法从课程库中选择对应差额数量的补充课程推荐给学员。
进一步的,请继续参阅图3,在本发明实施例中,基于课程的补充推荐方法从课程库中选择对应差额数量的补充课程的步骤包括:
步骤S1071:在课程库中选取未推荐给学员的候选课程;
步骤S1072:提取每一个候选课程的评价数据集,计算评价数据集/>中评价文本的数量/>;
步骤S1073:基于数量对所有的候选课程进行递增排序,按递增顺序选择与差额数量相等的候选课程作为补充课程推荐给学员。
本发明在推荐给学员的课程数量没有达到所需的推荐课程数量时,计算所需的推荐课程数量与推荐给学员的课程数量之间的差额数量,基于课程的补充推荐方法从课程库中选择对应差额数量的补充课程推荐给学员;其中,选择在线课堂平台中评价数量少的课程补充到课程推荐列表中,能够使得更多没有热点的课程能够参与到课程推荐的活动中,使得没有热点的课程能够被获得更多的评价数据,减少课程数据的稀疏性与冷启动问题。
进一步的,本发明在利用Top-N的方法生成候选课程列表之后,还采用了K-means聚类算法对候选课程列表/>进行聚类的操作,将候选课程列表/>划分到z个簇中,其中,K-means算法用于将具有高度相似性的课程划分到同一个簇中,课程之间的相似性采用欧式距离作为衡量的标准,欧式距离计算公式为:
,/>;
为了保证推荐列表中课程的多样性,推荐列表中的课程之间的相似性应当比较小,因此,在每个簇中计算簇中的每个课程到其他簇的中心点的距离和,计算公式如下:
;
表示第/>个簇的中心点;
将每个簇中与其他簇的中心的距离之和为最大的课程作为每个簇的代表课程,由这些代表课程组成最终包含有z个课程的课程推荐列表。
本发明的推荐方法还包括采用K-means聚类算法对候选课程列表进行簇的聚类操作,将每个簇中与其他簇的中心的距离之和为最大的课程作为每个簇的代表课程,由这些代表课程组成最终包含有z个课程的课程推荐列表,该课程推荐列表的课程更具多样性。
作为优选,在本发明的卷积运算包括一个滤波器,滤波器应用于在s个评价文本的窗口产生一个新的特征/>,特征/>由文本/>通过/>生成,b是一个偏置项,/>,tanh是一个非线性双曲正切函数。
请参阅图4,在本发明实施例中,本发明基于MSE均方误差来检验卷积神经网络模型的效果并调整模型参数,直到模型收敛的步骤包括:
步骤S1031:利用MSE均方误差计算学员对课程的预测评价和真实评价之差平方的期望值;
步骤S1032:在期望值大于期望阈值时,利用优化器Adam调整模型参数继续训练卷积神经网络模型,直到期望值小于期望阈值时,停止对模型的迭代训练,进而更新参数;
其中,MSE均方误差的表达式为:
,其中,/>表示为学员u对课程k的真实评价,/>表示学员u对课程k的预测评价,/>是训练集中评价的数量。
另外,在步骤S1032利用优化器Adam调整模型参数的步骤中,利用优化器Adam来更新梯度,经过偏置校正后,根据每一次迭代学习效率确定准确范围,进而更新参数;其中:
利用Adam计算梯度估计:;
更新一阶矩估计:;
更新二阶矩估计:;
修正一阶矩的偏差:;
修正二阶矩的偏差:;
计算参数更新量:;
参数更新:;
其中,学习率的初始值为 0.001,/>和/>分别默认为 0.9 和 0.999;极小常数默认值为/>,作用是防止分母为 0;初始化时,一阶矩变量/>,二阶矩变量/>都为0。
如图5所示,在本发明提供的另一个实施例中,提供了一种基于卷积神经网络的在线课程推荐系统,该推荐系统包括:
数据处理模块201,用于获取评价文本数据集,将评价文本数据集划分为训练集train_j和测试集test_j;
模型搭建模块202,用于搭建深度学习的卷积神经网络模型;
模型训练模块203,用于利用训练集train_j对卷积神经网络模型进行多轮迭代训练,利用测试集test_j对卷积神经网络模型进行测试,基于MSE均方误差来检验卷积神经网络模型的预测效果并调整模型参数,直到模型收敛,得到所需的卷积神经网络模型;
课程推荐模块204,用于利用卷积神经网络模型向学员推荐课程;
推荐结果判断模块205,用于判断推荐给学员的课程数量是否达到所需的推荐课程数量;
课程推送模块206,用于在推荐结果判断模块205的判断结果为是的时候,将推荐给学员的课程推送到学员客户端进行展示;
课程补充模块207,用于在推荐结果判断模块205的判断结果为否的时候,计算所需的推荐课程数量与推荐给学员的课程数量之间的差额数量,基于课程的补充推荐方法从课程库中选择对应差额数量的补充课程推荐给学员。
本发明的基于卷积神经网络的在线课程推荐系统在智慧在线教育领域具有广泛的应用前景,能够显著提升在线教育平台的课程推荐效果,为智慧教育提供了更高水平的支持。
如图5所示,在本发明实施例的又一个实施例中,还提供了一种计算机设备,包括存储器和处理器,该存储器中存储有计算机程序,该计算机程序被该处理器执行时实现上述实施例提供的基于卷积神经网络的在线课程推荐方法;
该推荐方法包括以下步骤:
获取评价文本数据集,将评价文本数据集划分为训练集train_j和测试集test_j;
搭建深度学习的卷积神经网络模型;
利用训练集train_j对卷积神经网络模型进行多轮迭代训练,利用测试集test_j对卷积神经网络模型进行测试,基于MSE均方误差来检验卷积神经网络模型的预测效果并调整模型参数,直到模型收敛,得到所需的卷积神经网络模型;
利用卷积神经网络模型向学员推荐课程;
判断推荐给学员的课程数量是否达到所需的推荐课程数量;
若是,将推荐给学员的课程推送到学员客户端进行展示;
若否,计算所需的推荐课程数量与推荐给学员的课程数量之间的差额数量,基于课程的补充推荐方法从课程库中选择对应差额数量的补充课程推荐给学员
进一步的,在该计算机设备中包括一个处理器以及一个存储器,并还可以包括:输入系统和输出系统。处理器、存储器、输入系统和输出系统可以通过总线或者其他方式连接,输入系统可接收与基于卷积神经网络的在线课程推荐有关的信号输入。输出系统可包括显示屏等显示设备。
存储器作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本申请实施例中的基于卷积神经网络的在线课程推荐方法对应的程序指令/模块。存储器可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储基于卷积神经网络的在线课程推荐方法使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至本地模块。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
处理器在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器通常用于控制计算机设备的总体操作。本实施例中,处理器用于运行存储器中存储的程序代码或者处理数据。本实施例计算机设备的多个计算机设备的处理器通过运行存储在存储器中的非易失性软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例的基于卷积神经网络的在线课程推荐方法的步骤。
本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件和软件的这种可互换性,已经就各种示意性组件、方块、模块、电路和步骤的功能对其进行了一般性的描述。这种功能是被实现为软件还是被实现为硬件取决于具体应用以及施加给整个系统的设计约束。本领域技术人员可以针对每种具体应用以各种方式来实现的功能,但是这种实现决定不应被解释为导致脱离本发明实施例公开的范围。
最后需要说明的是,本文的计算机可读存储介质(例如,存储器)可以是易失性存储器或非易失性存储器,或者可以包括易失性存储器和非易失性存储器两者。作为例子而非限制性的,非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦写可编程ROM(EEPROM)或快闪存储器。易失性存储器可以包括随机存取存储器(RAM),该RAM可以充当外部高速缓存存储器。作为例子而非限制性的,RAM 可以以多种形式获得,比如同步RAM(DRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据速率SDRAM(DDRSDRAM)、增强SDRAM(ESDRAM)、同步链路DRAM(SLDRAM)、以及直接Rambus RAM(DRRAM)。所公开的方面的存储设备意在包括但不限于这些和其它合适类型的存储器。
结合这里的公开所描述的各种示例性逻辑块、模块和电路可以利用被设计成用于执行这类功能的下列部件来实现或执行:通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑器件、分立门或晶体管逻辑、分立的硬件组件或者这些部件的任何组合。通用处理器可以是微处理器,但是可替换地,处理器可以是任何传统处理器、控制器、微控制器或状态机。处理器也可以被实现为计算设备的组合,例如,DSP和微处理器的组合、多个微处理器、一个或多个微处理器结合DSP和/或任何其它这种配置。
以上是本发明公开的示例性实施例,但是应当注意,在不背离权利要求限定的本发明实施例公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。
应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。
Claims (7)
1.一种基于卷积神经网络的在线课程推荐方法,其特征在于:
该推荐方法包括以下步骤:
获取评价文本数据集,将评价文本数据集划分为训练集train_j和测试集test_j;
搭建深度学习的卷积神经网络模型;
利用训练集train_j对卷积神经网络模型进行多轮迭代训练,利用测试集test_j对卷积神经网络模型进行测试,基于MSE均方误差来检验卷积神经网络模型的预测效果并调整模型参数,直到模型收敛,得到所需的卷积神经网络模型;
利用卷积神经网络模型向学员推荐课程;
判断推荐给学员的课程数量是否达到所需的推荐课程数量;
若是,将推荐给学员的课程推送到学员客户端进行展示;
若否,计算所需的推荐课程数量与推荐给学员的课程数量之间的差额数量,基于课程的补充推荐方法从课程库中选择对应差额数量的补充课程推荐给学员;
基于课程的补充推荐方法从课程库中选择对应差额数量的补充课程的步骤包括:
在课程库中选取未推荐给学员的候选课程;
提取每一个候选课程的评价数据集,计算评价数据集/>中评价文本的数量/>;
基于数量对所有的候选课程进行递增排序,按递增顺序选择与差额数量相等的候选课程作为补充课程推荐给学员;
获取评价文本数据集的步骤包括:
使用scrapy框架从课程学习社区平台上获取课程评价数据,对课程评价数据进行预处理,得到评价文本数据集,评价文本数据集包括同一学员对不同课程的评价数据集和不同学员对同一课程的评价数据集/>,其中,评价数据集/>表示为:
;
评价数据集表示为:
;
其中,,/>表示一条评价文本,/>表示评价文本中的一个词,/>都是正整数,/>表示每一条评价文本中的词数量,/>表示学员/>的评价数量;/>表示课程/>的评价数量;
搭建的卷积神经网络模型包括嵌入层、卷积层、池化层和全连接层;其中:
在嵌入层中,对评价数据集中的每个评价文本/>进行向量化处理,对于一句长度为的评价文本/>的向量化表示为/>;对评价数据集/>中的每个评价文本/>进行向量化处理,对于一句长度为/>的评价文本/>的向量化表示为;/>表示每个词进行词向量化后的维度;
在卷积层中,有多个卷积核,将嵌入层的文本向量通过卷积运算提取学员特征/>,将嵌入层的文本向量/>通过卷积运算提取课程特征/>;
在池化层中,采用最大值池化操作取最大值特征作为学员特征和课程特征/>,其中:,/>;
在全连接层中,计算表达全局特征的学员特征矩阵和课程特征矩阵/>,其中,,/>;其中,/>为卷积神经网络中全连接层的偏置变量,/>为全连接层的权重矩阵;
将学员特征矩阵与课程特征矩阵/>之间进行全连接,得到学员对课程的预测评价值,利用Top-N的方法生成候选课程列表/>。
2.根据权利要求1所述的基于卷积神经网络的在线课程推荐方法,其特征在于,还包括采用K-means聚类算法对候选课程列表进行聚类的操作,将候选课程列表/>划分到z个簇中,其中,K-means算法用于将具有高度相似性的课程划分到同一个簇中,课程之间的相似性采用欧式距离作为衡量的标准,欧式距离计算公式为:
,/>;
在每个簇中计算簇中的每个课程到其他簇的中心点的距离和,计算公式如下:
;
表示第/>个簇的中心点;
将每个簇中与其他簇的中心的距离之和为最大的课程作为每个簇的代表课程,由这些代表课程组成最终包含有z个课程的课程推荐列表。
3.根据权利要求2所述的基于卷积神经网络的在线课程推荐方法,其特征在于,卷积运算包括一个滤波器,滤波器应用于在s个评价文本的窗口产生一个新的特征/>,特征/>由文本/>通过/>生成,b是一个偏置项,/>,tanh是一个非线性双曲正切函数。
4.根据权利要求3所述的基于卷积神经网络的在线课程推荐方法,其特征在于,在全连接层中,还将连接时间权重和学员特征/>,对学员特征/>进行与时间权重/>的加权操作:/>,F表示学员的最终语义向量,G表示激活函数,/>表示全连接层的权值;/>表示全连接层的偏差函数。
5.根据权利要求4所述的基于卷积神经网络的在线课程推荐方法,其特征在于,基于MSE均方误差来检验卷积神经网络模型的效果并调整模型参数,直到模型收敛的步骤包括:
利用MSE均方误差计算学员对课程的预测评价和真实评价之差平方的期望值;
在期望值大于期望阈值时,利用优化器Adam调整模型参数继续训练卷积神经网络模型,直到期望值小于期望阈值时,停止对模型的迭代训练,进而更新参数;
其中,MSE均方误差的表达式为:
,其中,/>表示为学员u对课程k的真实评价,/>表示学员u对课程k的预测评价,/>是训练集中评价的数量。
6.根据权利要求5所述的基于卷积神经网络的在线课程推荐方法,其特征在于,利用优化器Adam调整模型参数的步骤包括:
利用优化器Adam来更新梯度,经过偏置校正后,根据每一次迭代学习效率确定准确范围,进而更新参数;其中:
利用Adam计算梯度估计:;
更新一阶矩估计:;
更新二阶矩估计:;
修正一阶矩的偏差:;
修正二阶矩的偏差:;
计算参数更新量:;
参数更新:;
其中,学习率的初始值为 0.001,/>和/>分别默认为 0.9 和 0.999;极小常数/>默认值为/>,作用是防止分母为 0;初始化时,一阶矩变量/>,二阶矩变量/>都为0。
7.一种根据如权利要求1-6任一所述的基于卷积神经网络的在线课程推荐方法的推荐系统,其特征在于,该推荐系统包括:
数据处理模块,用于获取评价文本数据集,将评价文本数据集划分为训练集train_j和测试集test_j;
模型搭建模块,用于搭建深度学习的卷积神经网络模型;
模型训练模块,用于利用训练集train_j对卷积神经网络模型进行多轮迭代训练,利用测试集test_j对卷积神经网络模型进行测试,基于MSE均方误差来检验卷积神经网络模型的预测效果并调整模型参数,直到模型收敛,得到所需的卷积神经网络模型;
课程推荐模块,用于利用卷积神经网络模型向学员推荐课程;
推荐结果判断模块,用于判断推荐给学员的课程数量是否达到所需的推荐课程数量;
课程推送模块,用于在推荐结果判断模块的判断结果为是的时候,将推荐给学员的课程推送到学员客户端进行展示;
课程补充模块,用于在推荐结果判断模块的判断结果为否的时候,计算所需的推荐课程数量与推荐给学员的课程数量之间的差额数量,基于课程的补充推荐方法从课程库中选择对应差额数量的补充课程推荐给学员。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410137076.2A CN117688248B (zh) | 2024-02-01 | 2024-02-01 | 一种基于卷积神经网络的在线课程推荐方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410137076.2A CN117688248B (zh) | 2024-02-01 | 2024-02-01 | 一种基于卷积神经网络的在线课程推荐方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117688248A CN117688248A (zh) | 2024-03-12 |
CN117688248B true CN117688248B (zh) | 2024-04-26 |
Family
ID=90139329
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410137076.2A Active CN117688248B (zh) | 2024-02-01 | 2024-02-01 | 一种基于卷积神经网络的在线课程推荐方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117688248B (zh) |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7472097B1 (en) * | 2005-03-23 | 2008-12-30 | Kronos Talent Management Inc. | Employee selection via multiple neural networks |
CN107481170A (zh) * | 2017-08-18 | 2017-12-15 | 深圳市华第时代科技有限公司 | 一种课程推荐方法、装置、选课服务器及存储介质 |
CN110188978A (zh) * | 2019-04-12 | 2019-08-30 | 淮阴工学院 | 一种基于深度学习的大学生专业推荐方法 |
CN110334204A (zh) * | 2019-05-27 | 2019-10-15 | 湖南大学 | 一种基于用户记录的习题相似度计算推荐方法 |
CN110580314A (zh) * | 2019-07-16 | 2019-12-17 | 华南师范大学 | 基于图卷积神经网络和动态权重的课程推荐方法和系统 |
CN111191833A (zh) * | 2019-12-25 | 2020-05-22 | 湖北美和易思教育科技有限公司 | 一种基于神经网络的智能实验过程推荐方法及系统 |
CN111783697A (zh) * | 2020-07-06 | 2020-10-16 | 周书田 | 一种基于卷积神经网络的错题检测及靶向推荐系统和方法 |
CN114154070A (zh) * | 2021-12-07 | 2022-03-08 | 西安邮电大学 | 一种基于图卷积神经网络的mooc推荐方法 |
KR102400582B1 (ko) * | 2021-12-03 | 2022-05-20 | 주식회사 대교씨엔에스 | 빅데이터와 인공지능 기반의 개인화된 학습량 추천 방법 및 장치 |
CN114595923A (zh) * | 2022-01-11 | 2022-06-07 | 电子科技大学 | 一种基于深度强化学习的群体教学推荐系统 |
CN115423546A (zh) * | 2022-07-25 | 2022-12-02 | 华中师范大学 | 一种基于多图神经网络的课程推荐方法 |
CN116992151A (zh) * | 2023-08-23 | 2023-11-03 | 中国电子科技集团公司第十五研究所 | 一种基于双塔图卷积神经网络的在线课程推荐方法 |
CN117151346A (zh) * | 2023-10-30 | 2023-12-01 | 中国民航大学 | 一种基于智慧学习的民航专业教学培训系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170011095A1 (en) * | 2015-07-10 | 2017-01-12 | Fujitsu Limited | Processing search queries for open education resources |
US11188581B2 (en) * | 2017-05-10 | 2021-11-30 | Fmr Llc | Identification and classification of training needs from unstructured computer text using a neural network |
-
2024
- 2024-02-01 CN CN202410137076.2A patent/CN117688248B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7472097B1 (en) * | 2005-03-23 | 2008-12-30 | Kronos Talent Management Inc. | Employee selection via multiple neural networks |
CN107481170A (zh) * | 2017-08-18 | 2017-12-15 | 深圳市华第时代科技有限公司 | 一种课程推荐方法、装置、选课服务器及存储介质 |
CN110188978A (zh) * | 2019-04-12 | 2019-08-30 | 淮阴工学院 | 一种基于深度学习的大学生专业推荐方法 |
CN110334204A (zh) * | 2019-05-27 | 2019-10-15 | 湖南大学 | 一种基于用户记录的习题相似度计算推荐方法 |
CN110580314A (zh) * | 2019-07-16 | 2019-12-17 | 华南师范大学 | 基于图卷积神经网络和动态权重的课程推荐方法和系统 |
CN111191833A (zh) * | 2019-12-25 | 2020-05-22 | 湖北美和易思教育科技有限公司 | 一种基于神经网络的智能实验过程推荐方法及系统 |
CN111783697A (zh) * | 2020-07-06 | 2020-10-16 | 周书田 | 一种基于卷积神经网络的错题检测及靶向推荐系统和方法 |
KR102400582B1 (ko) * | 2021-12-03 | 2022-05-20 | 주식회사 대교씨엔에스 | 빅데이터와 인공지능 기반의 개인화된 학습량 추천 방법 및 장치 |
CN114154070A (zh) * | 2021-12-07 | 2022-03-08 | 西安邮电大学 | 一种基于图卷积神经网络的mooc推荐方法 |
CN114595923A (zh) * | 2022-01-11 | 2022-06-07 | 电子科技大学 | 一种基于深度强化学习的群体教学推荐系统 |
CN115423546A (zh) * | 2022-07-25 | 2022-12-02 | 华中师范大学 | 一种基于多图神经网络的课程推荐方法 |
CN116992151A (zh) * | 2023-08-23 | 2023-11-03 | 中国电子科技集团公司第十五研究所 | 一种基于双塔图卷积神经网络的在线课程推荐方法 |
CN117151346A (zh) * | 2023-10-30 | 2023-12-01 | 中国民航大学 | 一种基于智慧学习的民航专业教学培训系统 |
Non-Patent Citations (1)
Title |
---|
"基于深度学习的在线视频与习题匹配计算研究";李浩君等;《小型微型计算机系统》;20240131;11 * |
Also Published As
Publication number | Publication date |
---|---|
CN117688248A (zh) | 2024-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230368024A1 (en) | Neural architecture search | |
CN110147551B (zh) | 多类别实体识别模型训练、实体识别方法、服务器及终端 | |
CN109902222A (zh) | 一种推荐方法及装置 | |
CN111563706A (zh) | 一种基于lstm网络的多变量物流货运量预测方法 | |
CN109948149B (zh) | 一种文本分类方法及装置 | |
US20220092416A1 (en) | Neural architecture search through a graph search space | |
CN110362738A (zh) | 一种基于深度学习的结合信任和影响力的个性化推荐方法 | |
CN113901327A (zh) | 一种目标推荐模型训练方法、推荐方法、装置及电子设备 | |
CN112632351B (zh) | 分类模型的训练方法、分类方法、装置及设备 | |
CN110019822B (zh) | 一种少样本关系分类方法及系统 | |
CN112182384A (zh) | 基于对抗学习的内容推荐方法、装置和计算机设备 | |
CN109086463A (zh) | 一种基于区域卷积神经网络的问答社区标签推荐方法 | |
US20220215255A1 (en) | Learning content recommendation system for predicting probability of correct answer of user using collaborative filtering based on latent factor and operation method thereof | |
CN113409157B (zh) | 一种跨社交网络用户对齐方法以及装置 | |
Zhu | Network Course Recommendation System Based on Double‐Layer Attention Mechanism | |
CN114154839A (zh) | 一种基于在线教育平台数据的课程推荐方法 | |
CN117688248B (zh) | 一种基于卷积神经网络的在线课程推荐方法及系统 | |
CN117194918A (zh) | 基于自注意力回声状态网络的气温预测方法及系统 | |
Arifin et al. | Automatic essay scoring for Indonesian short answers using siamese Manhattan long short-term memory | |
Shen et al. | Online teaching course recommendation based on autoencoder | |
CN112883284A (zh) | 一种基于网络和数据分析的在线学习系统及测试题推荐方法 | |
CN111563775A (zh) | 人群划分方法及装置 | |
CN111325027A (zh) | 一种面向稀疏数据的个性化情感分析方法与装置 | |
CN114528482B (zh) | 一种推荐对象确定方法、装置、电子设备及存储介质 | |
CN112990826B (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 |