機器學習中的正負樣本

2022-07-30 22:15:14 字數 1067 閱讀 6657

對於機器學習中的正負樣本問題,之前思考過一次,但是後來又有些迷惑,又看了些網上的總結,記錄在這裡。

我們經常涉及到的任務有檢測以及分類。

針對與分類問題,正樣本則是我們想要正確分類出的類別所對應的樣本,例如,我們要對一張進行分類,以確定其是否屬於汽車,那麼在訓練的時候,汽車的則為正樣本,負樣本原則上可以選取任何不是汽車的其他,這樣就可以訓練出來乙個汽車的分類網路,對這個網路進行測試會發現,它會將一些非汽車的誤報成汽車,這些誤報的則為「難分樣本」,後續進行訓練的時候,將這些難分樣本加入至負樣本集合中進行訓練,最後得到的網路模效果會更好一些,這個過程就叫做「難例挖掘」。另外,在選取負樣本的時候,原則上是可以選擇任意非汽車的作為負樣本,但是比較合理的情況應該是要考慮到實際應用場景,例如實際應用是對行車記錄儀上面捕捉到的進行分類,那麼,負樣本則應該是捕捉到的其他非汽車的,例如馬路,樹木,路燈等。

針對與檢測問題,需要確定**有什麼,也就是既要對位置進行回歸,還要進行分類,這時的正樣本就是我們事先標註出來的bbox框之中的部分,但是一般的檢測框架,都是按照一定的規則生成一些**bbox,那麼在進行正樣本的選取時,就需要判斷這些生成的bbox與gt的bbox之間的overlap,如果overlap大於某一閾值,則將該**bbox作為正樣本,如果沒有超過這一閾值,則認為是負樣本。下面摘錄一段部落格中的解釋,是針對與ssd訓練中的正負樣本的生成問題:

給定輸入影象以及每個物體的ground truth,首先找到每個ground true box對應的default box中iou最大的作為正樣本。然後,在剩下的default box中找到那些與任意乙個ground truth box的iou大於0.5的default box作為正樣本。其他的作為負樣本(每個default box要麼是正樣本box要麼是負樣本box)。如上圖中,兩個default box與貓匹配,乙個與狗匹配。在訓練過程中,採用hard negative mining 的策略(根據confidence loss對所有的box進行排序,使正負例的比例保持在1:3) 來平衡正負樣本的比率。

引自具體的**還沒有仔細研究,fasterrcnn也是類似的策略,它們的**都值得好好研究一下,但是目前還不知道yolo再選取負樣本的時候有沒有用到什麼策略,有時間應該拜讀一下**。

機器學習中的正負樣本

在機器學習中經常會遇到正負樣本的問題,花了一點時間查詢資料,基本上弄明白了一點到底是怎麼回事,記錄在這裡以便以後檢視,也希望能夠幫助到有疑惑的人,當然也希望理解的比較透徹的人看到之後對於理解的不對的地方能夠予以指點。首先我將這個問題分為分類問題與檢測問題兩個方面進行理解。在分類問題中,這個問題相對好...

機器學習中的正負樣本

本文 在機器學習中經常會遇到正負樣本的問題,花了一點時間查詢資料,基本上弄明白了一點到底是怎麼回事,記錄在這裡以便以後檢視,也希望能夠幫助到有疑惑的人,當然也希望理解的比較透徹的人看到之後對於理解的不對的地方能夠予以指點。首先我將這個問題分為分類問題與檢測問題兩個方面進行理解。在分類問題中,這個問題...

機器學習樣本資料集,訓練正負樣本

1 caltech 101 資料庫 該資料庫在2003年被發布,包括101類目標影象和1類背景影象,共102類,彩色影象較多,有部分灰度影象。總共影象數為9145 除去背景後總數為8677 每類影象數大約在31 800之間,影象大小為300 200。此資料庫的特點是 每個影象只含有乙個目標,且目標大...