【MobileNetV2將為下一代移動(dòng)視覺(jué)應(yīng)用提供支持】去年,我們引入了面向移動(dòng)設(shè)備設(shè)計(jì)的通用型計(jì)算機(jī)視覺(jué)神經(jīng)網(wǎng)絡(luò)系列MobileNetV1,支持分類和檢測(cè)等功能。在個(gè)人移動(dòng)設(shè)備上運(yùn)行深度網(wǎng)絡(luò)可以提升用戶體驗(yàn),允許隨時(shí)隨地訪問(wèn),并且在安全性、隱私和能耗方面同樣具有優(yōu)勢(shì)。隨著可讓用戶與現(xiàn)實(shí)世界實(shí)時(shí)交互的新應(yīng)用的出現(xiàn),對(duì)更高效神經(jīng)網(wǎng)絡(luò)的需求也逐漸增加。
今天,我們很高興地宣布,MobileNetV2已經(jīng)發(fā)布,它將為下一代移動(dòng)視覺(jué)應(yīng)用提供支持。
MobileNetV2在MobileNetV1的基礎(chǔ)上進(jìn)行了重大改進(jìn),并推動(dòng)了移動(dòng)視覺(jué)識(shí)別技術(shù)的發(fā)展,包括分類、對(duì)象檢測(cè)和語(yǔ)義分割。MobileNetV2作為TensorFlow-Slim圖像分類庫(kù)的一部分發(fā)布,您也可以在Colaboratory中瀏覽MobileNetV2?;蛘?,也可以下載筆記本并在本地使用Jupyter操作。MobileNetV2還將作為TF-Hub中的模塊,預(yù)訓(xùn)練檢查點(diǎn)位于github中。
MobileNetV2以MobileNetV1[1]的理念為基礎(chǔ),使用深度可分離卷積作為高效構(gòu)建塊。此外,V2在架構(gòu)中引入了兩項(xiàng)新功能:1)層之間的線性瓶頸,以及2)瓶頸之間的快捷連接?;窘Y(jié)構(gòu)如下所示。
MobileNetV2架構(gòu)概覽
藍(lán)色塊表示上面所示的復(fù)合卷積構(gòu)建塊
我們可以直觀地理解為,瓶頸層對(duì)模型的中間輸入和輸出進(jìn)行編碼,而內(nèi)層封裝了讓模型可以將低級(jí)概念(如像素)轉(zhuǎn)換為高級(jí)描述符(如圖像類別)的功能。最后,與傳統(tǒng)的殘差連接一樣,快捷連接也可以提高訓(xùn)練速度和準(zhǔn)確性。要詳細(xì)了解技術(shù)細(xì)節(jié),請(qǐng)參閱論文“MobileNetV2:InvertedResidualsandLinearBottlenecks”。
MobileNetV2與第一代MobileNet相比有何不同?
總體而言,MobileNetV2模型在整體延遲時(shí)間范圍內(nèi)可以更快實(shí)現(xiàn)相同的準(zhǔn)確性。特別是在GooglePixel手機(jī)上,與MobileNetV1模型相比,新模型的運(yùn)算數(shù)減少2倍,參數(shù)減少30%,而速度提升30-40%,同時(shí)準(zhǔn)確性也得到提高。
MobileNetV2提高了速度(縮短了延遲時(shí)間)并提高了ImageNetTop1的準(zhǔn)確度
對(duì)于對(duì)象檢測(cè)和分割而言,MobileNetV2是非常有效的特征提取器。例如,在檢測(cè)方面,與新引入的SSDLite[2]搭配使用時(shí),在實(shí)現(xiàn)相同準(zhǔn)確性的情況下,新模型的速度要比MobileNetV1快大約35%。我們已在TensorflowObjectDetectionAPI[4]下開(kāi)源該模型。
為了實(shí)現(xiàn)設(shè)備上語(yǔ)義分割,我們?cè)诮谛嫉腄eepLabv3[3]的簡(jiǎn)化版中采用MobileNetV2作為特征提取器。在采用語(yǔ)義分割基準(zhǔn)PASCALVOC2012的條件下,新模型的性能與使用MobileNetV1作為特征提取器的性能相似,但前者的參數(shù)數(shù)量減少5.3倍,乘加運(yùn)算數(shù)量減少5.2倍。
綜上,MobileNetV2提供了一個(gè)非常高效的面向移動(dòng)設(shè)備的模型,可以用作許多視覺(jué)識(shí)別任務(wù)的基礎(chǔ)。我們現(xiàn)將此模型與廣大學(xué)術(shù)和開(kāi)源社區(qū)分享,希望借此進(jìn)一步推動(dòng)研究和應(yīng)用開(kāi)發(fā)。