注意點:MLKNN_train注釋部分有train_target - A QxM array, if the ith training instance belongs to the jth class, then train_target(j,i) equals +1, otherwise train_target(j,i) equals -1 。如果設置成1和0可以嗎?不行,因為MLKNN_test有如下代碼:
for i=1:num_testing
for i=1:num_testing
for j=1:num_class
if(Outputs(j,i)>=0.5)
Pre_Labels(j,i)=1;
else
Pre_Labels(j,i)=-1;
end
end
end
HammingLoss=Hamming_loss(Pre_Labels,test_target);
再看HammingLoss代碼,要比較Pre_Labels和test_target,Pre_Labels是1和-1,如果test_target 是1和0就會出錯
再看HammingLoss代碼,要比較Pre_Labels和test_target,Pre_Labels是1和-1,如果test_target 是1和0就會出錯
MLKNN_test程序中最后幾句 HammingLoss=Hamming_loss(Pre_Labels,test_target); RankingLoss=Ranking_loss(Outputs,test_target);OneError=One_error(Outputs,test_target);
Coverage=coverage(Outputs,test_target);Average_Precision=Average_precision(Outputs,test_target);HammingLoss是基于輸出標號和實際標號,其余均是基于輸出概率和實際標號
Understand completely the meaning and matlab code of HammingLoss, the matlab code is very simple.
Understand completely the meaning and matlab code of HammingLoss, the matlab code is very simple.
1、文章是根據最大后驗概率來計算的,在計算條件概率Cond和CondN的時候用的是測試的樣本還是訓練的樣本?
2、ranking loss 該如何理解?文章中沒有提到關于排隊的問題啊
我看這篇文章有幾天了,一直沒有理解,希望能和您進一步交流,我的QQ:515164595