從學界到工業界,“開源”已經成為AI領域的一個關鍵詞。一方面,它以“授人以漁”的方式為AI構建了一個開放共進的生態環境,幫助行業加速AI應用落地;另一方面,在解決行業實際問題時持續更新和迭代,源源不斷地給AI領域輸送重要的技術養料和創造力,可以說開源是AI落地和繁榮不可或缺的源動力。
6月10日,騰訊優圖實驗室宣佈正式開源新一代移動端深度學習推理框架TNN,通過底層技術優化實現在多個不同平臺的輕量部署落地,效能優異、簡單易用。基於TNN,開發者能夠輕鬆將深度學習演算法移植到手機端高效的執行,開發出人工智慧 APP,真正將 AI 帶到指尖。
一、輕量級部署,TNN助力深度學習提速增效
深度學習對算力的巨大需求一直制約著其更廣泛的落地,尤其是在移動端,由於手機處理器效能弱、算力無法多機拓展、運算耗時長等因素常常導致發熱和高功耗,直接影響到app等應用的使用者體驗。騰訊優圖基於自身在深度學習方面的技術積累,並借鑑業內主流框架優點,推出了針對手機端的高效能、輕量級移動端推理框架TNN。
TNN在設計之初便將移動端高效能融入核心理念,對2017年開源的ncnn框架進行了重構升級。通過GPU深度調優、ARM SIMD深入彙編指令調優、低精度計算等技術手段,在效能上取得了進一步提升。以下是MNN, ncnn, TNN框架在多款主流平臺的實測效能:
TNN在麒麟970、驍龍835、驍龍845,驍龍615平臺實測效能資料
注:縱軸單位:ms 測試分支:MNN:1.0.0(2020.05.07), ncnn:20200413, TNN: master(2020.06.10)
測試模型:https://github.com/alohali/benchmark-models
低精度計算的運用對TNN的效能提升發揮了重要作用。在神經網路計算中,浮點精度在許多研究和業務落地成果上都被證明存在一定冗餘,而在計算、記憶體資源都極為緊張的移動端,消除這部分冗餘極為必要。TNN引入了INT8、 FP16、 BFP16等多種計算低精度的支援,相比大部分僅提供INT8支援的框架,不僅能靈活適配不同場景,還讓計算效能大大提升。TNN通過採用8bit整數代替float進行計算和儲存,模型尺寸和記憶體消耗均減少至1/4,在計算效能上提升50%以上。同時引入arm平臺BFP16的支援,相比浮點模型,BFP16使模型尺寸、記憶體消耗減少50%,在中低端機上的效能也提升約20%。驍龍615平臺實測:
通用、輕便是TNN框架的另一大亮點。長久以來,不同框架間的模型轉換都是AI專案應用落地的痛點。TNN設計了與平臺無關的模型表示,為開發人員提供統一的模型描述檔案和呼叫介面,支援主流安卓、iOS等作業系統,適配CPU、 GPU、NPU硬體平臺。企業一套流程就能部署到位,簡單易用、省時省力。同時, TNN通過ONNX可支援TensorFlow, PyTorch, MXNet, Caffe等多種訓練框架,目前支援ONNX運算元超過80個,覆蓋主流CNN網路。TNN所有運算元均為原始碼直接實現,不依賴任何第三方,介面易用,切換平臺僅需修改呼叫引數即可。
二、開源文化興起,AI底層技術助推產業發展
事實上,作為騰訊旗下頂級AI實驗室,騰訊優圖長期致力於AI基礎設施的研發和推進。此前,騰訊優圖已開發了Rapidnet 前向計算框架、RapidAIoT 邊緣計算框架,實現了業界首個專注移動端的推斷框架ncnn的開源,並在業界受到廣泛推崇。從2017年開源至今,ncnn在GitHub上star(8.9k)和 fork(2.3k)數均領先於其它各大推理框架。
據悉,TNN已於3月中旬在騰訊內部開源,為騰訊QQ、QQ空間、騰訊微視、騰訊雲、天天P圖等多款產品和服務中持續提供技術能力,釋放出更多效能。
“TNN已在GitHub上開源,歡迎業界人士參與協同共建,共同打造更優的移動端推理框架。“騰訊優圖實驗室副總經理吳永堅介紹,騰訊優圖後續將在現有CV業務的基礎上研發更多的AI推理模型,如語音、NLP等相關業務,同時開展針對CPU、GPU伺服器端的服務,為業界公司提供更廣泛的優化服務。“作為產業發展的高速公路,以深度學習框架、元件為代表的AI基礎設施將是未來的主流趨勢,騰訊優圖也將以此為著力點,助推產業發展。”吳永堅表示,騰訊優圖還將持續開發模型訓練元件、模型壓縮元件、基礎演算法元件,並擇機開源,希望從框架到平臺、到演算法,打造一體化的AI基礎設施,降低AI門檻,加速產業發展。
隨著以開源為代表的新程式碼文化的興起,騰訊近年來在開源領域表現亮眼:在全球最大的程式碼託管平臺GitHub上,騰訊釋出的開源專案已經超過一百個,涵蓋雲原生、大資料、AI、雲端計算、安全、硬體等多個熱門的技術方向。
通過開源協同,騰訊將各個事業群最底層和共性的技術能力進行梳理和拉通,在業務實踐和海量使用者檢驗下,優質的內部開源專案不僅在公司層面推廣複用,同時也對外貢獻整個開源社群。僅在Github上,騰訊的開源專案就收穫了30w+star數,躋身國際上有影響力的開源企業之一。
在開源的道路上,騰訊不僅將內部優質專案持續對外開放,也積極與開源社群協同合作,發揮中國企業的科技力量,推動開源和開放進一步升級。
開源地址:https://github.com/Tencent/TNN
深挖智慧這口井,同好新增vx:zhinengxiaoyan
•AI產業新媒體;
•澎湃新聞科技榜單月度top5;
•文章長期“霸佔”鈦媒體熱門文章排行榜TOP10;
•著有《人工智慧 十萬個為什麼》
•【重點關注領域】智慧家電(含白電、黑電、智慧手機、無人機等AIoT裝置)、智慧駕駛、AI+醫療、機器人、物聯網、AI+金融、AI+教育、AR/VR、雲端計算、開發者以及背後的晶片、演算法等。