思路
为最终比较划分好测试集和不存在边集【全集1-train-test-对角元】,根据集合中非零元【即边的数目】构建比较矩阵test_rd【比较n次,随机生成n个值右取整作为抽取的要比较的边】,下一步对test的邻接矩阵赋值,相似性指标给予一个分值存入test_pre,然后依据判断条件【test==1】只取其中非零边【为什么?降低内存?】,对应位置的test_pre存入test_data,再把最初的test_rd构建成稀疏矩阵【?为什么不直接比】,最后test_rd 和 non_rd比大小,分别给n',n''计算AUC
triu
triu Extract upper triangular part.提取上三角
function [ auc ] = CalcAUC( train, test, sim, n )
%% 计算AUC,输入计算的相似度矩阵
sim = triu(sim - sim.*train);%只保留上三角,因为同一条边取一次就足够了对于CN来说