2017-10-09 100 views
0

我想確保繪製了精確召回曲線。我有以下數據:回憶值= [0.0,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.0] 精度= [1,1,0.8,0.7,0.80,0.65,0.60,0.72 ,0.60,0.73,如下面 precision-recall curve精確召回圖

0.75] interpolated_precision = [1,1,0.80,0.80,0.80,0.75,0.75,0.75,0.75,0.75,0.75] 並準備圖表我不肯定是正確的,因爲我看到了搖擺人物。一個例子是這裏: enter image description here 我會很高興,如果任何人都可以確認天氣是錯誤的或不。

回答

0

您通常看到的鋸齒線/鋸齒圖案更常見於更多的數據點(在示例圖中注意至少20個左右,而您的正好10個),這些都來自實際搜索結果。你沒有提到你的數據點來自哪裏。

P-R數字經常看起來有點鋸齒的原因是每次召回的增加通常伴隨着精度的降低,至少暫時性的降低是由於可能增加誤報。這在你的圖中也是如此,然而,你的「下降」看起來更小,並且你的精度始終保持高。

但是,由於您將向下移動的圖形繪製爲對角線,因此在精度和內插精度的下移中,圖中存在兩個明顯錯誤。

對於精度,任何向下移動都應該是垂直線。你不會從你描述的點的簡單x-y圖中得到這個,例如在Excel中。這些垂直線有助於「鋸齒狀」外觀。

對於插值精度,圖形將始終包含水平或垂直的垂直直線。內插精度的定義基本上要求(例如參見https://nlp.stanford.edu/IR-book/html/htmledition/evaluation-of-ranked-retrieval-results-1.html以獲得在任何召回點的內插精度的正確定義)。

這裏的關鍵是要認識到,您所描述的數據不應該作爲獨立的觀察圖來繪製,而應該以特定的方式爲圖的其餘部分定義P-R值。