focal loss 裡面的為什麼

2021-09-23 14:06:55 字數 637 閱讀 8101

首先來看公式:

我們知道alpha 是用來平衡正負樣本的,而**裡面的給的alpha=0.25 ,而真實正負樣本的比例在1000:1以上,作者反而縮小正樣本的損失,why?

在自己應用到其他場景的情況下,發現結果不僅如人意,後面將正負樣本的損失分開視覺化來看

通過上圖可以發現正樣本的損失要遠大於負樣本的損失 why?

這裡主要是因為分類卷積的初始化,**裡把所有樣本概率初始化為0.01,而負樣本的損失-(0.01)**2*log(1-0.01)=1e-6

所以負樣本的在初始化的時候損失是非常小的,pytorch初始化如下

self.class_model[-1].bias.data.fill_(-math.log((1-0.01)/0.01))
所以這裡的引數僅僅適合這個場景,如果有其他需求還需要自己定製

Vue例項裡面的data屬性為什麼用函式返回

最近在學習vue中在圖靈社群買了一本電子書 vue小書 我感覺挺坑的,沒有期待的那麼好。其中有的一下子就給一大串 但這一大串 只是為了說明某一點,但是這片 很多處都可以講的,大概是因為篇幅限制原因吧。首先官方解釋 當乙個元件被定義,data 必須宣告為返回乙個初始資料物件的函式,因為元件可能被用來建...

類裡面的成員變數如果是public,為什麼破壞封裝

如果是public屬性,那麼類外任何物件,都可以隨意改變,物件建立出來,在任何地方,任何時候都是能改變的 舉個簡單的例子 如果你乙個遊戲類 你建立乙個角色,屬性如果是public的,別人可以通過記憶體獲取你物件,通過物件去修改基本屬性,這樣不是就毫無安全感,如果是函式介面,函式呼叫時棧記憶體,呼叫完...

彙編裡面的 word代表什麼

在學習uboot的時候經常在start.s標頭檔案前面看到 word 0x2000 word 0x0 word 0x0 word 0x0 課程解釋說是佔位用的,是uboot前面的16個位元組的header word代表是字,乙個字長。字長與處理器的位數有關,比如16位處理器,字長為2byte 同理,...