<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          YOLO-v4目標(biāo)檢測實(shí)時(shí)手機(jī)端實(shí)現(xiàn)

          共 6175字,需瀏覽 13分鐘

           ·

          2020-12-12 15:55

          點(diǎn)擊上方小白學(xué)視覺”,選擇加"星標(biāo)"或“置頂

          重磅干貨,第一時(shí)間送達(dá)

          轉(zhuǎn)自?| 計(jì)算機(jī)視覺研究院

          由美國東北大學(xué)王言治教授研究團(tuán)隊(duì)與美國威廉瑪麗學(xué)院任彬教授研究團(tuán)隊(duì)共同提出,IBM、清華等共同研究的模式化稀疏度感知訓(xùn)練框架,不僅能夠同時(shí)實(shí)現(xiàn)卷積核稀疏模式的全自動(dòng)提取、模式化稀疏度的自動(dòng)選擇與模型訓(xùn)練,還證明了所提取的模式化稀疏度與理論最佳模式化稀疏度相匹配,并進(jìn)一步設(shè)計(jì)了能夠利用模型特點(diǎn)實(shí)現(xiàn)編譯器優(yōu)化的移動(dòng)端推理框架,實(shí)現(xiàn)了大規(guī)模深度神經(jīng)網(wǎng)絡(luò)在手機(jī)移動(dòng)端上的實(shí)時(shí)推理。目前,這篇文章已被 ECCV 2020 會議收錄,該文章同時(shí)入選 ECCV 2020 demonstration track。
          目前,這項(xiàng)技術(shù)已經(jīng)廣泛應(yīng)用在多種類型的人工智能(AI)任務(wù)中,包括但不限于:Yolo-v4 目標(biāo)檢測、實(shí)時(shí)相機(jī)風(fēng)格遷移、AI 實(shí)時(shí)換臉、相機(jī)超分辨率拍攝、視頻實(shí)時(shí)上色等,并且成功落地。以上任務(wù)全部在手機(jī)端上實(shí)現(xiàn)。

          接下來,我們來看論文的詳細(xì)內(nèi)容。
          論文簡介

          通過開發(fā)功能強(qiáng)大的算法和設(shè)計(jì)工具,深度神經(jīng)網(wǎng)絡(luò)(DNN)成為各個(gè)領(lǐng)域的最新技術(shù),包括圖像分類、計(jì)算機(jī)視覺、語音識別和目標(biāo)檢測。隨著海量數(shù)據(jù)不斷增加,應(yīng)用程序日趨復(fù)雜,模型的大小也急劇增加,對算力與內(nèi)存的需求與日俱增,使得深度神經(jīng)網(wǎng)絡(luò)在資源有限的移動(dòng)平臺上實(shí)現(xiàn)實(shí)時(shí)推理受到很大的挑戰(zhàn)。
          近年來,移動(dòng)與邊緣計(jì)算平臺正在迅速取代臺式機(jī)和筆記本電腦,成為深度神經(jīng)網(wǎng)絡(luò)應(yīng)用程序的主要計(jì)算設(shè)備。這些移動(dòng)與邊緣計(jì)算設(shè)備的物理尺寸受到嚴(yán)格限制,并結(jié)合了此類設(shè)備需要長時(shí)間運(yùn)行的要求。然而,在大規(guī)模深度神經(jīng)網(wǎng)絡(luò)實(shí)際部署時(shí),借助現(xiàn)有的移動(dòng)端深度神經(jīng)網(wǎng)絡(luò)推理框架依然很難實(shí)現(xiàn)實(shí)時(shí)推理。即便這些平臺能夠運(yùn)行大規(guī)模深度神經(jīng)網(wǎng)絡(luò),巨大的計(jì)算代價(jià)對計(jì)算平臺的運(yùn)行時(shí)長也提出了挑戰(zhàn)。因此,研發(fā)微型化的網(wǎng)絡(luò)模型與可通用的加速方法勢在必行。
          為了彌合深度學(xué)習(xí)任務(wù)的性能(推理速度)要求與目標(biāo)計(jì)算平臺上資源可用性之間的差距,在算法層面,深度神經(jīng)網(wǎng)絡(luò)模型剪枝技術(shù)已被證明可有效消除原始模型中的冗余,從而得到小尺寸的網(wǎng)絡(luò)模型。當(dāng)前的兩種主流剪枝方案——非結(jié)構(gòu)化權(quán)重剪枝和結(jié)構(gòu)化權(quán)重剪枝,代表了剪枝方式的兩個(gè)極端,無法在保證模型精度和泛化能力的前提下,解決硬件執(zhí)行效率低下的問題。研究者認(rèn)為,必須尋求一種可以提供甚至超越兩種稀疏性的最佳剪枝方案。
          如下圖 1 所示,研究人員可視化了 VGG-16 在 ImageNet 上的預(yù)訓(xùn)練模型的部分權(quán)重,并且發(fā)現(xiàn)(i)卷積核的有效面積(即具有較高絕對值的權(quán)重)形成一些特定形狀并在模型中反復(fù)出現(xiàn),(ii)某些卷積核的權(quán)重值非常小,因此并不能對輸出產(chǎn)生有效的激活,研究人員認(rèn)為這種卷積核是無效卷積核。

          圖 1. ImageNet 數(shù)據(jù)集上 VGG-16 第三卷積層中隨機(jī)選擇的卷積核的熱力圖。每個(gè)內(nèi)核中的權(quán)重值都經(jīng)過歸一化處理,深色表示該處為較高的絕對值。
          基于上述兩個(gè)發(fā)現(xiàn),該研究提出了一個(gè)新的稀疏性維度——模式化稀疏度,并且提出了基于模式化稀疏度的深度神經(jīng)網(wǎng)絡(luò)權(quán)重模式化剪枝的概念。
          如圖 2 所示,模式化剪枝中包含了兩種卷積核層面的模型稀疏化方法,即卷積核(convolution kernel)模式化剪枝(pattern pruning)與連通性剪枝(connectivity pruning)。

          圖 2. 模式化剪枝示意圖。
          為了實(shí)現(xiàn)卷積核模式化剪枝,該研究在每個(gè)卷積內(nèi)核中刪除固定數(shù)量的權(quán)重,其余權(quán)重形成具有特定形狀的「模式化內(nèi)核」。通過進(jìn)一步挖掘,研究人員發(fā)現(xiàn)一些精心設(shè)計(jì)的卷積核模式(kernel pattern)具有特殊的視覺特性,可以潛在地提高圖像質(zhì)量,從而增強(qiáng)深度神經(jīng)網(wǎng)絡(luò)的特征提取能力。但是,什么樣的卷積核模式能夠更好地提升模型性能,同時(shí)保證硬件執(zhí)行效率呢?這依然是個(gè)重要的問題。
          同時(shí),即使存在理論最優(yōu)的卷積核模式,它能否在實(shí)際情況中得到深度神經(jīng)網(wǎng)絡(luò)的「青睞」?這又給該稀疏化方法的應(yīng)用增加了不確定性。本文將從理論層面、算法實(shí)現(xiàn)層面、移動(dòng)端硬件與編譯器優(yōu)化層面詳細(xì)論述以上問題,并用實(shí)驗(yàn)數(shù)據(jù)展示模式化剪枝在高精度、實(shí)時(shí)性推理方面的強(qiáng)大作用。
          理論層面
          在理論層面,該研究從一個(gè)全新且獨(dú)特的角度審視了剪枝的概念。不同于將剪枝定義為模型參數(shù)的移除,這篇論文將剪枝轉(zhuǎn)化成對神經(jīng)網(wǎng)絡(luò)模型權(quán)重加入一層二進(jìn)制掩膜。研究人員將不同形狀的二進(jìn)制掩膜的集合稱為「模式集」(pattern library),并將加入掩膜看作一種對神經(jīng)網(wǎng)絡(luò)的插值操作。通過不同模式的掩膜插值,得到一些功能性圖像濾波器特征,能夠?qū)崿F(xiàn)圖像的銳化與降噪,提高圖像質(zhì)量。值得一提的是,插值操作的過程僅需要少量種類的卷積核模式(或者說一個(gè)小尺寸的模式集)。
          這樣做所帶來的好處是:(i)在算法層面,相對較少的卷積核模式可確保合適的搜索空間,以實(shí)現(xiàn)在深度神經(jīng)網(wǎng)絡(luò)上得到較好的訓(xùn)練效果;(ii)從編譯器角度來看,更少的模式意味著更少的計(jì)算范式,從而能夠潛在地降低線程分支。
          圖 3 展示了該研究設(shè)計(jì)的八種卷積核模式,通過 n 次插值,圖 3(上)能夠得到高斯濾波器,圖 3(下)能夠得到增強(qiáng)型拉普拉斯高斯濾波器。其中 n 代表神經(jīng)根網(wǎng)絡(luò)層數(shù),系數(shù) p 為任意位置 1 出現(xiàn)的概率,在正則化運(yùn)算后沒有實(shí)際意義。

          圖3.卷積核模式設(shè)計(jì)。

          算法實(shí)現(xiàn)層面
          通過上述理論推導(dǎo),我們得到了八種卷積核模式作為模式集。但是,一些至關(guān)重要的問題仍未得到解決。例如,這些從理論層面得出的最優(yōu)模式集在算法實(shí)現(xiàn)層面上也是最理想的嗎?即便以上問題的答案是肯定的,那么如何為每個(gè)卷積核選擇合適的卷積核模式并訓(xùn)練非零權(quán)重?
          為了回答上述問題,研究者在算法實(shí)現(xiàn)層面,設(shè)計(jì)了模式化稀疏度感知訓(xùn)練框架(pattern-aware network pruning framework),能夠同時(shí)實(shí)現(xiàn)卷積核模式集的自動(dòng)提取,模式化稀疏度的自動(dòng)選擇與模型訓(xùn)練。
          在卷積核模式集的自動(dòng)提取中,研究人員首先構(gòu)建一個(gè)模式集全集,包含了所有可能種類的卷積核模式。在訓(xùn)練過程中,他們將這個(gè)模式集作為稀疏化目標(biāo),通過 ADMM(alternating direction method of multipliers)將原始剪枝問題解耦為 Primal-Proximal 問題,迭代式地通過傳統(tǒng)梯度下降法求解 Primal 問題,并引入一個(gè)二次項(xiàng)迭代求解 Proximal 問題。通過每次 Primal-Proximal 迭代更新,使卷積核動(dòng)態(tài)地從模式集中選擇當(dāng)前最優(yōu)的卷積核模式,并同時(shí)通過梯度下降法訓(xùn)練該模式非零位置的權(quán)重。當(dāng)卷積核對稀疏模式的選擇趨于穩(wěn)定的時(shí)候(一般僅需要迭代 3-5 次),就可以刪除掉那些被選擇次數(shù)非常少的卷積核模式,從而將模式集的大小降低,并用更新后的模式集進(jìn)行下一輪迭代,最終實(shí)現(xiàn)模式集的自動(dòng)提取。
          盡管上述過程為迭代過程,但需要的總訓(xùn)練時(shí)長卻是非常低的,原因在于該操作的目的是提取模式集而非完成整個(gè)訓(xùn)練過程。完成每一次模式集提取的迭代過程僅僅需要常規(guī)訓(xùn)練時(shí)長的 10%-20%。當(dāng)訓(xùn)練集的大小足夠小的時(shí)候,我們便可以用比常規(guī)訓(xùn)練時(shí)長減少 20% 左右的訓(xùn)練時(shí)間完成訓(xùn)練。從實(shí)驗(yàn)結(jié)果來看,完成模式集提取、模式化稀疏度選擇與模型訓(xùn)練的總時(shí)長甚至可以少于大部分其他模型剪枝工作。
          移動(dòng)端硬件與編譯器優(yōu)化層面
          通過上述模式化稀疏度感知訓(xùn)練框架,我們得到了模式化剪枝后的稀疏模型。如何利用模型的權(quán)重空間分布特點(diǎn)實(shí)現(xiàn)編譯器優(yōu)化成為移動(dòng)端硬件與編譯器優(yōu)化層面的研究重點(diǎn)。
          研究人員設(shè)計(jì)了適合模式化剪枝的移動(dòng)端推理框架,能夠部署并高效執(zhí)行模式化剪枝后的深度神經(jīng)網(wǎng)絡(luò)模型,如圖 4 所示。

          圖 4.?深度神經(jīng)網(wǎng)絡(luò)基于編譯器優(yōu)化的移動(dòng)端推理框架概述。
          這種編譯器構(gòu)架基于代碼生成原理,將深度神經(jīng)網(wǎng)絡(luò)模型轉(zhuǎn)化為底層靜態(tài)執(zhí)行代碼,并配合適合模型特點(diǎn)的編譯優(yōu)化。研究人員利用已知的卷積核模式與連通性信息,相應(yīng)地將每個(gè)卷積核的計(jì)算范式進(jìn)行歸類。通過將相同的卷積核模式(相同的計(jì)算范式)排列在一起,并將相似的重排結(jié)果在相同的線程中進(jìn)行并行計(jì)算,消除所有靜態(tài)代碼分支,保證了高指令級與線程級平行性。
          我們同時(shí)可以觀察到,卷積核與輸出通道重排后的模型權(quán)重分布非常規(guī)則與緊湊,因此,在緩存與寄存器訪問頻率上的優(yōu)化效果變得非常明顯。規(guī)則與緊湊的數(shù)據(jù)意味著更低的數(shù)據(jù)訪問頻率,而數(shù)據(jù)訪問頻率降低意味著更低的內(nèi)存開銷。這一設(shè)計(jì)方法是可通用的,因此該研究提出的移動(dòng)端推理框架可以大規(guī)模地部署在現(xiàn)有各種量產(chǎn)手機(jī)端,實(shí)現(xiàn)端上 AI 實(shí)時(shí)推理,滿足用戶需求。
          實(shí)驗(yàn)結(jié)果
          該研究的實(shí)驗(yàn)結(jié)果從三個(gè)方面展示了模式化稀疏度感知訓(xùn)練框架與基于編譯器的移動(dòng)端推理框架的性能,分別是卷積核模式集提取結(jié)果、模式化剪枝精度提升效果與移動(dòng)端推理速度。
          首先,圖 5 展示了卷積核模式集提取結(jié)果。研究人員首先確定了每一個(gè)卷積核中應(yīng)保留 4 個(gè)非零值,這樣做的好處是控制模式集總集的大小,同時(shí)也利于移動(dòng)端 CPU/GPU 的 SIMD 結(jié)構(gòu)。當(dāng)經(jīng)過兩次模式集提取后,模式集總集大小從 126 減小到 32 個(gè),這時(shí)的模式集中卷積核模式分布圖如圖 5(b)所示。研究人員進(jìn)一步訓(xùn)練并刪除出現(xiàn)次數(shù)最少的卷積核模式后,得到了 Phase 1、2、3 模式集,其中的卷積核模式數(shù)量分別為 12、8、4,如圖 5(a)所示??梢园l(fā)現(xiàn),Phase 2 模式集所含的卷積核模式與理論推導(dǎo)與八種卷積核模式完全匹配。因此研究人員得出結(jié)論,基于理論得出的卷積核模式也是算法實(shí)現(xiàn)層面上對于深度神經(jīng)網(wǎng)絡(luò)最優(yōu)的卷積核模式。?

          圖 5. 模式化稀疏度感知訓(xùn)練框架的模式集提取結(jié)果。
          其次,研究人員展示了模式化剪枝對深度神經(jīng)網(wǎng)絡(luò)精度的提升。通過剪枝,深度神經(jīng)網(wǎng)絡(luò)將圖像的細(xì)節(jié)「看得」更清了。如圖 6 所示,通過不同的可視化方法,經(jīng)過模式化剪枝的深度神經(jīng)網(wǎng)絡(luò)模型對于圖像有明顯的增強(qiáng)作用,模式化剪枝后的模型能夠提取圖像中更多的關(guān)鍵特征,并降低圖像中的噪聲。

          圖 6. 基于 VGG-16 在 ImageNet 上剪枝后的模型可視化效果圖。此處采用了三種不同的可視化方法:(a) guided-backpropagation (BP) ,(b) integrated gradients, (c) inverted representation。
          再次,研究人員展示了在不同種類的模式集(Phase 1、2、3)下,多種深度神經(jīng)網(wǎng)絡(luò)在 CIFAR-10 與 ImageNet 訓(xùn)練集上不同程度的精度提升效果,如圖 7(a)所示。我們發(fā)現(xiàn),在絕大多數(shù)情況下,當(dāng)模型加載 Phase 2(同時(shí)也是理論推導(dǎo)得出的模式集)時(shí),深度神經(jīng)網(wǎng)絡(luò)的精度提升幅度更大。這一現(xiàn)象使研究人員更加確信,基于理論得出的卷積核模式同時(shí)也是算法實(shí)現(xiàn)層面上對于深度神經(jīng)網(wǎng)絡(luò)最佳的卷積核模式。
          圖 7(b)從另一個(gè)角度佐證了這一觀點(diǎn):當(dāng)擁有不同種類模式集的深度神經(jīng)網(wǎng)絡(luò)模型疊加相同剪枝率的連通性剪枝時(shí),擁有 Phase 2 的模型能夠保持更高水平的模型精度。研究人員在不同的網(wǎng)絡(luò)結(jié)構(gòu)模型中觀察到了同樣的現(xiàn)象。因此可以證明,Phase 2 模式集擁有更加穩(wěn)定的精度表現(xiàn)。

          圖 7. (a)基于 CIFAR-10 與 ImageNet 的不同深度神經(jīng)網(wǎng)絡(luò)在模式化剪枝下的精度升高實(shí)驗(yàn)結(jié)果,(b)卷積核模式化剪枝疊加連通性剪枝后的 ResNet-18 訓(xùn)練曲線圖。
          表 1 進(jìn)一步展示了模式化剪枝的總體結(jié)果,研究人員將最好的剪枝精度與其模式集類型記錄在表格中,并與其他研究工作進(jìn)行系統(tǒng)性對比,結(jié)果表明大部分擁有最高精度的剪枝模型是基于 Phase 2 模式集的,這一現(xiàn)象同時(shí)體現(xiàn)在不同的數(shù)據(jù)集與深度神經(jīng)網(wǎng)絡(luò)中。

          表 1. 基于模式化的剪枝在 CIFAR-10 與 ImageNet 數(shù)據(jù)集上的剪枝結(jié)果對比。
          最后,該研究測試了基于編譯器的移動(dòng)端推理框架對模式化剪枝模型的加速效果。實(shí)驗(yàn)結(jié)果表明,模式化剪枝與編譯器的協(xié)同優(yōu)化極大地提高了移動(dòng)端的推理速度。在移動(dòng)端,研究人員使用了 Samsung Galaxy S10 智能手機(jī)來測試推理速度。
          如圖 8 所示,研究者測試了基于 Phase 2 模式集的稀疏化深度神經(jīng)網(wǎng)絡(luò)模型在 ImageNet 圖像上的推理速度與在現(xiàn)有的深度神經(jīng)網(wǎng)絡(luò)加速器(TVM、MNN、TensorFlow-Lite)上的速度對比。

          圖8.基于Phase 2模式集的稀疏化深度神經(jīng)網(wǎng)絡(luò)模型在移動(dòng)端的加速效果展示圖。

          結(jié)果表明,該研究提出的模式化剪枝與通用型移動(dòng)端推理框架在推理速度上遠(yuǎn)遠(yuǎn)超過現(xiàn)有的加速器。事實(shí)上,在每一種網(wǎng)絡(luò)結(jié)構(gòu)下,該研究提出的方法在移動(dòng)端都能在沒有精度損失的情況下實(shí)現(xiàn)實(shí)時(shí)計(jì)算的要求(30 frames/second,即 33ms/second)。例如,在大型神經(jīng)網(wǎng)絡(luò) VGG-16 上,該方法的推理時(shí)間僅為 15ms。這一對于最優(yōu)的模式化剪枝方法與通用型的移動(dòng)推理框架的研究使得在移動(dòng)端對任意神經(jīng)網(wǎng)絡(luò)進(jìn)行實(shí)時(shí)運(yùn)算變?yōu)榭赡堋?/span>

          圖9.基于模式化剪枝與通用型移動(dòng)端推理框架在手機(jī)端不同AI應(yīng)用場景的執(zhí)行效果示意。從左到右依次為:相機(jī)超分辨率拍攝、實(shí)時(shí)相機(jī)風(fēng)格遷移、視頻實(shí)時(shí)上色、AI換臉。

          圖10.基于模式化剪枝與通用型移動(dòng)端推理框架在手機(jī)端的執(zhí)行效果圖。從左到右依次為,實(shí)時(shí)相機(jī)風(fēng)格遷移、視頻實(shí)時(shí)上色、相機(jī)超分辨率拍攝。

          下載1:OpenCV-Contrib擴(kuò)展模塊中文版教程
          在「小白學(xué)視覺」公眾號后臺回復(fù):擴(kuò)展模塊中文教程即可下載全網(wǎng)第一份OpenCV擴(kuò)展模塊教程中文版,涵蓋擴(kuò)展模塊安裝、SFM算法、立體視覺、目標(biāo)跟蹤、生物視覺、超分辨率處理等二十多章內(nèi)容。

          下載2:Python視覺實(shí)戰(zhàn)項(xiàng)目31講
          小白學(xué)視覺公眾號后臺回復(fù):Python視覺實(shí)戰(zhàn)項(xiàng)目31講,即可下載包括圖像分割、口罩檢測、車道線檢測、車輛計(jì)數(shù)、添加眼線、車牌識別、字符識別、情緒檢測、文本內(nèi)容提取、面部識別等31個(gè)視覺實(shí)戰(zhàn)項(xiàng)目,助力快速學(xué)校計(jì)算機(jī)視覺。

          下載3:OpenCV實(shí)戰(zhàn)項(xiàng)目20講
          小白學(xué)視覺公眾號后臺回復(fù):OpenCV實(shí)戰(zhàn)項(xiàng)目20講,即可下載含有20個(gè)基于OpenCV實(shí)現(xiàn)20個(gè)實(shí)戰(zhàn)項(xiàng)目,實(shí)現(xiàn)OpenCV學(xué)習(xí)進(jìn)階。

          下載4:leetcode算法開源書
          小白學(xué)視覺公眾號后臺回復(fù):leetcode即可下載。每題都 runtime beats 100% 的開源好書,你值得擁有!



          交流群


          歡迎加入公眾號讀者群一起和同行交流,目前有SLAM、三維視覺、傳感器、自動(dòng)駕駛、計(jì)算攝影、檢測、分割、識別、醫(yī)學(xué)影像、GAN、算法競賽等微信群(以后會逐漸細(xì)分),請掃描下面微信號加群,備注:”昵稱+學(xué)校/公司+研究方向“,例如:”張三?+?上海交大?+?視覺SLAM“。請按照格式備注,否則不予通過。添加成功后會根據(jù)研究方向邀請進(jìn)入相關(guān)微信群。請勿在群內(nèi)發(fā)送廣告,否則會請出群,謝謝理解~


          瀏覽 61
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  性,国产三级视频 | 久久精品无码电影 | 国产日逼免费看 | 日韩无码啪啪啪 | 日韩高清无码123 |