LocalPath( train, test, lambda )
lambda 对应截图中的α
function [ thisauc ] = LocalPath( train, test, lambda )
%% 计算LP指标并返回AUC值
sim = train*train;
% 二阶路径
sim = sim + lambda * (train*train*train);
% 二阶路径 + 参数×三节路径
thisauc = CalcAUC(train,test,sim, 10000);
% 评测,计算该指标对应的AUC
end
Katz( train, test, lambda )
function [ thisauc ] = Katz( train, test, lambda )
%% 计算katz指标并返回AUC值
sim = inv( sparse(eye(size(train,1))) - lambda * train); 【inv取逆】
lambda对应图中β% 相似性矩阵的计算
sim = sim - sparse(eye(size(train,1)));
thisauc = CalcAUC(train,test,sim, 10000);
% 评测,计算该指标对应的AUC
end
存疑:LHNII( train, test, lambda )
function [ thisauc ] = LHNII( train, test, lambda )
%% 计算LHN2指标并返回AUC值
M = nnz(train)/2;
% 网络中的边数
D = sparse(eye(size(train,1)));
D(logical(D)) = sum(train,2); 【把D中非零处对应位置的sum中的值存入D中】
% 生成度矩阵 (对角线元素为同下标,所以认为是节点)
D = inv(D);
% 求度矩阵的逆矩阵
maxeig = max(eig(train)); 【最大特征值φλ1】
% 求邻接矩阵的最大特征值
tempmatrix = (sparse(eye(size(train,1))) - lambda/maxeig * train);【lambda对应定义中的φ】
tempmatrix = inv(tempmatrix);
sim = 2 * M * maxeig * D * tempmatrix * D; clear D tempmatrix;
% 完成相似度矩阵的计算
thisauc = CalcAUC(train,test,sim, 10000);
% 评测,计算该指标对应的AUC
end
网友评论