pytorch 中使用tensorboard,詳解writer.add_pr_curve函數的作用(二)

接上一篇文章pytorch 中使用tensorboard,詳解writer.add_embedding函數的作用(一)

首先給出pytorch官方文檔對tensorboard的教程

https://pytorch.apachecn.org/docs/1.4/6.html

目錄

 

7 畫損失函數(writer.add_scalar)

8 畫pr曲線圖(writer.add_pr_curve)


 

 

7 畫損失函數(writer.add_scalar)

writer.add_scalar('training loss',
                            running_loss / 1000,
                            epoch * len(trainloader) + i)

 非常簡單,參數爲 標題,loss(Y),epoch(X)

8 畫pr曲線圖(writer.add_pr_curve)

什麼是PR圖?

writer.add_pr_curve(classes[class_index],
                        tensorboard_preds,
                        tensorboard_probs,
                        global_step=global_step)
    writer.close()

首先PR圖是對於二分類問題而言的,所以第一個參數爲分類列表中的每一個分類,針對每一個分類畫出pr圖。

而後思考畫出PR圖時需要什麼,根據混淆矩陣的定義

預測/實際
TP FP
FN TN

 

我們需要知道樣本的實際分類(單分類爲 YES or NO),樣本的預測結果可通過置信度與閾值確定,其中閾值爲函數自動生產,所以我們需要樣本的置信度。

總結,我們需要類別,實際結果(ground true),以及預測結果(0到1之間的置信度)很抽象?看代碼

舉例,對於(套衫)pullover而言, 第一個不是,第二個是,第三個不是,第四個不是。。。預測結果中,第一個有0.1103權重爲套衫,第二個有0.1076的權重爲套衫,第三個...

注意,這裏的0.1103並不是概率,需要經過softmax轉換纔是概率,但是有他就相當於有了概率,函數自己會計算結果。

什麼是softmax函數?

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章