一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于多图神经网络的课程推荐方法

2022-12-03 00:21:29 来源:中国专利 TAG:


1.本发明属于数字化在线教育领域,具体涉及一种基于在线教育平台数据的多图神经网络的课程推荐方法,是一种由学生与课程的交互数据、学生与学生的社交数据、教师与课程的关系数据构成的多图神经网络的在线课程推荐方法。


背景技术:

2.互联网技术的不断推陈出新使人们的生活各个方面都发生了翻天覆地的变化,它帮助人们克服了许许多多现实世界所产生的距离障碍,在数字化在线教育领域尤其如此。然而,越来越多的课程出现在现有的在线教育平台,人们难以快速的选择适合自己的课程。
3.个性化推荐算法的出现改变了这一种窘迫的局面,给学习人士节省了宝贵的时间,增加了效率。当前流行的技术主要来源于协同过滤或者fm技术,比如物品协同过滤算法或者deepfm算法,但是这些算法均无法深入挖掘人与人、人与物品的之间的关系,难以用向量表示人或者物品并存储在计算机当中,同时推荐结果的准确性有待提高。


技术实现要素:

4.本发明的目的就是为了克服现有技术中的不足之处,利用embedding技术以及图神经网络模型,提供一种基于在线教育平台数据的多图神经网络的课程推荐方法,旨在通过建立多图结构数据,利用图神经网络挖掘图结构数据中隐藏的信息,使推荐结果更加准确。
5.本发明的目的是通过如下技术措施来实现的。
6.一种基于多图神经网络的课程推荐方法,包括以下步骤:
7.(1)利用服务器存储学生与课程的互动数据,学生与学生之间的互动数据以及教师授予课程数据,整个数据库存储的数据记作d0。
8.(2)获取步骤(1)中的数据d0,并作数据清洗工作,清洗后的数据记作d1,获取关键维度数据以及多图结构数据,其中关键维度数据包括学生对于每一门课程的评分rate以及课程中的授课教师id,该数据记作rate,数据样式为{“student id”,“course id”,“teacher id”,rate}。
9.(3)处理步骤(2)获取的多图结构数据,得到课程序列数据,同时构造学习者之间组成的间接关系网络数据以及教师与课程形成的二分图数据。
10.课程序列数据g
uc
,数据样式为{“student id”:[“course1 id”,“course2 id
”…
]};
[0011]
间接关系网络数据g
ud
,数据样式为{[“student1 id”,“student2id”,weight]},weight是两个学生之间的间接关系权重,记作w;
[0012]
二分图数据g
tc
,数据样式为{[“course1 id”,“teacher1 id”]}。
[0013]
(4)通过步骤(3)中构造的数据,利用模型word2vec以及graph embedding获取所需要的学生的向量eu、课程的向量e
cs
和e
cb
以及教师向量e
t
,其中graph embedding模型包含
struc2vec以及二分图模型。
[0014]
(5)通过concatenation连接e
cs
和e
cb
得到课程向量ec,通过product点积操作得到关于集合rate的每条数据样例对应的三个因子α
uc
,α
tc
,α
ut

[0015]
(6)根据三个因子的数据α
uc
,α
tc
,α
ut
特征,实现多层感知机mlp,并完成最终模型。
[0016]
(7)在完成步骤(6)中的模型之后,利用损失函数和多层感知机方式训练模型,用训练好的模型获取学习者对于课程的预估评分r
hat

[0017]
(8)根据预估评分r
hat
得到针对每一个学生的待推荐课程列表,从待推荐课程列表中按照预估评分的降序排列方式选取top n作为实际推荐课程推送给相关学生。
[0018]
本发明基于多图神经网络的课程推荐方法将线上教育数字化特征与传统教育理念相结合提出了基于embedding技术的个性化课程推荐模型,引入了学习者、课程以及教师三种角色的向量;推荐模型使用了多图网络结构,包括学习者之间形成的社交网络、老师与课程之间构成的二分图网络;推荐模型不涉及学生、课程或者教师的基本属性的特征,建模不依赖过多的数据特征,适用的课程推荐平台范围比较广泛。
附图说明
[0019]
图1是本发明课程推荐方法流程图。
[0020]
图2是本发明课程推荐方法框架图。
具体实施方式
[0021]
下面将结合附图及实施例,对本发明中的技术方案进行具体描述。显然所描述的实施例是本发明部分实施例,而不是全部实施例。基于本发明的实施例,本领域普通技术人员在没有付出创造性劳动的前提下所获得的所有其他实施例,都属于本发明的保护范围。
[0022]
下面结合流程图1以及框架图2,具体介绍本发明的实现步骤。
[0023]
s1,以数据埋点或者数据日志的方式获取学生与课程的相关数据,并将这些数据存储在本地服务器中的数据库得到相关数据d0。
[0024]
s2,从d0中去除重复的数据,去除缺失学生id、教师id或者课程评分的数据,得到数据d1。
[0025]
s3,从d1中直接获取课程序列数据g
ue
以及构建学习者之间组成的间接关系网络数据g
ui
、教师与课程形成的二分图数据g
tc

[0026]
课程序列数据g
uc
,数据样式为{“student id”:[“course1 id”,“course2 id
”…
]};
[0027]
间接关系网络数据g
ud
,数据样式为{[“student1 id”,“student2 id”,weight]},weight是两个学生之间的间接关系权重,记作w;
[0028]
二分图数据g
tc
,数据样式为{[“course1 id”,“teacher1 id”]};
[0029]
其中,w计算公式如下:
[0030][0031]
对于该公式的解释:是学生student1 id所学习的所有课程集合,是学生
student2 id所学习的所有课程集合,集合与集合均可以从课程序列数据g
uc
获取。
[0032]
s4,以课程序列数据g
uc
作为输入数据,利用模型word2vec获取课程向量e
cs
,其最终数据样例是{“course id”:e
cs
},以间接关系网络数据g
ui
作为输入数据,利用struc2vec模型得到每一个学生对应的学生向量eu,其最终数据样例是{“student id”:eu},以教师与课程组成的二分图数据,通过二分图模型获取每一个教师对应的教师向量e
t
以及每一门课程对应的向量e
cb
,其最终的数据样例分别是{“teacher id”:e
t
}以及{“course id”:e
cb
}。
[0033]
s5,通过course id匹配关于课程的两个数据样例{“course id”:e
cs
}与{“course id”:e
cb
},当两个数据样例的course id对应一致的时候,将向量e
cs
与向量e
cb
进行concatenation操作,得到关于课程的最终向量ec,关于课程的最终数据样例为{“course id”:ec}。
[0034]
通过product点积操作得到关于集合rate的每条数据样例对应的三个因子α
uc
,α
tc
,α
ut
;数据rate中每条数据{“student id”,“course id”,“teacher id”,rate}对应的三个因子α
uc
,α
tc
,α
ut
分别利用“student id”,“course id”,“teacher id”对应的向量euec,e
t
得到,其计算方式分别如下:
[0035]
α
uc
=product(eu,ec)
[0036]
α
tc
=product(e
t
,ec)
[0037]
α
ut
=product(eu,e
t
)
[0038]
因此rate中对应的每条数据样例最终转化成为{α
uc
,α
tc
,α
ut
,rate},其数据矩阵记作r。
[0039]
s6,根据r中的数据样例{α
uc
,α
tc
,α
ut
,rate}设置多层感知机mlp的输入数据维度大小,设置合适的感知机的层数,建议为3层,选择合适的最终模型的激活函数,推荐是relu或者sigmoid激活函数。
[0040]
s7,在实现s6中的模型之后,设置损失函数和训练方式,其中损失函数公式如下:
[0041][0042]
其中rate为学生对于课程的真实评分,r
hat
为训练过程中模型根据每一条数据{α
uc
,α
tc
,α
ut
}计算出来的学生与相应课程的预估评分。|n|为rate中对应的数据条数。其中的训练方式中的优化器设置为adam,学习率推荐为0.001,批处理大小batch size设置为128。利用训练好的模型得到每一个学生对于每一门课程的预估评分。
[0043]
s8,得到针对每一个学生的待推荐课程列表,其数据样式为{“student id”,[“math id”,“english id”,“physics id
”…
]}。
[0044]
针对以上步骤中出现向量提取以及模型实现、训练等涉及的具体代码实现方式均可以通过深度学习框架pytorch实现。深度学习框架pytorch是facebook实现的开源代码框架,任何人都能免费使用该代码框架。
[0045]
在人工智能领域,深度学习算法将现实中的对象变成了数字化的向量,即embedding的形式,这一种方式增加了个性化推荐方法的表现能力。在线上学习平台里面,学生们留下了许许多多的数据一定程度表达了对课程的偏好程度,基于深度学习的自然语言处理算法可以将这种情感转化成embedding形式。平台上的课程可以视为一个个不同的节点,通过图神经网络的处理,也能变成不同的embedding形式。本发明正是综合利用这些
embedding数据,将一定数目的课程推荐给不同学生。
[0046]
本发明方法考虑了学生之间的交互数据、学生与课程交互行为数据以及教师的存在对于线上课程的影响,全面发挥数据的价值,利用前沿的图神经网络graph embedding算法模型,深度挖掘了学生与学生之间社交的关系,同时也考虑了教师和学生对于课程的影响,从而实现更加可靠的推荐方式。
[0047]
本说明书未作详细描述的内容,属于本专业技术人员公知的现有技术。
[0048]
应当说明的是,以上包含的本发明实例内容说明,是为了详细解释本发明的技术特征。在不脱离本发明的前提下,所做出的若干改进和修饰也受本发明的保护,因此本发明的保护范围应当以本技术的权利要求所界定的内容为标准。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献