2013-03-20 299 views
1

我通過改變閾值並計算查全率和精度來計算查全精度曲線的點數。如何在matlab中找到精確調用曲線的最佳擬合線

scatter(recall', precision') 

我試圖找到最吻合的曲線,但我不知道的最好的方式,我有如下繪製的分佈圖這些點。我試過這個:

p = polyfit(recall', precision', 5) 
r = polyval(p, recall') 
plot(recall', precision', 'x'); 
hold on 
plot(recall', r, '-'); 
hold off 

但是,這個問題是我必須估計多項式(在這種情況下是5)的程度。

回答

0

您可以嘗試取回憶和精度變量的對數並通過它們擬合一條線。然後,坡度應提供有關你可能想用多項式程度的粗略的想法,即

p2 = polyfit(log(recall), log(precision), 1) 
1

你可以試試程序Eureqa Formulize。它是一個免費且易於使用的符號迴歸工具,開發於康奈爾創意機器實驗室

問候, 本

+0

給的鏈接請........ – 2013-05-14 11:41:45

+1

肯定。這裏是下載鏈接 http://creativemachines.cornell.edu/eureqa_download 和快速的介紹視頻 http://www.youtube.com/watch?v=6QtDzaMc3p0 – Ben 2013-05-14 19:33:14

+0

Eureqa是由一家名爲銷售Nutonian。該軟件絕對不是免費的。然而,免費的評估版本將在30天后過期。爲了避免誤解...... :-) – 2014-10-10 10:15:18