def evaluateNodeClassification(X, Y, test_ratio):
X_train, X_test, Y_train, Y_test = sk_ms.train_test_split(
X,
Y,
test_size=test_ratio
)
try:
top_k_list = list(Y_test.toarray().sum(axis=1))
except:
top_k_list = list(Y_test.sum(axis=1))
classif2 = TopKRanker(lr())
classif2.fit(X_train, Y_train)
prediction = classif2.predict(X_test, top_k_list)
micro = f1_score(Y_test, prediction, average='micro')
macro = f1_score(Y_test, prediction, average='macro')
return (micro, macro)
评论列表
文章目录