本发明涉及推荐系统,尤其涉及一种基于自适应学习推荐系统生成方法及系统。
背景技术:
0、技术背景
1、在大数据和人工智能大发展的今天,教育的数字化改革也开始渐渐地引进相关的计算机技术,使得教师工作效率提高,也让学生能够更有针对性地学习,提升自我能力素养。由于传统在线教育辅导系统习题结构单一、学习效率低和没有针对性等诸多因素的存在,智能推荐习题系统的引入能使系统能根据每个学生的学习情况进行分析并进行个性化的习题推荐,提高学生的学习效率。
2、目前的智能推荐习题系统的推荐方式包括以下几种:
3、传统方法:主要利用学生-题目交互表对学生或者题目计算相似度,取最为相似的若干道题目进行推荐。此类方法存在着数据冷启动的问题,数据冷启动即为对于新用户的第一轮推荐,由于没有任何的交互数据,系统无法根据当前用户的交互历史进行计算并推荐。
4、深度学习:使用深度神经网络对学生和题目的交互历史进行建模,得到学生对题目的准确率或重要程度,再根据规则进行推荐。而一般的深度学习推荐方法中,模型学习的为固定时间的交互数据,对于同一用户的不同时间节点的交互预测效果不尽如人意。
5、技术方案
6、为了解决上述方法存在的问题,本发明提出的目的是实现一种自适应学习的,能不受初始数据的影响,并能很好地体现交互性的习题推荐系统。本发明提出的技术方案包括以下步骤:
7、为实现上述目的,本发明提供如下技术方案:一种基于自适应学习推荐系统生成方法及系统,
8、步骤一、构建模型输入数据结构;
9、步骤二、设置模型训练任务:每一轮迭代都会对以下训练方式进行平均采样并执行;
10、步骤三、建立自适应学习推荐系统。
11、优选的,所述步骤一的具体步骤为:从数据库中获取学生和题目的交互历史数据,并得到学生对题库中对所有题目最近一次的正确情况和作答答案构建学生的特征矩阵uc、ua,其中若学生作答正确为1,未曾作答和作答错误为0,此特征也作为训练时的标签,作答的答案为0、1、2、3,分别对应题目选项的a、b、c、d,未曾作答默认为0;
12、在学生已完成的习题中按照一定的比例划分支持集setsupport和查询集setquery,并得到支持掩码矩阵maskinput和查询掩码矩阵maskoutput。
13、优选的,所述步骤二包括有:首轮预测,具体为:
14、a.创建输入矩阵masktrain并将初始化为零;
15、b.根据支持掩码矩阵对每一位学生随机采样n道题目,对输入矩阵masktrain的对应位置更新;
16、c.将输入矩阵masktrain和特征矩阵uc、ua相乘得到输入特征矩阵vectorinput;
17、d.通过学生特征的嵌入层将输入特征矩阵vectorinput转化为学生嵌入特征embededinput;
18、e.通过输入掩码的特征提取层将输入矩阵maskinput转化为嵌入特征embededother;
19、f.将d,e得到的特征拼接并送入输出层得到模型输出output。
20、优选的,所述步骤二还包括有:自适应学习,具体为:
21、a.创建输入矩阵masktrain并将初始化为零;
22、b.执行m次迭代;
23、c.将输入矩阵masktrain和特征矩阵uc、ua相乘得到输入特征矩阵vectorinput;
24、d.通过学生特征的嵌入层将输入特征矩阵vectorinput转化为学生嵌入特征embededinput;
25、e.通过输入掩码的特征提取层将输入矩阵maskinput转化为嵌入特征embededother;
26、f.将d,e得到的特征拼接并送入输出层根据情况计算模型输出output。
27、优选的,所述步骤b的具体操作为:
28、每次将执行以下步骤:
29、(1)将输入矩阵masktrain和特征矩阵uc、ua相乘得到输入特征矩阵vectorinput。
30、(2)通过学生特征的嵌入层将输入特征矩阵vectorinput转化为学生嵌入特征embededinput。
31、(3)通过输入掩码的特征提取层将输入矩阵masktrain转化为嵌入特征embededother。
32、(4)将(2),(3)得到的特征拼接并送入输出层得到模型输出output。
33、(5)根据模型的输出output选取输出值最大的n道题目,并根据题目的索引更新输入矩阵masktrain。
34、优选的,所述步骤三包括有训练的初始化,具体为:定义元模型modelmeta和子任务模型modelsub;将学生的特征矩阵uc、ua按照一定的比例划分为训练集settrain和测试集settest。
35、优选的,所述步骤三还包括有训练阶段:使用元学习算法losssub对模型参数进行初始化:
36、(1)使用元模型modelmeta参数对子任务模型modelsub初始化;
37、(2)在1-n中随机取样任务n(训练中选取题目的数量)和采样一种训练任务;
38、(3)在训练集中使用支持集对子任务模型modelsub;进行参数优化,而后使用子任务模型modelsub在查询集下计算损失值losssub,对元模型进行优化modelmeta。
39、(4)在测试集中使用支持集对元模型modelmeta进行微调,而后在查询集下评估元模型modelmeta的能力。
40、优选的,所述步骤三还包括有:开始训练:
41、(1)导入元模型modelmeta参数;
42、(2)在1-n中随机取样任务n(训练中选取题目的数量)和采样一种训练任务;
43、(3)分别在训练集settrain中划分的支持集和查询集计算出损失值losssupport、lossquery,并加权平均得到总损失值losstotal,根据梯度下降算法对模型进行参数的更新;
44、(4)在测试集settest中对模型modelmeta进行评估。
45、优选的,所述步骤三还包括有:推理阶段:
46、a.得到当前学生的特征uc、ua;
47、b.设置题目数量为n并将特征uc、ua输入模型计算。
48、优选的,所述步骤b中的具体步骤为:
49、(1)创建输入矩阵masktrain并将初始化为零;
50、(2)将输入矩阵masktrain和特征矩阵uc、ua相乘得到输入特征矩阵vectorinput;
51、(3)通过学生特征的嵌入层将输入特征vectorinput转化为学生嵌入特征embededinput;
52、(4)通过输入掩码的特征提取层将输入矩阵masktrain转化为嵌入特征embededother;
53、(5)将(3),(4)得到的特征拼接并送入输出层得到模型输出output;
54、(6)根据模型的输出output选取输出值最大的n道题目;
55、(7)返回选取题目的索引id。
56、与现有技术相比,本发明提供了一种基于自适应学习推荐系统生成方法及系统,具备以下有益效果:
57、1、该基于自适应学习推荐系统生成方法及系统,相比于采用大量的特征提取技术获得模型的输入特征值,本模型采用相对简单的特征数据作为输入,节省了相对较多的数据预处理时间并达到了几乎相同的推荐效果。
58、2、该基于自适应学习推荐系统生成方法及系统,交互性和针对性更强,相比于单纯地对离散时间点特征进行预测,本模型直接对推荐交互过程进行建模,在保证推荐轮次的连续性的同时,在每一轮推荐中有88%-93%的情况能根据上一轮更新的结果给出更为准确且有效的输出。
59、3、该基于自适应学习推荐系统生成方法及系统,在一定程度上解决了数据冷启动的问题,在系统第一次推荐时,传统的基于用户或题目的相似性推荐的推荐算法会因无法得到特征而无法计算,本模型在第一次推荐时对题目的平均准确率为84.80%。
60、4、该基于自适应学习推荐系统生成方法及系统,在多任务联合训练的过程中,相比于将各任务损失值加权平均更新参数的方式,元学习能使模型自行学习参数初始化,并在正式训练完成后使模型对各个任务的性能相差不到5%。
技术实现思路