邵长旭
今天的工作是做了前几天说的label问题:
为以后知识图谱系统做铺垫,首先在修改Knowledge表结构:
在view中,写输入框和添加按钮:
<%end%>%end%>
下面写按钮的响应:
拿到各个相关值,将计算值加一、然后将关键词连成一个string对象,中间利用;隔开,以便分析使用时提取,然后将修改好的值设回对象,利用ajax发送请求局部渲染页面。
效果如下:
王子悦
上回说到可能有好多人匹配不到学习路径,需要一个其他内容的推荐,所以今天就做了这个:
生成部分的主要逻辑是查询用户最近的学习记录,对记录中的每一个项,查询它到达知识图谱中其他项的支持度,并且分别累加,这样就得到了用户最近学习序列到图中所有项的支持度,按降序排列,筛选前n个且不在最近学习序列中的元素作为推荐事件推荐给用户,实现如下:
然后是显示,这部分并没有什么技术含量了,只是把之前各个部分整合起来,然后写的规整一点。其中稍微研究了一下的是有一个序列和子序列的问题,就是有可能会有【【1】【2】【1,2】】这种情况,这种其实是有意义的,表示的是先学1,再学2,然后同时复习1,2,但是说实话直接这么显示出来看起来有点蠢,所以想了个算法把频繁序列里这种东西都去掉了,算法在代码注释中:
最后的输出结果大概是这样的:
[-1, -1, -1, 6, -1]
抱歉,系统并没有匹配到合适的学习路径。
系统根据您最近的学习内容,为您推荐的学习内容是:
[智能软件, C++]
==============================
抱歉,系统并没有匹配到合适的学习路径。
系统根据您最近的学习内容,为您推荐的学习内容是:
[Java, 高等数学]
==============================
抱歉,系统并没有匹配到合适的学习路径。
系统根据您最近的学习内容,为您推荐的学习内容是:
[Java]
==============================
系统根据您最近的学习内容,为您推荐的学习路径是:
[Java] ==> [高等数学] ==> [数据库, 计算机 络],
其中您学过了:
[高等数学] ==> [数据库, 计算机 络]
请查漏补缺,并进行接下来的学习。
系统根据您最近的学习内容,为您推荐的学习内容是:
[C++]
==============================
抱歉,系统并没有匹配到合适的学习路径。
系统根据您最近的学习内容,为您推荐的学习内容是:
[C++, 智能软件]
==============================当然了,这只是输出到控制台的,也可以调整一下打到json里,这样就可以接到 页上去了。还是用的之前的测试数据集,所以可以看到依然有昨天说的那个问题,很多都匹配不到序列,但是已经有针对各自的推荐了。让我比较惊喜的是实验结果看起来并不是单纯的推荐数据库里频繁的东西,的确每个人都不太一样,而且有的人因为已经学的多,也的确能推荐到比较冷门的东西,比如智能软件,看来这几天编的算法还有点成效。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!