本发明涉及网络信息处理技术领域,尤其是一种教育信息推荐方法、装置及系统。
背景技术:
基于红皇后假说,信息社会需要个人进行不断的学习才能保持不落后,作为教育机构,如果能提前预知学习者的教育和学习需求,就能及时提供对应的资源,从而在与其他教育机构的竞争中取得优势。
传统的推荐算法:协同过滤算法、基于内容的推荐算法和混合推荐算法也是个性化预测,但不能很好的捕捉e-learning领域中学习者和知识之间的拓扑关系和知识与知识之间的递进关系。传统的推荐算法在教育信息领域有明显的局限性,导致推荐效果下降和学习者体验不佳。
技术实现要素:
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本发明的一个目的是提供一种教育信息推荐方法、装置及系统。
本发明实施例所采用的技术方案是:
一方面,本发明实施例提供一种教育信息推荐方法,包括步骤:获取学习者的网络访问记录并构建对应的学习网络;基于所述学习网络产生随机的节点序列;表征所述节点序列以获得对应的表征向量;基于协同过滤算法处理所述表征向量以得到学习者针对于资源的评分,根据评分建立推荐列表。
优选地,所述网络访问记录包括对资源的网络连接行为的记录,以所述学习者对所述资源的网络连接行为作为节点,根据网络连接行为的发生顺序连接不同的节点以形成学习者的向量,叠加若干学习者的向量,以节点间的连接次数作为节点间的权值的设置基础,结合所述节点和所述权值以构建对应的学习网络。
优选地,基于node2vec算法表征所述节点序列以获得对应的表征向量。
优选地,所述协同过滤算法包括处理公式:
优选地,基于top-k算法处理所述评分以建立推荐列表。
优选地,根据预设的处理规则处理所述资源以获取涉及学习的资源,标记其为学习资源,以所述学习者对所述学习资源的网络连接行为作为节点,根据网络连接行为的发生顺序连接不同的节点以形成学习者的向量,叠加若干学习者的向量,以节点间的连接次数作为节点间的权值的设置基础,结合所述节点和所述权值以构建对应的学习网络。
优选地,根据推荐列表和学习者的实际选择资源计算评价参数,根据评价参数修改表征计算参数和协同过滤参数,其中,所述评价参数包括准确率、召回率和ndcg,所述表征计算参数用于计算表征向量,所述协同过滤参数用于协同过滤算法。
所述根据预设的处理规则处理所述资源包括:基于关键字从所述资源中提取包含所述关键字的资源,排除不包含所述关键字的资源,所述关键字包括学科名称、教育机关名称、算法名称、姓名和科学术语。
另一方面,本发明实施例提供一种教育信息推荐装置,包括:建模单元,用于获取学习者的网络访问记录并构建对应的学习网络;模拟单元,用于基于所述学习网络产生随机的节点序列;处理单元,用于表征所述节点序列以获得对应的表征向量;评分单元,用于基于协同过滤算法处理所述表征向量以得到学习者针对于资源的评分,根据评分建立推荐列表。
另一方面,本发明实施例一种教育信息推荐系统,包括:数据采集端,用于获取学习者的网络访问记录;网络构建模块,用于根据网络访问记录构建对应的学习网络;网络表征模块,用于基于所述学习网络产生随机的节点序列,表征所述节点序列以获得对应的表征向量;协同过滤模块,用于基于协同过滤算法处理所述表征向量以得到学习者针对于资源的评分,根据评分建立推荐列表;数据转换模块,用于转换数据格式;包括输入组件和输出组件的前端展现模块。
本发明实施例的有益效果是:
本发明实施例通过获取学习者的网络访问记录并构建学习网络;基于学习网络产生随机的节点序列以形成多种行为的可能性;表征节点序列以获得表征向量;基于协同过滤算法处理表征向量以得到学习者针对于资源的评分,能够获得学习者的行为倾向;根据评分建立推荐列表以供选择。
附图说明
图1是本发明实施例的教育信息推荐方法示意图;
图2是本发明实施例的教育信息推荐装置示意图;
图3是本发明实施例的教育信息推荐系统示意图;
图4是本发明实施例的统一数据规格的推荐系统示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
实施例1
本实施例提供如图1所示的一种教育信息推荐方法,包括步骤:
s1、获取学习者的网络访问记录并构建对应的学习网络;
s2、基于学习网络产生随机的节点序列;
s3、表征节点序列以获得对应的表征向量;
s4、基于协同过滤算法处理表征向量以得到学习者针对于资源的评分,根据评分建立推荐列表。
可以追踪学习者名,获得学习者的网络访问记录,通过关键字的方式分解网络访问记录以获得关键信息,关键信息包括资源,资源为检索的关键字,以资源作为节点,以网络连接关系,即两者之间发生网络连接作为边,例如学习者检索资源a,网上购买某物品,从资源a检索到资源b等,叠加若干学习者的节点与边以构建对应的学习网络;
学习网络中模拟有或无倾向的随机行走,即赋予随机方向,随机次数的连边,产生大量节点序列,其中,可以施加倾向,即随机方向中,某一些方向出现的概率大于其他方向,或者,随机次数中的一些连边次数的出现概率大于其他次数,产生节点序列的目的在于提供学习者的可能的行为种类,在本实施例中,行为即为查找某些资源;
常用的表征的算法有deepwalk,line,node2vec等,经测试,node2vec可以取得相对较好的结果;同时根据历史经验,这些算法在处理大数据集时学习时间较长,对于互联网场景,较长的学习时间将导致模型更新缓慢,从而带来推荐实时性差,导致学习者体验下降,经测试,表征与分布式计算(如spark)的结合能够较好地解决这一问题,即通过分布式计算平台执行表征的处理,可以显著提高整个信息推荐方法的处理效率;
协同过滤算法包括处理公式:
当得到评分,则基于top-k算法处理评分以建立推荐列表,推荐列表包括评分和评分所对应的资源,本实施例中,资源指代数据、信息或商品。
具体的,通过预设的处理规则处理资源,即通过关键字的选择从原始的资源中提取特定的一部分,即涉及学习的资源,例如,通过学科名称、教育机关名称、算法名称、姓名和科学术语等关键字可以确定对应的资源,例如大学、物理、化学、生物、算法、某个行业内专家的姓名等,此时,学习网络转换为专门的涉及教育的信息学习网络,
具体的,需要对上述的推荐方法进行时时的更新,可以根据推荐列表和学习者的实际选择资源计算评价参数,根据评价参数修改表征计算参数和协同过滤参数,其中,所述评价参数包括准确率、召回率和ndcg,也可以采取其的参数;例如学习者实际选择的资源具体包括通过淘宝等网站购买到专门的书籍,此时,从淘宝获取学习者的购物记录,即网络访问记录,然后标记发送给该学习者的推荐列表,如果学习者购买的书籍出现在推荐列表,则说明准确率较高;评价参数中的precision代表top-k推荐的准确率,recall代表top-k推荐的召回率,它们计算分别如下:
实施例2
本实施例提供如图2的一种教育信息推荐装置,包括:建模单元1,用于获取学习者的网络访问记录并构建对应的学习网络;模拟单元2,用于基于所述学习网络产生随机的节点序列;处理单元3,用于表征所述节点序列以获得对应的表征向量;评分单元4,用于基于协同过滤算法处理所述表征向量以得到学习者针对于资源的评分,根据评分建立推荐列表。
实施例3
本实施例提供如图3所示的一种教育信息推荐系统和如图4的统一数据规格的推荐系统,包括:
数据采集端5,用于获取学习者的网络访问记录;
网络构建模块6,用于根据网络访问记录构建对应的学习网络;
网络表征模块7,用于基于所述学习网络产生随机的节点序列,表征所述节点序列以获得对应的表征向量;
协同过滤模块8,用于基于协同过滤算法处理所述表征向量以得到学习者针对于资源的评分,根据评分建立推荐列表;
数据转换模块9(基于restfulapi),用于转换数据格式;
前端展现模块10,用于获取学习者的操作和输出推荐列表。
其中,图3中,数据转换模块9不存在,数据采集端5连接网络构建模块6,网络构建模块6连接网络表征模块7,网络表征模块7连接协同过滤模块8,数据采集端5、网络构建模块6、网络表征模块7、协同过滤模块8均直接连接前端展现模块10。
其中,图4中,数据采集端5连接网络构建模块6,网络构建模块6连接网络表征模块7,网络表征模块7连接协同过滤模块8,而数据转换模块9全部连接其他的模块,前端展现模块10连接数据转换模块9。
数据采集端和网络构建模块:对于真实的应用场景,原始数据,即网络访问记录往往是海量和有残缺的,而且随着时间数据还在源源不断地增长,因此需要能够对流式数据进行清洗并将其转化为能被网络表征学习算法所使用的网络图数据,即学习网络,在实践中,常使用消息队列kafka来接受流式数据;关于图的构建,可以根据任务和历史经验来构建同质或异质图,不同的构图方法在不同的场景会有不同的效果,同质即人人或物物,异质为人物,人即学习者,物即资源。
网络表征模块:网络表征模块是能够处理图数据的模型学习模块,常用的算法有deepwalk,line,node2vec等,经测试,node2vec可以取得相对较好的结果;同时根据历史经验,这些算法在处理大数据集时学习时间较长,对于互联网场景,较长的学习时间将导致模型更新缓慢,从而带来推荐实时性差,导致学习者体验下降,经测试,网络表征模块与分布式计算(如spark)的结合能够较好地解决这一问题,即利用分布式计算平台执行计算。
协同过滤模块:网络表征模块在处理学习网络的数据后可以得到节点表征的向量,通过使用这些向量与传统的协同过滤模块相结合,就可以得到针对学习者的个性化推荐结果,结合历史信息的时间长短,对于不同时间段的历史信息授以不同的权重,从而体现出时间对学习者兴趣变化的影响,处理公式为:
系统还可以设置有表征结果存储模块:表征结果存储模块往往使用非关系型数据库或key-value型数据库存储,以期能够快速获取表征向量,增加系统的实时性和学习者体验,在非关系型数据库中,学习者或商品/知识节点/ugc节点的唯一标识id为key,其表征后的向量结果为value。
数据转换模块:rest是表现层状态转移(representationalstatetransfer)的缩写,restfulapi用url来定义资源。在本实施例的系统中,每一个学习者的信息和对应的表征向量,每一个教育资源或ugc的信息和对应的表征向量,每一个学习者当前状态对应的top-k推荐列表等都可以用restfulapi来表示,从而实现一套后端系统适配多个前端系统(web端,移动端,机器人端等)。
前端展现模块:前端主要负责与学习者交互的人机交互功能,包括诸如鼠标键盘等输入组件,显示屏等输出组件,由于restfulapi的存在,一套后端逻辑可以适配多个前端系统,在教育机器人产品上进行了原型开发,教育机器人是由生产厂商专门开发的以激发学生学习兴趣、培养学生综合能力为目标的机器人成品、套装或散件。教育机器人与基于学习网络和网络表征学习的推荐系统相结合,在交互方面解决了提升学习者学习兴趣和交互方式多样化,在算法方面实现了学习网络和推荐系统的结合,实现了个性化的推荐。从而有效的解决了教育领域的交互效果不足和个性化推荐效果差的痛点。
上是对本发明的较佳实施进行了具体说明,但本发明创造并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。