電子發(fā)燒友網(wǎng)發(fā)布了一款試用產(chǎn)品:米爾 MYD-Y6ULX-V2 開發(fā)板,基于 NXP i.MX6UL/i.MX6UL L處理器,該開發(fā)板被米爾稱之為經(jīng)典王牌產(chǎn)品。本次測試目標是在此開發(fā)板上進行神經(jīng)網(wǎng)絡框架ncnn的移植與測試開發(fā),測試ncnn在此開發(fā)板上的性能與應用測試。
01.
什么是ncnn
ncnn 是騰訊優(yōu)圖推出的在手機端極致優(yōu)化的高性能神經(jīng)網(wǎng)絡前向計算框架。也能夠在移動設備上的高性能神經(jīng)網(wǎng)絡前向計算框架。ncnn 從設計之初深刻考慮移動端的部署和使用。無第三方依賴,跨平臺,其中手機端 cpu的速度快于目前所有已知的開源框架。
基于ncnn,能夠?qū)⑸疃葘W習算法輕松移植到手機端和移動設備上高效執(zhí)行,開發(fā)人工智能應用。以騰訊內(nèi)部應用為例,ncnn目前已在QQ,Qzone,微信,天天P圖等上得到應用。
ncnn支持大部分常用的CNN 網(wǎng)絡:
Classical CNN: VGG AlexNetGoogleNet Inception …
Practical CNN: ResNetDenseNet SENet FPN …
Light-weight CNN:SqueezeNet MobileNetV1/V2/V3 ShuffleNetV1/V2 MNasNet …
Detection: MTCNNfacedetection …
Detection: VGG-SSDMobileNet-SSD SqueezeNet-SSD MobileNetV2-SSDLite …
Detection: Faster-RCNNR-FCN …
Detection: YOLOV2 YOLOV3MobileNet-YOLOV3 …
Segmentation: FCN PSPNetUNet …
騰訊優(yōu)圖實驗室是主要研究計算機視覺技術,ncnn的許多應用方向也都在圖像方面,如人像自動美顏,照片風格化,超分辨率,物體識別。
騰訊優(yōu)圖ncnn提供的資料顯示:對比目前已知的同類框架,ncnn是cpu框架中最快的,安裝包體積最小,跨平臺兼容性中也是最好的。以蘋果主推的CoreML為例,CoreML是蘋果主推的 iOS gpu計算框架,速度非???,但僅支持 iOS11以上的 iphone手機受眾太狹窄。非開源也導致開發(fā)者無法自主擴展功能。
02.
ncnn功能簡介
ncnn支持卷積神經(jīng)網(wǎng)絡,支持多輸入和多分支結(jié)構(gòu),可計算部分分支無任何第三方庫依賴,不依賴 BLAS/NNPACK 等計算框架純 C++ 實現(xiàn),跨平臺,支持 android ios 等ARM NEON 匯編級良心優(yōu)化,計算速度極快精細的內(nèi)存管理和數(shù)據(jù)結(jié)構(gòu)設計,內(nèi)存占用極低支持多核并行計算加速,ARM big.LITTLE cpu 調(diào)度優(yōu)化。
支持基于全新低消耗的 vulkan api GPU 加速整體庫體積小于 700K,并可輕松精簡到小于 300K可擴展的模型設計,支持 8bit 量化和半精度浮點存儲,可導入 caffe/pytorch/mxnet/onnx 模型支持直接內(nèi)存零拷貝引用加載網(wǎng)絡模型可注冊自定義層實現(xiàn)并擴展。