当前位置: 首页 > 专利查询>北京大学专利>正文

一种支持开源项目碎片化学习的推送方法和系统技术方案

技术编号:26375326 阅读:58 留言:0更新日期:2020-11-19 23:44
本发明专利技术实施例提供了一种支持开源项目碎片化学习的推送方法和系统,该方法和系统具体为:构建开源项目的知识图谱;获取所述知识图谱的学习入口节点;以所述学习入口节点作为路径起点,以用户有学习需求的目标节点为路径终点,分别获得多条可达路径,选取覆盖最广的路径作为目标学习路径;对所述目标学习路径所涉及的周边子图进行切割,得到目标子图;对所述目标子图进行社区挖掘,获得多个图网络社区,分别生成目标学习内容;依次将所述目标学习内容碎片化推送给用户。本发明专利技术实施例提供的方法和系统,通过构建开源项目的知识图谱,分析学习入口,根据用户需求推荐学习路径,生成碎片化学习内容推送给用户,提高开发者对陌生开源项目的学习效率。

【技术实现步骤摘要】
一种支持开源项目碎片化学习的推送方法和系统
本专利技术涉及开源项目
,特别是涉及一种支持开源项目碎片化学习的推送方法和一种支持开源项目碎片化学习的推送系统。
技术介绍
开源项目(opensourceproject),是一种开放源码的软件项目,开发者可以通过开源社区修改开源项目的源码,定制自己的个性化产品。大型的开源项目通常会由多个开发者共同参与开发,并吸引众多的开发者来学习该开源项目的源代码,这些开发者在不断的学习和技术历练之后,也可能进入到开源项目的主要分支中,为开源项目贡献自己的力量。现今开发者大多数并没有整块的时间对陌生的开源项目进行系统地学习和了解,而几乎都是对开源项目中单独的某一个或某一类功能函数有学习需求,然后利用零星的空闲时间对自己需要的项目代码知识进行学习。然而,因为新加入的开发者对开源项目没有系统的认知,对项目代码的知识架构不了解,往往很难快速找到自己的需要的函数、文件、以及相关的知识信息,并且,由于碎片化学习内容的跳跃性,使得开发者难以对所有的学习内容进行分类整合,形成系统的认知,学习效率十分低下。...

【技术保护点】
1.一种支持开源项目碎片化学习的推送方法,其特征在于,包括:/n构建所述开源项目的知识图谱,并生成所述知识图谱的嵌入表示;/n分析并获取所述知识图谱的学习入口节点;/n预先设计项目代码的学习路径推荐算法,基于所述学习路径推荐算法,以所述学习入口节点作为路径起点,以用户的目标节点为路径终点,进行路径搜索,分别获得多条可达路径,在所述多条可达路径中选取覆盖最广的路径作为目标学习路径;/n对所述目标学习路径所涉及的周边子图进行切割,得到目标子图;/n基于图数据社区挖掘算法Louvain,对所述目标子图进行社区挖掘,获得多个图网络社区,对每一个所述图网络社区中包含的学习内容进行整合,生成目标学习内容;...

【技术特征摘要】
1.一种支持开源项目碎片化学习的推送方法,其特征在于,包括:
构建所述开源项目的知识图谱,并生成所述知识图谱的嵌入表示;
分析并获取所述知识图谱的学习入口节点;
预先设计项目代码的学习路径推荐算法,基于所述学习路径推荐算法,以所述学习入口节点作为路径起点,以用户的目标节点为路径终点,进行路径搜索,分别获得多条可达路径,在所述多条可达路径中选取覆盖最广的路径作为目标学习路径;
对所述目标学习路径所涉及的周边子图进行切割,得到目标子图;
基于图数据社区挖掘算法Louvain,对所述目标子图进行社区挖掘,获得多个图网络社区,对每一个所述图网络社区中包含的学习内容进行整合,生成目标学习内容;
依次选取每一个所述图网络社区对应的所述目标学习内容,分别将所述目标学习内容碎片化推送给所述用户。


2.根据权利要求1所述的方法,其特征在于,分析并获取所述知识图谱的学习入口节点,包括:
选取所述知识图谱中所有入度为0的节点作为初选节点;然后筛选出所述初选节点的自身出度不小于A、同时该节点能够到达的节点数量不小于B的次选节点,其中,A≤B;将所述次选节点作为所述学习入口节点。


3.根据权利要求2所述的方法,其特征在于,分析并获取所述知识图谱的学习入口节点,还包括:
依据所述节点的自身出度、所述节点能够到达的节点数量这两个指标,对所述次选节点进行排序,在保证学习入口数量适中的前提下,选择百分比排名不小于P的节点作为学习入口节点,其中,0≤P<1。


4.根据权利要求1所述的方法,其特征在于,进行路径搜索之前,还包括:
在用户端页面中为所述用户提供输入框,以供所述用户输入学习需求,依据所述学习需求,基于语义分析算法,为所述用户匹配相应的所述目标节点,所述目标节点也就是在所述知识图谱中,对所述用户来说,有明确学习需求的知识节点。


5.根据权利要求1所述的方法,其特征在于,基于所述学习路径推荐算法,以所述学习入口节点作为路径起点,进行路径搜索,分别获得多条可达路径,在所述多条可达路径中选取覆盖最广的路径作为目标学习路径,包括:
基于深度优先搜索算法(DFS),从每个学习入口节点到目标节点进行路径搜索,分别获取从多源节点到单一目标节点的多条可达路径,从所述多条可达路径中选取出覆盖知识图谱节点最多的一条路径,作为所述目标学习路径。


6.根据权利要求1所述的方法,其特征在于,对所述目标学习路径所涉及的周边子图进行切割,得到目标子图,包括:
基于广度优先搜索算法(BFS),以所述目标学习路径上的每个知识图谱节点为基准点,沿所述开源项目的知识图谱中的...

【专利技术属性】
技术研发人员:孙艳春黄罡孙志玉
申请(专利权)人:北京大学
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1