Re: [問題] 全捲積網路(FCN) 在YOLOV2上訓練的問題
我覺得可能很多人並不懂卷積網路的基本概念,舉例來說,原始yolo可以接受的input size應該是32的倍數,而不是13的倍數...
卷積網路在運算過程中經常會有pooling(或是現在比較喜歡用步輻為2的卷積器)做下採樣,原則上yolo所提出的概念是使用任意結構的網路皆可以進行目標檢測,而他厲害的地方是它訂出了一個output結構讓網路可以根據這個output來進行目標檢測
在講yolo2之前我們先講yolo,原始yolo版本的輸出是對最後一層的每個像素(也就是前面一直提到的13*13,但原始yolo的output是7*7)做一次預測,而預測內容包含:
1. 2個最有可能的物件框,參數包含
(1) 0~1的機率描述是否存在非背景物體
(2) 物件框的相對x座標(以該範圍的百分比定義)
(3) 物件框的相對y座標(以該範圍的百分比定義)
(4) 物件框的相對寬度 (以n倍的原始範圍定義,如一個最終終像素在yolo中對應的是32*32個原始像素,所以這個數字為2代表對應到原來64的範圍)
(5) 物件框的相對長度
以上共有10個output。
2. 可能的類別數,描述這個框所框到的東西是甚麼,一樣輸出0~1之間的機率(一般後面這些output會經過softmax)
有了這個概念後,假定有一個32*32的輸入圖像,這樣最終特徵圖就是1*1,那yolo就是輸出2個可能的方框供人參考,而假設原始輸入圖像是320*320,那就會輸出200個可能的方框
而yolo2和yolo的差別在,yolo是使用像素作為預測,如果有一個物件他大小接近整張圖,這樣一個32*32的範圍會預測的好也是滿奇怪的,所以精準度不夠,因此yolo2先使用一些clustering的方式先找出訓練集的方框大概都在哪,然後制定出ROI,並進行ROI pooling再做預測。除此之外,作者在訓練yolo2時,為了讓他能適應各種大小的物件,因此每10代會將所有圖片及相對應的label調整為一個任意32的倍數,用這種類似data augmentation訓練網路。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 210.60.122.10
※ 文章網址: https://www.ptt.cc/bbs/DataScience/M.1523941600.A.9DA.html
→
04/17 13:09,
6年前
, 1F
04/17 13:09, 1F
→
04/17 13:09,
6年前
, 2F
04/17 13:09, 2F
→
04/17 13:10,
6年前
, 3F
04/17 13:10, 3F
推
04/17 16:41,
6年前
, 4F
04/17 16:41, 4F
→
04/17 16:41,
6年前
, 5F
04/17 16:41, 5F
推
04/17 16:43,
6年前
, 6F
04/17 16:43, 6F
→
04/17 16:43,
6年前
, 7F
04/17 16:43, 7F
→
04/17 16:43,
6年前
, 8F
04/17 16:43, 8F
→
04/17 16:44,
6年前
, 9F
04/17 16:44, 9F
推
04/17 20:02,
6年前
, 10F
04/17 20:02, 10F
→
04/17 20:02,
6年前
, 11F
04/17 20:02, 11F
推
04/17 22:16,
6年前
, 12F
04/17 22:16, 12F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 2 之 4 篇):
DataScience 近期熱門文章
PTT數位生活區 即時熱門文章