基于人工智能的课程推荐方法、装置、电子设备及介质与流程

文档序号:27097906发布日期:2021-10-27 17:18阅读:87来源:国知局
基于人工智能的课程推荐方法、装置、电子设备及介质与流程

1.本发明涉及人工智能技术领域,具体涉及一种基于人工智能的课程推荐方法、装置、电子设备及介质。


背景技术:

2.课程推荐模型通常利用大量的用户历史行为数据作为输入,同时借助其它辅助信息来预测用户对某一门课程的偏好需求,从而实现差异化的培训课程精准推送。但课程推荐模型往往会面临用户冷启动问题,即当缺少用户和课程的历史交互数据时,课程推荐模型无法判断用户对课程的需求偏好,进而无法实施针对性的课程推荐。
3.发明人在实现本发明的过程中发现,现有的解决用户冷启动问题的方法大多基于专家经验和业务规则。如,使用热门非个性化内容进行试探性推送、通过业务设计与用户交互获取个人信息和兴趣标签等。这些方法虽然在一定程度上缓解了用户冷启动问题,但具有比较强的主观性和片面性,且需要特定领域知识和较多的用户交互,导致冷启动用户的课程推荐效果较差,无法精准的进行课程推荐。


技术实现要素:

4.鉴于以上内容,有必要提出一种基于人工智能的课程推荐方法、装置、电子设备及介质,能够一次性为多个用户推荐课程,且实现了两个相似用户的课程的相互推荐。
5.本发明的第一方面提供一种基于人工智能的课程推荐方法,所述方法包括:基于资讯领域中的第一用户阅读资讯的阅读行为生成用户资讯矩阵,及基于课程领域中的第二用户学习课程的学习行为生成用户课程矩阵;根据所述用户资讯矩阵计算所述资讯领域中任意两个第一用户构成的第一用户对的第一相似度;根据所述第一相似度构建所述资讯领域的第一用户领域集合;针对所述第一用户领域集合中的任意一个第一用户对,从所述课程领域中获取与所述任意一个第一用户对匹配的第二用户对;根据所述用户课程矩阵从多个所述第二用户对中获取多个目标第二用户对,并基于所述多个目标第二用户对构建所述课程领域的第二用户领域集合;为所述第二用户领域集合中的每个所述目标第二用户对进行课程的相互推荐。
6.在一个可选的实施方式中,所述基于资讯领域中的第一用户阅读资讯的阅读行为生成用户资讯矩阵,及基于课程领域中的第二用户学习课程的学习行为生成用户课程矩阵包括:获取每个所述第一用户阅读每个资讯的阅读行为;根据所述阅读行为生成用户资讯稀疏矩阵;对所述用户资讯稀疏矩阵进行非稀疏化处理,得到资讯领域的用户资讯矩阵;获取每个所述第二用户学习每门课程的学习行为;
根据所述学习行为生成所述课程领域的用户课程矩阵。
7.在一个可选的实施方式中,所述对所述用户资讯稀疏矩阵进行非稀疏化处理,得到资讯领域的用户资讯矩阵包括:获取所述用户资讯稀疏矩阵中每个资讯所属的类别标签;将同一个第一用户在同一个类别标签下的资讯的阅读行为进行加和处理,得到每个第一用户阅读每类资讯的阅读行为;根据所述每个第一用户阅读每类资讯的阅读行为生成所述资讯领域的用户资讯矩阵。
8.在一个可选的实施方式中,所述根据所述用户资讯矩阵计算所述资讯领域中任意两个第一用户构成的第一用户对的第一相似度包括:获取所述用户资讯矩阵中每个所述第一用户的用户向量;计算每个所述用户向量的均值向量;计算每个所述用户向量与对应的所述均值向量之间的差值向量;根据任意两个第一用户的差值向量计算所述任意两个第一用户构成的第一用户对的第一相似度。
9.在一个可选的实施方式中,所述根据所述第一相似度构建所述资讯领域的第一用户领域集合包括:判断所述第一相似度是否小于预设第一相似度阈值;当所述第一相似度大于所述预设第一相似度阈值时,保留所述第一相似度;当所述第一相似度小于所述预设第一相似度阈值时,删除所述第一相似度;将根据保留后的第一相似度对应的两个第一用户确定为第一用户对;根据多个所述第一用户对构建所述资讯领域的第一用户领域集合。
10.在一个可选的实施方式中,所述根据所述用户课程矩阵从多个所述第二用户对中获取多个目标第二用户对包括:从所述用户课程矩阵中获取每个所述第二用户对中的两个第二用户的学习行为;根据所述第二用户对中的两个第二用户的学习行为计算所述第二用户对的第二相似度;当所述第二相似度大于预设第二相似度阈值时,将所述第二用户对确定为目标第二用户对。
11.在一个可选的实施方式中,所述根据所述第二用户对中的两个第二用户的学习行为计算所述第二用户对的第二相似度包括:对所述学习行为进行量化处理,得到偏好得分;根据所述偏好得分计算所述第二用户对的第二相似度。
12.本发明的第二方面提供一种基于人工智能的课程推荐装置,所述装置包括:矩阵生成模块,用于基于资讯领域中的第一用户阅读资讯的阅读行为生成用户资讯矩阵,及基于课程领域中的第二用户学习课程的学习行为生成用户课程矩阵;资讯计算模块,用于根据所述用户资讯矩阵计算所述资讯领域中任意两个第一用户构成的第一用户对的第一相似度;第一构建模块,用于根据所述第一相似度构建所述资讯领域的第一用户领域集
合;用户匹配模块,用于针对所述第一用户领域集合中的任意一个第一用户对,从所述课程领域中获取与所述任意一个第一用户对匹配的第二用户对;第二构建模块,用于根据所述用户课程矩阵从多个所述第二用户对中获取多个目标第二用户对,并基于所述多个目标第二用户对构建所述课程领域的第二用户领域集合;课程推荐模块,用于为所述第二用户领域集合中的每个所述目标第二用户对进行课程的相互推荐。
13.本发明的第三方面提供一种电子设备,所述电子设备包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现所述基于人工智能的课程推荐方法。
14.本发明的第四方面提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现所述基于人工智能的课程推荐方法。
15.综上所述,本发明所述的基于人工智能的课程推荐方法、装置、电子设备及介质,在基于资讯领域中的第一用户阅读资讯的阅读行为生成用户资讯矩阵,及基于课程领域中的第二用户学习课程的学习行为生成用户课程矩阵之后,通过用户资讯矩阵计算所述资讯领域中任意两个第一用户构成的第一用户对的第一相似度,并根据所述第一相似度构建所述资讯领域中的第一用户领域集合,得到了资讯领域中用户阅读资讯的偏好行为,针对所述第一用户领域集合中的任意一个第一用户对,从所述课程领域中获取与所述任意一个第一用户对匹配的第二用户对,从而根据所述用户课程矩阵从多个所述第二用户对中获取多个目标第二用户对,并基于所述多个目标第二用户对构建所述课程领域的第二用户领域集合,实现了利用迁移学习思想将用户阅读资讯的偏好行为迁移至课程领域中学习课程的偏好行为中,最后为所述第二用户领域集合中的每个所述目标第二用户对进行课程的相互推荐,有效的解决了课程推荐模型中的冷启动问题,不仅能够一次性为多个用户个性化的推荐课程,且实现的是两个相似用户的课程的相互推荐。
附图说明
16.图1是本发明实施例一提供的基于人工智能的课程推荐方法的流程图。
17.图2是本发明实施例二提供的基于人工智能的课程推荐装置的结构图。
18.图3是本发明实施例三提供的电子设备的结构示意图。
具体实施方式
19.为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施例对本发明进行详细描述。需要说明的是,在不冲突的情况下,本发明的实施例及实施例中的特征可以相互组合。
20.除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述在一个可选的实施方式中实施例的目的,不是旨在于限制本发明。
21.本发明实施例提供的基于人工智能的课程推荐方法由电子设备执行,相应地,基于人工智能的课程推荐装置运行于电子设备中。
22.本技术实施例可以基于人工智能技术对用户进行课程推荐。其中,人工智能(artificial intelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
23.人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
24.实施例一图1是本发明实施例一提供的基于人工智能的课程推荐方法的流程图。所述基于人工智能的课程推荐方法具体包括以下步骤,根据不同的需求,该流程图中步骤的顺序可以改变,某些可以省略。
25.s11,基于资讯领域中的第一用户阅读资讯的阅读行为生成用户资讯矩阵,及基于课程领域中的第二用户学习课程的学习行为生成用户课程矩阵。
26.其中,课程领域是指进行培训课程推荐的领域,资讯领域是指与课程领域相关的领域。将课程领域作为目标域,资讯领域作为源域。所述资讯领域的用户为第一用户,所述课程领域的用户为第二用户。即,课程领域的用户与资讯领域的用户为不同的用户。
27.由于在课程领域中存在用户冷启动问题,即缺少用户与课程的历史交互数据,因而无法通过课程推荐模型判断用户对课程的需求偏好,进而无法实现个性化的课程推荐。缺少与课程的历史交互数据的用户称之为课程领域的冷启动用户。
28.本实施例通过获取资讯领域的用户资讯矩阵来为课程领域的冷启动用户使用课程推荐模型,从而为冷启动用户进行个性化和精准化的课程推荐。
29.在一个可选的实施方式中,所述基于资讯领域中的第一用户阅读资讯的阅读行为生成用户资讯矩阵,及基于课程领域中的第二用户学习课程的学习行为生成用户课程矩阵包括:获取每个所述第一用户阅读每个资讯的阅读行为;根据所述阅读行为生成用户资讯稀疏矩阵;对所述用户资讯稀疏矩阵进行非稀疏化处理,得到资讯领域的用户资讯矩阵;获取每个所述第二用户学习每门课程的学习行为;根据所述学习行为生成所述课程领域的用户课程矩阵。
30.电子设备中预设存储有第一数据库和第二数据库,其中,第一数据库中记录有多个第一用户、多个资讯及每个第一用户阅读每个资讯的阅读行为,所述阅读行为可以包括:阅读时长,阅读次数。第二数据库中记录有多个第二用户、多个课程及每个第二用户学习每门课程的学习行为,所述学习行为可以包括:学习时长,学习次数。
31.假设用户阅读资讯的阅读次数为,则用户资讯稀疏矩阵中每个元素的含义可用三元组表示。假设用户学习课程的学习行为为,则用户课程矩阵中每个元素的含义可用三元组表示。
32.由于实际应用中,资讯的内容量非常大,即资讯的数量远大于课程的数量,因而生成的用户资讯稀疏矩阵是一个稀疏矩阵,稀疏矩阵不利于后续的计算和相似性度量,因
此需要对生成的用户资讯稀疏矩阵进行非稀疏化处理。
33.在一个可选的实施方式中,所述对所述用户资讯稀疏矩阵进行非稀疏化处理,得到资讯领域的用户资讯矩阵包括:获取所述用户资讯稀疏矩阵中每个资讯所属的类别标签;将同一个第一用户在同一个类别标签下的资讯的阅读行为进行加和处理,得到每个第一用户阅读每类资讯的阅读行为;根据所述每个第一用户阅读每类资讯的阅读行为生成所述资讯领域的用户资讯矩阵。
34.假设用户阅读资讯的阅读行为,用户阅读资讯的阅读行为,用户阅读资讯的阅读行为,资讯、资讯、资讯均对应类别标签,用户阅读类资讯的阅读行为,则用户资讯矩阵中每个元素的含义可用三元组表示。即,将用户资讯稀疏矩阵中的三元组转换为用户资讯矩阵中的三元组。
35.该可选的实施方式,通过将同一个类别标签下的资讯的阅读行为进行加和处理,去掉了资讯这一元素,大大减少了数据量,避免了用户资讯矩阵的稀疏,非稀疏的用户资讯矩阵,有利于后续的相似度计算。
36.s12,根据所述用户资讯矩阵计算所述资讯领域中任意两个第一用户构成的第一用户对的第一相似度。
37.对于资讯领域中的第一用户而言,任意两个第一用户之间可以计算相似度。相似度越大,表明对应的两个第一用户之间越具有偏好一致性;相似度越小,表明对应的两个第一用户之间越不具有偏好一致性。
38.在一个可选的实施方式中,所述根据所述用户资讯矩阵计算所述资讯领域中任意两个第一用户构成的第一用户对的第一相似度包括:获取所述用户资讯矩阵中每个所述第一用户的用户向量;计算每个所述用户向量的均值向量;计算每个所述用户向量与对应的所述均值向量之间的差值向量;根据任意两个第一用户的差值向量计算所述任意两个第一用户构成的第一用户对的第一相似度。
39.其中,每个第一用户的用户向量为用户资讯矩阵中每个第一用户的行向量。
40.该可选的实施方式,可以通过如下公式(1)计算相似度:(1),其中,表示用户资讯矩阵中第一用户的用户向量,为均值向量,表示用户资讯矩阵中第一用户的用户向量,表示第一用户与第一用户之间的相似度。
41.该可选的实施方式中,通过计算每个第一用户的均值向量,在使用第一用户的用户向量减去对应的均值向量,最后根据得到的差值向量计算第一相似度,不仅考虑了向量之间的方向性,更兼顾了向量的具体大小,因此计算得到的第一相似度更为准确。
42.s13,根据所述第一相似度构建所述资讯领域的第一用户领域集合。
43.在计算得到资讯领域中第一用户与第一用户之间的第一相似度之后,由于假定具有类似资讯阅读偏好行为的第一用户在课程领域的课程学习中也具有其相似性,因而可以将资讯领域中第一用户与第一用户之间的相似度迁移至课程领域中第二用户与第二用户之间的相似度,并根据所述第二用户与第二用户之间的相似度确定课程领域中第二用户领域集合。
44.在一个可选的实施方式中,所述根据所述第一相似度构建所述资讯领域的第一用户领域集合包括:判断所述第一相似度是否小于预设第一相似度阈值;当所述第一相似度大于所述预设第一相似度阈值时,保留所述第一相似度;当所述第一相似度小于所述预设第一相似度阈值时,删除所述第一相似度;将根据保留后的第一相似度对应的两个第一用户确定为第一用户对;根据多个所述第一用户对构建所述资讯领域的第一用户领域集合。
45.其中,预设第一相似度阈值可以根据实际需求设置和调整。
46.相似度越小,对应的两个第一用户越不具有类似的资讯阅读偏好行为,则迁移至课程领域中,越不具有类似的课程学习偏好行为;相似度越大,对应的两个第一用户越具有类似的资讯阅读偏好行为,则迁移至课程领域中,越具有类似的课程学习偏好行为。因而,将小于预设第一相似度阈值的第一相似度进行删除,将大于预设第一相似度阈值的第一相似度进行保留,从而筛选出具有类似的资讯阅读偏好行为的用户迁移至课程领域中。
47.对于所述第一相似度等于所述预设第一相似度阈值的情形,即可适用于所述第一相似度大于所述预设第一相似度阈值的情形,也可适用于所述第一相似度小于所述预设第一相似度阈的情形,本发明不做具体限制。
48.s14,针对所述第一用户领域集合中的任意一个第一用户对,从所述课程领域中获取与所述任意一个第一用户对匹配的第二用户对。
49.电子设备可以从预先存储的用户画像数据库中获取每个第一用户的用户画像及每个第二用户的用户画像,用户画像可以包括:年龄,性别,学历,职业等信息。根据第一用户的用户画像及第二用户的用户画像能够计算得到第一用户与第二用户之间的相似度。对于任意一个第一用户对中的两个第一用户,可以从多个第二用户中获取与其中一个第一用户相似度最大的第二用户,再从多个第二用户中获取与另一个第一用户相似度最大的第二用户,从而将获取的这两个第二用户确定为所述任意一个第一用户对配对的第二用户对。
50.s15,根据所述用户课程矩阵从多个所述第二用户对中获取多个目标第二用户对,并基于所述多个目标第二用户对构建所述课程领域的第二用户领域集合。
51.预先对资讯领域和课程领域进行偏好假设,假设资讯领域和课程领域为相似的领域,从而引入基于领域关系的迁移学习方法,将领域知识从资讯领域迁移到课程领域。
52.在介绍本实施例中的基于领域关系的迁移学习方法之前,先对迁移学习进行简单的介绍。迁移学习属于机器学习范畴,且是机器学习中一种新的学习范式,其算法能够从一个或者多个应用场景中提取知识用来帮助提高目标场景中的学习性能。涉及相关定义和术语概述如下:域是由特征空间和边缘概率分布组成。在一个特定的域中,任务由标签空间和目标概率函数组成。迁移学习的目的是获取源域和
学习任务的知识来帮助提升目标域中概率函数的学习。
53.本实施例中的基于领域关系的迁移学习方法的思想是利用资讯领域中用户之间的相关性,并假定具有类似资讯阅读偏好行为的用户在课程领域的课程学习中也具有其相似性。
54.在一个可选的实施方式中,所述根据所述用户课程矩阵从多个所述第二用户对中获取多个目标第二用户对包括:从所述用户课程矩阵中获取每个所述第二用户对中的两个第二用户的学习行为;根据所述第二用户对中的两个第二用户的学习行为计算所述第二用户对的第二相似度;当所述第二相似度大于预设第二相似度阈值时,将所述第二用户对确定为目标第二用户对。
55.该可选的实施方式中,根据学习行为计算第二用户对的第二相似度,从而确定第二用户对中的两个第二用户对课程的偏好程度。
56.在一个可选的实施方式中,所述根据所述第二用户对中的两个第二用户的学习行为计算所述第二用户对的第二相似度包括:对所述学习行为进行量化处理,得到偏好得分;根据所述偏好得分计算所述第二用户对的第二相似度。
57.具体的,第二用户领域集合中的第二用户对于课程领域中课程的偏好得分可以采用如下公式(2)进行计算:(2),其中,表示第二用户领域集合,表示第二用户对每个课程的学习行为的平均值,作为第二用户领域集合中的第二用户对课程的偏好得分,再计算两个偏好得分之间的欧式距离计算对应的第二用户对的第二相似度。
58.s16,为所述第二用户领域集合中的每个所述目标第二用户对进行课程的相互推荐。
59.第二用户领域集合中的任意一个目标第二用户对具有较高的偏好相似性,可以获取目标第二用户对中的每个目标第二用户的课程列表,然后将目标第二用户对中某个目标用户的课程列表与所述目标第二用户对中另一个目标用户的课程列表进行比对,确定目标第二用户对中每个目标第二用户的差别课程列表,从而将差别课程列表推荐给对相对的目标第二用户。
60.示例性的,假设目标第二用户对(第二用户a,第二用户b),第二用户a的课程列表t1为b1,b2,b7,b8,b10,第二用户b的课程列表t2为b2,b3,b4,b5,b6,根据课程列表t1和课程列表t2确定差别课程列表t11为b3,b4,b5,b6,将差别课程列表t11中的课程推荐为第二用户a,根据课程列表t1和课程列表t2确定差别课程列表t21为b1,b7,b8,b10,将差别课程列表t21中的课程推荐为第二用户b。
61.本发明提供的基于人工智能的课程推荐方法,在基于资讯领域中的第一用户阅读资讯的阅读行为生成用户资讯矩阵,及基于课程领域中的第二用户学习课程的学习行为生
成用户课程矩阵之后,通过用户资讯矩阵计算所述资讯领域中任意两个第一用户构成的第一用户对的第一相似度,并根据所述第一相似度构建所述资讯领域中的第一用户领域集合,得到了资讯领域中用户阅读资讯的偏好行为,针对所述第一用户领域集合中的任意一个第一用户对,从所述课程领域中获取与所述任意一个第一用户对匹配的第二用户对,从而根据所述用户课程矩阵从多个所述第二用户对中获取多个目标第二用户对,并基于所述多个目标第二用户对构建所述课程领域的第二用户领域集合,实现了利用迁移学习思想将用户阅读资讯的偏好行为迁移至课程领域中学习课程的偏好行为中,最后为所述第二用户领域集合中的每个所述目标第二用户对进行课程的相互推荐,有效的解决了课程推荐模型中的冷启动问题,不仅能够一次性为多个用户个性化的推荐课程,且实现的是两个相似用户的课程的相互推荐。
62.在计算相似度的过程,基于改进的相似性度量方法,不仅考虑向量之间的方向性问题,还兼顾了向量的大小,从而能够更准确地度量第一用户之间的相似度,保证获取源域知识的可用性,有效避免了“负迁移”问题。针对资讯领域中用户资讯矩阵的高稀疏性问题进行了非稀疏处理,减少了数据量的计算,保证了后续的相似度计算过程中的可用度。
63.在实际应用中,解决了课程推荐模型中用户冷启动问题,从技术和业务角度都有重要意义。一方面可以改进和优化课程推荐系统,提高模型鲁棒性和智能化;另一方面能快速发掘未知用户的课程需求,最大化发挥课程推荐系统的作用来实现课程推荐,解决用户亟需的学习诉求;同时为针对特定人群的培训课程生产提供参考和决策依据。
64.实施例二图2是本发明实施例二提供的基于人工智能的课程推荐装置的结构图。
65.在一些实施例中,所述基于人工智能的课程推荐装置20可以包括多个由计算机程序段所组成的功能模块。所述基于人工智能的课程推荐装置20中的各个程序段的计算机程序可以存储于电子设备的存储器中,并由至少一个处理器所执行,以执行(详见图1描述)基于人工智能的课程推荐的功能。
66.本实施例中,所述基于人工智能的课程推荐装置20根据其所执行的功能,可以被划分为多个功能模块。所述功能模块可以包括:矩阵生成模块201、资讯计算模块202、第一构建模块203、用户匹配模块204、第二构建模块205及课程推荐模块206。本发明所称的模块是指一种能够被至少一个处理器所执行并且能够完成固定功能的一系列计算机程序段,其存储在存储器中。在本实施例中,关于各模块的功能将在后续的实施例中详述。
67.所述矩阵生成模块201,用于基于资讯领域中的第一用户阅读资讯的阅读行为生成用户资讯矩阵,及基于课程领域中的第二用户学习课程的学习行为生成用户课程矩阵。
68.其中,课程领域是指进行培训课程推荐的领域,资讯领域是指与课程领域相关的领域。将课程领域作为目标域,资讯领域作为源域。所述资讯领域的用户为第一用户,所述课程领域的用户为第二用户。即,课程领域的用户与资讯领域的用户为不同的用户。
69.由于在课程领域中存在用户冷启动问题,即缺少用户与课程的历史交互数据,因而无法通过课程推荐模型判断用户对课程的需求偏好,进而无法实现个性化的课程推荐。缺少与课程的历史交互数据的用户称之为课程领域的冷启动用户。
70.本实施例通过获取资讯领域的用户资讯矩阵来为课程领域的冷启动用户使用课程推荐模型,从而为冷启动用户进行个性化和精准化的课程推荐。
71.在一个可选的实施方式中,所述矩阵生成模块201基于资讯领域中的第一用户阅读资讯的阅读行为生成用户资讯矩阵,及基于课程领域中的第二用户学习课程的学习行为生成用户课程矩阵包括:获取每个所述第一用户阅读每个资讯的阅读行为;根据所述阅读行为生成用户资讯稀疏矩阵;对所述用户资讯稀疏矩阵进行非稀疏化处理,得到资讯领域的用户资讯矩阵;获取每个所述第二用户学习每门课程的学习行为;根据所述学习行为生成所述课程领域的用户课程矩阵。
72.电子设备中预设存储有第一数据库和第二数据库,其中,第一数据库中记录有多个第一用户、多个资讯及每个第一用户阅读每个资讯的阅读行为,所述阅读行为可以包括:阅读时长,阅读次数。第二数据库中记录有多个第二用户、多个课程及每个第二用户学习每门课程的学习行为,所述学习行为可以包括:学习时长,学习次数。
73.假设用户阅读资讯的阅读次数为,则用户资讯稀疏矩阵中每个元素的含义可用三元组表示。假设用户学习课程的学习行为为,则用户课程矩阵中每个元素的含义可用三元组表示。
74.由于实际应用中,资讯的内容量非常大,即资讯的数量远大于课程的数量,因而生成的用户资讯稀疏矩阵是一个稀疏矩阵,稀疏矩阵不利于后续的计算和相似性度量,因此需要对生成的用户资讯稀疏矩阵进行非稀疏化处理。
75.在一个可选的实施方式中,所述对所述用户资讯稀疏矩阵进行非稀疏化处理,得到资讯领域的用户资讯矩阵包括:获取所述用户资讯稀疏矩阵中每个资讯所属的类别标签;将同一个第一用户在同一个类别标签下的资讯的阅读行为进行加和处理,得到每个第一用户阅读每类资讯的阅读行为;根据所述每个第一用户阅读每类资讯的阅读行为生成所述资讯领域的用户资讯矩阵。
76.假设用户阅读资讯的阅读行为,用户阅读资讯的阅读行为,用户阅读资讯的阅读行为,资讯、资讯、资讯均对应类别标签,用户阅读类资讯的阅读行为,则用户资讯矩阵中每个元素的含义可用三元组表示。即,将用户资讯稀疏矩阵中的三元组转换为用户资讯矩阵中的三元组。
77.该可选的实施方式,通过将同一个类别标签下的资讯的阅读行为进行加和处理,去掉了资讯这一元素,大大减少了数据量,避免了用户资讯矩阵的稀疏,非稀疏的用户资讯矩阵,有利于后续的相似度计算。
78.所述资讯计算模块202,用于根据所述用户资讯矩阵计算所述资讯领域中任意两个第一用户构成的第一用户对的第一相似度。
79.对于资讯领域中的第一用户而言,任意两个第一用户之间可以计算相似度。相似度越大,表明对应的两个第一用户之间越具有偏好一致性;相似度越小,表明对应的两个第一用户之间越不具有偏好一致性。
80.在一个可选的实施方式中,所述资讯计算模块202根据所述用户资讯矩阵计算所
述资讯领域中任意两个第一用户构成的第一用户对的第一相似度包括:获取所述用户资讯矩阵中每个所述第一用户的用户向量;计算每个所述用户向量的均值向量;计算每个所述用户向量与对应的所述均值向量之间的差值向量;根据任意两个第一用户的差值向量计算所述任意两个第一用户构成的第一用户对的第一相似度。
81.其中,每个第一用户的用户向量为用户资讯矩阵中每个第一用户的行向量。
82.该可选的实施方式,可以通过如下公式(1)计算相似度:(1),其中,表示用户资讯矩阵中第一用户的用户向量,为均值向量,表示用户资讯矩阵中第一用户的用户向量,表示第一用户与第一用户之间的相似度。
83.该可选的实施方式中,通过计算每个第一用户的均值向量,在使用第一用户的用户向量减去对应的均值向量,最后根据得到的差值向量计算第一相似度,不仅考虑了向量之间的方向性,更兼顾了向量的具体大小,因此计算得到的第一相似度更为准确。
84.所述第一构建模块203,用于根据所述第一相似度构建所述资讯领域的第一用户领域集合。
85.在计算得到资讯领域中第一用户与第一用户之间的第一相似度之后,由于假定具有类似资讯阅读偏好行为的第一用户在课程领域的课程学习中也具有其相似性,因而可以将资讯领域中第一用户与第一用户之间的相似度迁移至课程领域中第二用户与第二用户之间的相似度,并根据所述第一相似度确定课程领域中第二用户领域集合。
86.在一个可选的实施方式中,所述第一构建模块203根据所述第一相似度构建所述资讯领域的第一用户领域集合包括:判断所述第一相似度是否小于预设第一相似度阈值;当所述第一相似度大于所述预设第一相似度阈值时,保留所述第一相似度;当所述第一相似度小于所述预设第一相似度阈值时,删除所述第一相似度;将根据保留后的第一相似度对应的两个第一用户确定为第一用户对;根据多个所述第一用户对构建所述资讯领域的第一用户领域集合。
87.其中,预设第一相似度阈值可以根据实际需求设置和调整。
88.相似度越小,对应的两个第一用户越不具有类似的资讯阅读偏好行为,则迁移至课程领域中,越不具有类似的课程学习偏好行为;相似度越大,对应的两个第一用户越具有类似的资讯阅读偏好行为,则迁移至课程领域中,越具有类似的课程学习偏好行为。因而,将小于预设第一相似度阈值的第一相似度进行删除,将大于预设第一相似度阈值的第一相似度进行保留,从而筛选出具有类似的资讯阅读偏好行为的用户迁移至课程领域中。
89.对于所述第一相似度等于所述预设第一相似度阈值的情形,即可适用于所述第一相似度大于所述预设第一相似度阈值的情形,也可适用于所述第一相似度小于所述预设第一相似度阈的情形,本发明不做具体限制。
90.所述用户匹配模块204,用于针对所述第一用户领域集合中的任意一个第一用户
对,从所述课程领域中获取与所述任意一个第一用户对匹配的第二用户对。
91.电子设备可以从预先存储的用户画像数据库中获取每个第一用户的用户画像及每个第二用户的用户画像,用户画像可以包括:年龄,性别,学历,职业等信息。根据第一用户的用户画像及第二用户的用户画像能够计算得到第一用户与第二用户之间的相似度。对于任意一个第一用户对中的两个第一用户,可以从多个第二用户中获取与其中一个第一用户相似度最大的第二用户,再从多个第二用户中获取与另一个第一用户相似度最大的第二用户,从而将获取的这两个第二用户确定为所述任意一个第一用户对配对的第二用户对。
92.所述第二构建模块205,用于根据所述用户课程矩阵从多个所述第二用户对中获取多个目标第二用户对,并基于所述多个目标第二用户对构建所述课程领域的第二用户领域集合。
93.预先对资讯领域和课程领域进行偏好假设,假设资讯领域和课程领域为相似的领域,从而引入基于领域关系的迁移学习方法,将领域知识从资讯领域迁移到课程领域。
94.在介绍本实施例中的基于领域关系的迁移学习方法之前,先对迁移学习进行简单的介绍。迁移学习属于机器学习范畴,且是机器学习中一种新的学习范式,其算法能够从一个或者多个应用场景中提取知识用来帮助提高目标场景中的学习性能。涉及相关定义和术语概述如下:域是由特征空间和边缘概率分布组成。在一个特定的域中,任务由标签空间和目标概率函数组成。迁移学习的目的是获取源域和学习任务的知识来帮助提升目标域中概率函数的学习。
95.本实施例中的基于领域关系的迁移学习方法的思想是利用资讯领域中用户之间的相关性,并假定具有类似资讯阅读偏好行为的用户在课程领域的课程学习中也具有其相似性。
96.在一个可选的实施方式中,所述第二构建模块205根据所述用户课程矩阵从多个所述第二用户对中获取多个目标第二用户对包括:从所述用户课程矩阵中获取每个所述第二用户对中的两个第二用户的学习行为;根据所述第二用户对中的两个第二用户的学习行为计算所述第二用户对的第二相似度;当所述第二相似度大于预设第二相似度阈值时,将所述第二用户对确定为目标第二用户对。
97.该可选的实施方式中,根据学习行为计算第二用户对的第二相似度,从而确定第二用户对中的两个第二用户对课程的偏好程度。
98.在一个可选的实施方式中,所述根据所述第二用户对中的两个第二用户的学习行为计算所述第二用户对的第二相似度包括:对所述学习行为进行量化处理,得到偏好得分;根据所述偏好得分计算所述第二用户对的第二相似度。
99.具体的,第二用户领域集合中的第二用户对于课程领域中课程的偏好得分可以采用如下公式(2)进行计算:(2),
其中,表示第二用户领域集合,表示第二用户对每个课程的学习行为的平均值,作为第二用户领域集合中的第二用户对课程的偏好得分,再计算两个偏好得分之间的欧式距离计算对应的第二用户对的第二相似度。
100.所述课程推荐模块206,用于为所述第二用户领域集合中的每个所述目标第二用户对进行课程的相互推荐。
101.第二用户领域集合中的任意一个目标第二用户对具有较高的偏好相似性,可以获取目标第二用户对中的每个目标第二用户的课程列表,然后将目标第二用户对中某个目标用户的课程列表与所述目标第二用户对中另一个目标用户的课程列表进行比对,确定目标第二用户对中每个目标第二用户的差别课程列表,从而将差别课程列表推荐给对相对的目标第二用户。
102.示例性的,假设目标第二用户对(第二用户a,第二用户b),第二用户a的课程列表t1为b1,b2,b7,b8,b10,第二用户b的课程列表t2为b2,b3,b4,b5,b6,根据课程列表t1和课程列表t2确定差别课程列表t11为b3,b4,b5,b6,将差别课程列表t11中的课程推荐为第二用户a,根据课程列表t1和课程列表t2确定差别课程列表t21为b1,b7,b8,b10,将差别课程列表t21中的课程推荐为第二用户b。
103.本发明提供的基于人工智能的课程推荐装置,在基于资讯领域中的第一用户阅读资讯的阅读行为生成用户资讯矩阵,及基于课程领域中的第二用户学习课程的学习行为生成用户课程矩阵之后,通过用户资讯矩阵计算所述资讯领域中任意两个第一用户构成的第一用户对的第一相似度,并根据所述第一相似度构建所述资讯领域中的第一用户领域集合,得到了资讯领域中用户阅读资讯的偏好行为,针对所述第一用户领域集合中的任意一个第一用户对,从所述课程领域中获取与所述任意一个第一用户对匹配的第二用户对,从而根据所述用户课程矩阵从多个所述第二用户对中获取多个目标第二用户对,并基于所述多个目标第二用户对构建所述课程领域的第二用户领域集合,实现了利用迁移学习思想将用户阅读资讯的偏好行为迁移至课程领域中学习课程的偏好行为中,最后为所述第二用户领域集合中的每个所述目标第二用户对进行课程的相互推荐,有效的解决了课程推荐模型中的冷启动问题,不仅能够一次性为多个用户个性化的推荐课程,且实现的是两个相似用户的课程的相互推荐。
104.在计算相似度的过程,基于改进的相似性度量方法,不仅考虑向量之间的方向性问题,还兼顾了向量的大小,从而能够更准确地度量第一用户之间的相似度,保证获取源域知识的可用性,有效避免了“负迁移”问题。针对资讯领域中用户资讯矩阵的高稀疏性问题进行了非稀疏处理,减少了数据量的计算,保证了后续的相似度计算过程中的可用度。
105.在实际应用中,解决了课程推荐模型中用户冷启动问题,从技术和业务角度都有重要意义。一方面可以改进和优化课程推荐系统,提高模型鲁棒性和智能化;另一方面能快速发掘未知用户的课程需求,最大化发挥课程推荐系统的作用来实现课程推荐,解决用户亟需的学习诉求;同时为针对特定人群的培训课程生产提供参考和决策依据。
106.实施例三本实施例提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述基于人工智能的课程推荐方法实施例中的步
骤,例如图1所示的s11

s16:s11,基于资讯领域中的第一用户阅读资讯的阅读行为生成用户资讯矩阵,及基于课程领域中的第二用户学习课程的学习行为生成用户课程矩阵;s12,根据所述用户资讯矩阵计算所述资讯领域中任意两个第一用户构成的第一用户对的第一相似度;s13,根据所述第一相似度构建所述资讯领域的第一用户领域集合;s14,针对所述第一用户领域集合中的任意一个第一用户对,从所述课程领域中获取与所述任意一个第一用户对匹配的第二用户对;s15,根据所述用户课程矩阵从多个所述第二用户对中获取多个目标第二用户对,并基于所述多个目标第二用户对构建所述课程领域的第二用户领域集合;s16,为所述第二用户领域集合中的每个所述目标第二用户对进行课程的相互推荐。
107.或者,该计算机程序被处理器执行时实现上述装置实施例中各模块/单元的功能,例如图2中的模块201

206:所述矩阵生成模块201,用于基于资讯领域中的第一用户阅读资讯的阅读行为生成用户资讯矩阵,及基于课程领域中的第二用户学习课程的学习行为生成用户课程矩阵;所述资讯计算模块202,用于根据所述用户资讯矩阵计算所述资讯领域中任意两个第一用户构成的第一用户对的第一相似度;所述第一构建模块203,用于根据所述第一相似度构建所述资讯领域的第一用户领域集合;所述用户匹配模块204,用于针对所述第一用户领域集合中的任意一个第一用户对,从所述课程领域中获取与所述任意一个第一用户对匹配的第二用户对;所述第二构建模块205,用于根据所述用户课程矩阵从多个所述第二用户对中获取多个目标第二用户对,并基于所述多个目标第二用户对构建所述课程领域的第二用户领域集合;所述课程推荐模块206,用于为所述第二用户领域集合中的每个所述目标第二用户对进行课程的相互推荐。
108.实施例四参阅图3所示,为本发明实施例三提供的电子设备的结构示意图。在本发明较佳实施例中,所述电子设备3包括存储器31、至少一个处理器32、至少一条通信总线33及收发器34。
109.本领域技术人员应该了解,图3示出的电子设备的结构并不构成本发明实施例的限定,既可以是总线型结构,也可以是星形结构,所述电子设备3还可以包括比图示更多或更少的其他硬件或者软件,或者不同的部件布置。
110.在一些实施例中,所述电子设备3是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路、可编程门阵列、数字处理器及嵌入式设备等。所述电子设备3还可包括客户设备,所述客户设备包括但不限于任何一种可与客户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互的电子产品,例如,个人计算机、平板电脑、智能手机、数码相机等。
111.需要说明的是,所述电子设备3仅为举例,其他现有的或今后可能出现的电子产品如可适应于本发明,也应包含在本发明的保护范围以内,并以引用方式包含于此。
112.在一些实施例中,所述存储器31中存储有计算机程序,所述计算机程序被所述至少一个处理器32执行时实现如所述的基于人工智能的课程推荐方法中的全部或者部分步骤。所述存储器31包括只读存储器(read

only memory,rom)、可编程只读存储器(programmable read

only memory,prom)、可擦除可编程只读存储器(erasable programmable read

only memory,eprom)、一次可编程只读存储器(one

time programmable read

only memory,otprom)、电子擦除式可复写只读存储器(electrically

erasable programmable read

only memory,eeprom)、只读光盘(compact disc read

only memory,cd

rom)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
113.进一步地,所述计算机可读存储介质可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据区块链节点的使用所生成的数据等。
114.本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
115.在一些实施例中,所述至少一个处理器32是所述电子设备3的控制核心(control unit),利用各种接口和线路连接整个电子设备3的各个部件,通过运行或执行存储在所述存储器31内的程序或者模块,以及调用存储在所述存储器31内的数据,以执行电子设备3的各种功能和处理数据。例如,所述至少一个处理器32执行所述存储器中存储的计算机程序时实现本发明实施例中所述的基于人工智能的课程推荐方法的全部或者部分步骤;或者实现基于人工智能的课程推荐装置的全部或者部分功能。所述至少一个处理器32可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(central processing unit,cpu)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。
116.在一些实施例中,所述至少一条通信总线33被设置为实现所述存储器31以及所述至少一个处理器32等之间的连接通信。
117.尽管未示出,所述电子设备3还可以包括给各个部件供电的电源(比如电池),优选的,电源可以通过电源管理装置与所述至少一个处理器32逻辑相连,从而通过电源管理装置实现管理充电、放电、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述电子设备3还可以包括多种传感器、蓝牙模块、wi

fi模块等,在此不再赘述。
118.上述以软件功能模块的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,电子设备,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分。
119.在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
120.所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,既可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
121.另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
122.对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或,单数不排除复数。说明书中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
123.最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1