研究文章

大规模而且对象检索本体和深当地多任务学习

算法5

为multilabels找到最佳阈值。
过程:FIND_BEST_THRESHOLDS
输入:
trainPred/ /multilabel数组中的每个样本训练集的预测
trainLabels/ /multilabels数组中的所有样本训练集
initThresholds/ /一组候选阈值与值在[0,1]
输出:
bestThresholds/ /每个标签的最佳阈值的数组
目标:
寻找最佳阈值multilabels MCC的不平衡数据问题解决者
开始
= 0numberOfLabel做的事:
开始
(possibleMattVals)⟵(空)
#选择阈值
j= 0长度(initThresholds):
开始
(pred)⟵(空)
(currTrainLabel)⟵(空)
#从目前得到预测阈值
k= 0numberOfSample做的事:
开始
如果trainPred(k][)> =j:
pred⟵1
其他:
pred⟵0
currTrainLabeltrainLabel(k][]
结束
possibleMattVals⟵matthrews_corrcoef (currTrainLabel,pred)#访问方程(7)MCC的全部计算。
结束
bestThresholdsinitThresholds[马克斯的位置(possibleMattVals)# MCC最高的阈值在阈值初始化列表中选择每个属性。
结束
结束