我正在构建一个工具,使用户可以向其他用户推荐在线课程的顺序。
从中得出的数据背后,我想对最推荐的课程顺序有何见解。这是模型的一部分:
在此图中,绿色数字是权重,表示有多少人推荐一门课程后再推荐另一门课程(例如:655人建议在从Prob到Prob之后再学习斯坦福大学的ML)
节点中的recs
字段是课程已推荐的绝对数量(例如:Stanford ML已被1000个用户按顺序排列)
我想做的是从最终目标开始,找出最推荐的先决条件。
该算法可能如下所示:
Function fancy_algo (node, graph)
If (no prereqs OR prereq weight is very low)
Return graph
Get all incoming nodes
For each incoming node subject
MR = most recommended pre-req
Append MR to graph
fancy_algo(MR, graph)
想要进行斯坦福机器学习的人的最终状态可能看起来像这样:
请注意,在“ Intro to CS”之后我们没有包括“ Algebra”,因为它的先决条件权重很低(4567分之20)。
可以使用Cypher进行管理吗?我将如何开始?