知识点图

介绍

知识点图用于描述知识点之间的某些关系,图中的每个节点代表一个知识点,而权值的意义随图的种类不同而不同。

格式

[
        ['知识点编号1', '知识点编号2', '权值'],
        ['知识点编号3', '知识点编号4', '权值'],
        ['知识点编号5', '知识点编号6', '权值'],
        ['知识点编号7', '知识点编号8', '权值'],
        ...
]

不同种类的知识点图

名称

权值意义

是否有向

concurrence_graph

两个知识点之间相继出现的概率

transition_graph

一个知识点出现后,另一个知识点紧接着出现的概率

correct_transition_graph

一个知识点掌握后,另一个知识点随之掌握的概率

correct_co_influence_graph

两个知识点之间的co_influence

similarity_graph

两个知识点关系之间的余弦相似度

concurrence_graph(graph.con)

读入一个回答序列,如果两个知识点相继出现,则图中两个知识点所代表的节点之间的权值加一。

统计结束后将整个图的权值归一化得到概率。

例如::

[[1, 0], [2, 0], ...] ---> graph[1][2] += 1, graph[2][1] += 1

transition_graph(graph.trans)

读入一个回答序列,如果某个知识点在紧跟在另外一个知识点后出现,则前一个知识点到后一个知识点的边权值加一。

统计结束后将整个图的权值归一化得到概率。 例如::

[[1, 0], [2, 1], ...] ---> graph[1][2] += 1

correct_transition_graph(graph.trans)

读入一个回答序列,如果某个知识点答对后紧随其后的那个知识点也同时答对,则前一个知识点到后一个知识点的边权值加一。

统计结束后将整个图的权值归一化得到概率。 例如::

[[1, 1], [2, 1], [3, 0], ...] ---> graph[1][2] += 1

correct_co_influence_graph(graph.ccon)

读入一个回答序列,首先构造出未归一化的 correct_transition_graph ,然后计算两个节点间的 Co-influence

Co-influence[i][j] = Co-influence[j][i] = (graph[i][j] + graph[j][i]) / |graph[i][j] - graph[i][j]|

输出 Co-influence

similarity_graph(graph.sim)

读入一个关系图,计算每两行之间的 余弦相似度 例如::

[[1, 1, 0],             [[1, 0.94280904, 0.85280287],
 [2, 2, 1],  --->        [0.94280904, 1, 0.90453403],
 [3, 1, 1]]              [0.85280287, 0.90453403, 1]]