日本无码免费高清在线|成人日本在线观看高清|A级片免费视频操逼欧美|全裸美女搞黄色大片网站|免费成人a片视频|久久无码福利成人激情久久|国产视频一二国产在线v|av女主播在线观看|五月激情影音先锋|亚洲一区天堂av

  • 手機站
  • 小程序

    汽車測試網

  • 公眾號
    • 汽車測試網

    • 在線課堂

    • 電車測試

首頁 > 汽車技術 > 正文

算力限制場景下的目標檢測實戰(zhàn)淺談

2019-01-21 23:39:47·  
 
今天的分享是面向極市開發(fā)者們,分享中會相對偏向于實戰(zhàn),更像是一個如何調參的經驗方法論方面的分享。需要強調的是,因為不少內容缺少系統(tǒng)的數(shù)學和理論基礎,所
今天的分享是面向極市開發(fā)者們,分享中會相對偏向于實戰(zhàn),更像是一個如何調參的經驗方法論方面的分享。需要強調的是,因為不少內容缺少系統(tǒng)的數(shù)學和理論基礎,所以必須稱之為淺談,比如邊際效用遞減曲線、特征空間復雜程度等自提概念都還需要進一步提煉和完善,也希望能借此機會可以和大家展開深入討論。
 
算力限制場景主要是指在嵌入式設備,也就是算力相對比較弱的芯片上面做實時或者準實時的目標檢測。這個問題在學術和工業(yè)界一直都是備受關注,并且在深度學習越來越強調落地的大背景下,這個問題也正變得越來越突出。
 
問題
 
分享之前,先提出幾個問題,我們帶著這幾個問題來貫穿整個分享。
 
第一組問題,在實踐中,當我們遇到一個具體的任務的時候,比如熱門的車輛檢測問題,它屬于剛體檢測(被檢測物體內部不會有形變的情況)。那么,一般需要多大的神經網絡計算量,可以滿足一般場景下檢出絕大多數(shù)目標,同時保證出現(xiàn)盡量少的誤報?當我們需要在嵌入式的低計算能力的硬件平臺上完成這個任務的時候,我們應該怎么去完成這個任務?
 
第二組問題,如果現(xiàn)在我們面臨的新任務是手勢檢測,也就是柔體檢測(被檢測物體內部會發(fā)生形變的情況),剛體檢測任務中面臨的問題顯然是同樣存在的。那么,因為我們做過了剛體檢測問題,經驗直接借鑒過來,適用嗎?
 
第三組觸及靈魂的問題來了,既然剛體柔體都搞過一遍了,那么能不能再隨便來一個新的任務,都可以套用一套相同的方法來完成?也就是大家最關心的放之四海而皆準的標準“煉丹”方法。更進一步,學術上非常熱門的AutoML 與網絡結構搜索Network Architecture Search,與這個所謂的同一套方法又有什么關系呢?
 
目標檢測在算力限制場景下的特點
 
我們先看一下目標檢測這個方法在算力限制場景下的基本特點。谷歌在2016年11月Speed/accuracy trade-offs for modern convolutional object detectors 論文中,有這樣一張coco 檢測問題時所能達到的mAP結果圖。圖上有當時最熱門的神經網絡骨干網和檢測方法,他們在不同的網絡大小下,有的方法能力強,有的方法耗時短??梢园l(fā)現(xiàn),所有方法都沒有超出作者在圖上沿左下右上的一條凸起的虛線,也就是說,在這里速度和精度是“魚和熊掌不可兼得”的。同樣,在谷歌2018年7月發(fā)表的MNasNet 論文中,對于MNasNet 和MobileNet-V2的對比,同樣也展示出來神似的一條曲線,不同的是橫軸從GPU時間換成了手機上的預測時間。
在這里,我們借用一個經濟學中非常常用的概念,就是邊際效用遞減曲線來描述這條論文中常出現(xiàn)的曲線。舉一個大家都熟悉的陳佩斯被朱時茂忽悠吃面的例子,當陳佩斯吃掉第一碗面的時候,他的幸福感可以從無到有提升到了七八成,吃完第二碗之后,可能幸福感就爆棚了,但是吃完第三碗和第四碗的時候,估計快要吐了,還談何幸福感。也就是說,每增加相同的一碗面,陳佩斯獲得的實際收益則越來越小,甚至變成負的了。
 
回到我們問題上面,算力就是陳佩斯的面,我們每給目標檢測方法多增加相同量的算力的時候,所能帶來的精度提升會越來越少,最后微乎其微,更有甚者,如果發(fā)生了過擬合,曲線還可能往下跌,也就是陳佩斯被撐吐了一樣。
這里就可以隨手畫出一條曲線進行簡單的展示了。需要說明的是,實際的數(shù)據(jù)和曲線只會遵循大體的趨勢,一定不會嚴格擬合。同時,這條曲線既不是倒數(shù),也不是多項式或是對數(shù)曲線,它究竟是什么數(shù)學公式,以當前深度學習的研究現(xiàn)狀來說并不可以推導和求解的。
簡單說,它只是一條輔助線,那它有什么用呢?
 
首先,他可以幫助我們大體上去了解我們所探索的問題邊界所在。
 
其次,當我們設計調參實驗的時候,可以通過繪制或者在腦子里假裝繪制不同變量條件下的曲線,這條輔助線可以幫助我們來對比變量優(yōu)劣。例如,我們可以在某個變量固定時調整它的算力,當進行少量的實驗之后,就可以畫出這樣一條趨勢曲線出來了,同理,調整該變量的之后就可以再畫一條,兩條曲線的對比就可以幫助我們判斷該變量的優(yōu)劣。
 
最重要的,它可以幫助我們明確我們的任務在這個曲線上所處的區(qū)間。首先,不同的區(qū)間內解決問題的方法也不盡相同,不同變量在指定區(qū)間內的對比關系也不盡相同;同時,當你發(fā)現(xiàn)當前問題所處區(qū)間位于某個變量的曲線上升區(qū),那么這個變量絕對是一個值得發(fā)力重點研究的變量。
舉一個簡單的例子,如圖所示,mobilenet-v1和mobilenet-v2,根據(jù)論文或者自己的實驗,我們只需要將寥寥幾個點繪制上去就可以繪制兩條曲線。這里需要解釋一下,為了演示方便,圖上的數(shù)據(jù)關系只是展示了趨勢。
這里需要特殊說明的是,并不是所有方法對比圖都是理想的一上一下優(yōu)者恒優(yōu)的,例如,我們組18年發(fā)表的fast-downsampling mobilenet MobileNet 結構簡單微調的一點性能提升的方法(https://www.jianshu.com/p/681960b4173d),在100MFlops 以下的區(qū)間內,mAP 會高于mobilenet-v1,但是超過100MFlops 之后,就要弱于mobilenet-v1了。
因此,我們必須限定任務在曲線上所處的區(qū)間。
算力:硬件限制
算力限制場景本身就是限定任務在曲線上所處的區(qū)間的一個最常見的因素。
眾所周知,硬件本身主要就是芯片的算力是有當前芯片研發(fā)現(xiàn)狀,芯片的價格等等諸多因素決定的。并且,當場景需求不同時,相同的硬件條件下的情況也不盡相同。任務如果是實時的,就必須在30ms 左右計算完畢,當然如果不是實時的,慢一些就沒關系了。同時,在有些場景下還要求不能功耗滿載,那么我們就需要更快的時間算完,例如10ms 等等。
分享到:
 
反對 0 舉報 0 收藏 0 評論 0
滬ICP備11026917號-25