自從去年TensorFlow Object Detection API發(fā)布以來(lái),谷歌團(tuán)隊(duì)不斷擴(kuò)充其性能,除了通過(guò)神經(jīng)架構(gòu)搜索和實(shí)例分割來(lái)提高模型的學(xué)習(xí)能力,還用如Open Images 等不斷出現(xiàn)的新數(shù)據(jù)集來(lái)訓(xùn)練模型。它在世界范圍內(nèi)被用于各種各樣的任務(wù)中,從城市街頭中的異常行為檢測(cè),到茂密叢林里的植物識(shí)別都有著它的身影。
近日,為了不斷擴(kuò)充和壯大這一API的能力,谷歌又為目標(biāo)檢測(cè)API進(jìn)行了升級(jí),最新的能力包括以下幾個(gè)方面:
支持通過(guò)谷歌云TPUs來(lái)對(duì)模型訓(xùn)練進(jìn)行加速;
通過(guò)加速推理和基于TF-Lite格式的模型導(dǎo)出來(lái)提升移動(dòng)端的部署能力;
加入了很多新的架構(gòu),包括:
RetinaNet;
MobileNet版本的RetinaNet;
新型的SSD架構(gòu)PoolingPyramidNetwork,縮小了三倍的大小。
同時(shí)還給出了每一個(gè)模型在coco數(shù)據(jù)集上的預(yù)訓(xùn)練權(quán)重供用戶使用。
通過(guò)云TPUs加速訓(xùn)練
用戶常常需要在大量的時(shí)間去調(diào)節(jié)一個(gè)模型的超參數(shù),如果可以大幅節(jié)省訓(xùn)練時(shí)間將十分有意義。所以這次推出的基于SSD架構(gòu)的模型都針對(duì)TPUs進(jìn)行了優(yōu)化設(shè)計(jì),利用強(qiáng)大的云服務(wù)你可以很快的訓(xùn)練出符合要求的網(wǎng)絡(luò)。舉個(gè)例子,希望將基于ResNet-50的RetinaNet在coco數(shù)據(jù)集上訓(xùn)練到35%mAP,通過(guò)TPUs云服務(wù)只需要不到3個(gè)半小時(shí)就夠了。
通過(guò)量化和TF-Lite加速推理
為了更好的支持移動(dòng)和嵌入式設(shè)備中低延時(shí)的需求,其中的模型提供了對(duì)于Tensorflow-lite的原生支持,這使得設(shè)備端的機(jī)器學(xué)習(xí)模型可以以更小的容量和更低的延時(shí)實(shí)現(xiàn)良好的表現(xiàn)。除此之外,新API還加入了模型量化以及對(duì)于檢測(cè)的原生操作。其中模型量化基于Jacob的論文和Krishnamoorthi的白皮書(shū)實(shí)現(xiàn)。
為了在有限大小下保證性能,工程師們不僅量化了權(quán)重,同時(shí)對(duì)激活也進(jìn)行了量化,實(shí)現(xiàn)了速度(大小)和精度的平衡。下圖展現(xiàn)了優(yōu)化后的模型在Pixel2的CPU上所測(cè)量得到的延時(shí)、模型大小和mAP值。可以發(fā)現(xiàn),模型得到了大幅壓縮,速度幾乎提升了一倍(>15fps),而精度只有略微下降。
如果你想上手試試的話,Tensorflow團(tuán)隊(duì)提供了一個(gè)詳細(xì)的教程。
https://medium.com/tensorflow/training-and-serving-a-realtime-mobile-object-detector-in-30-minutes-with-cloud-tpus-b78971cf1193
通過(guò)訓(xùn)練你甚至可以做出一個(gè)檢測(cè)家里小貓小狗的app安裝在自己手機(jī)上和朋友們分享。你可以通過(guò)colab來(lái)完成訓(xùn)練,或者也可以用為開(kāi)發(fā)者提供的docker來(lái)完成開(kāi)發(fā)。
通過(guò)手把手的教程你就可以做出一個(gè)很有趣的app,最終訓(xùn)練完成就會(huì)看到你的好伙伴被檢測(cè)出來(lái)啦:
下面是在訓(xùn)練過(guò)程中的主要步驟:
環(huán)境搭建(安轉(zhuǎn)相應(yīng)的庫(kù)和依賴(lài)文件,可以使用dockerfile完成一鍵安裝)
云配置(配置TPUs、存儲(chǔ)服務(wù),基于gcloud和gsutil)
安裝Tensorflow + Object Detection
配置數(shù)據(jù)庫(kù)(轉(zhuǎn)換為T(mén)FRecoard來(lái)加速數(shù)據(jù)IO)并上傳存儲(chǔ)
使用checkpoint來(lái)進(jìn)行遷移學(xué)習(xí)加速訓(xùn)練
在云端訓(xùn)練量化模型
導(dǎo)出模型、在移動(dòng)端上部署并運(yùn)行。
TensorFlow團(tuán)隊(duì)希望通過(guò)更高效的API將高水平的視覺(jué)模型帶給更多希望解決檢測(cè)問(wèn)題的人使用,并為用戶提供從模型訓(xùn)練到移動(dòng)端部署的順滑體驗(yàn)。
-
谷歌
+關(guān)注
關(guān)注
27文章
6211瀏覽量
106490 -
數(shù)據(jù)集
+關(guān)注
關(guān)注
4文章
1212瀏覽量
24990 -
tensorflow
+關(guān)注
關(guān)注
13文章
329瀏覽量
60730
原文標(biāo)題:TensorFlow 物體檢測(cè)API全面升級(jí),快來(lái)解鎖新姿勢(shì)
文章出處:【微信號(hào):thejiangmen,微信公眾號(hào):將門(mén)創(chuàng)投】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
來(lái)看看CTPS700主要在哪些方面進(jìn)行了改善
對(duì)結(jié)構(gòu)體成員進(jìn)行了賦值
軟件設(shè)計(jì)工具Radiant 2.0 中提供的新功能升級(jí)包括哪些方面?
基于視頻圖像的目標(biāo)檢測(cè)技術(shù)研究
智慧城市包括哪些方面(智慧城市領(lǐng)域與內(nèi)容詳解)
如何結(jié)合TensorFlow目標(biāo)檢測(cè)API和OpenCV分析足球視頻

蘋(píng)果新一代MacBook Air即將發(fā)布,整體進(jìn)行了兩方面的升級(jí)
百度Apollo進(jìn)行了組織架構(gòu)升級(jí) 加快實(shí)現(xiàn)自動(dòng)駕駛的落地
華為Mate40 Pro在哪些方面進(jìn)行了升級(jí)?
相比iPhone 11,蘋(píng)果在iPhone 12在哪些方面進(jìn)行了升級(jí)?
智能制造包括哪些方面
光纜維護(hù)包括哪些方面
鴻蒙開(kāi)發(fā)接口公共事件與通知:【FFI能力(Node-API)】

目標(biāo)檢測(cè)識(shí)別主要應(yīng)用于哪些方面
人員定位系統(tǒng)技術(shù)原理包括哪些方面?一篇弄懂

評(píng)論