1. 介紹
歡聚時(shí)代AI跨平臺(tái)推理框架VNN正式開源啦!同時(shí),我們正式宣布!友商賣1200萬(wàn)一年的人臉識(shí)別 , 手勢(shì)肢體識(shí)別,人物實(shí)時(shí)摳像,圖像風(fēng)格化等等20余種能力的AI模型,我們現(xiàn)在全部免費(fèi)對(duì)外開放,假如你有美顏美妝,智能瘦身,AR人臉手勢(shì)貼紙人工智能開發(fā)者社區(qū),阿凡達(dá)數(shù)字人驅(qū)動(dòng),生成動(dòng)漫形象等需求,現(xiàn)在不必再承受每年高昂的AI收取費(fèi)用 , 使用VNN快盡情探索更多的業(yè)務(wù)場(chǎng)景吧!
此外,歡聚時(shí)代希望VNN可以讓更多中小型企業(yè)享受到AI帶來(lái)的切實(shí)收益,同時(shí)一同把VNN建設(shè)成全平臺(tái)商用性最好的基礎(chǔ)AI推理框架,讓更多的企業(yè)可以把自己的小模型跑在不同終端(IOS//PC/MAC/Linux)
性能對(duì)比:
278
人臉關(guān)鍵點(diǎn)
VNN(免費(fèi)模型) VS友商(商用模型)
準(zhǔn)確率
識(shí)別率
抖動(dòng)及閃爍
CPU使用率
半小時(shí)耗電
VNN
87%
93%
3/31個(gè)用例
VNN高于友商2%-3%
VNN高于友商1%-3%
友商
72%
91%
7/31個(gè)用例
2. 效果預(yù)覽(部分)
106 | 278人臉關(guān)鍵點(diǎn)
賽博朋克人臉風(fēng)格化
迪士尼人臉風(fēng)格化
螞蟻呀嘿 | 人臉驅(qū)動(dòng)
動(dòng)物摳圖
圖像風(fēng)格化
人物摳圖
天空摳圖
手指手勢(shì)識(shí)別
3. 技術(shù)簡(jiǎn)介
近年來(lái)深度學(xué)習(xí)一直是比較火熱的賽道,各種神經(jīng)網(wǎng)絡(luò)模型也是層出不窮 。受到算力因素的影響,神經(jīng)網(wǎng)絡(luò)模型在端側(cè)的部署落地也影響著AI的發(fā)展 。NCNN、MNN、TNN等推理引擎的開源為AI的生態(tài)注入了一溪活水,推動(dòng)著深度學(xué)習(xí)更高效更智能的應(yīng)用于人們的生活 。
歡聚集團(tuán)對(duì)深度學(xué)習(xí)領(lǐng)域持續(xù)投入,在研究神經(jīng)網(wǎng)絡(luò)模型的同時(shí)也自研了深度學(xué)習(xí)前向推理框架VNN,具有高性能、低功耗、多平臺(tái)、輕量級(jí)的特性,可用于移動(dòng)端、PC端以及服務(wù)端神經(jīng)網(wǎng)絡(luò)模型的部署,并在實(shí)際業(yè)務(wù)產(chǎn)品中加以打磨優(yōu)化 。目前VNN框架已經(jīng)能很好的支持直播、短視頻等應(yīng)用場(chǎng)景 。
為了推動(dòng)其進(jìn)一步的發(fā)展,團(tuán)隊(duì)決定把該項(xiàng)目開源,為開源社區(qū)做出貢獻(xiàn)的同時(shí),也能讓感興趣的朋友可以給出一些批評(píng)和建議,一起把VNN打造成業(yè)界領(lǐng)先的深度學(xué)習(xí)推理框架 。
4. 整體架構(gòu)
作為神經(jīng)網(wǎng)絡(luò)部署框架,VNN致力于填補(bǔ)AI模型與應(yīng)用場(chǎng)景之間的橋梁,提供了從模型轉(zhuǎn)換到端側(cè)部署的一系列工具,如下
VNN框架架構(gòu)
VNN是模型轉(zhuǎn)換工具鏈 , 主要實(shí)現(xiàn)從AI(深度學(xué)習(xí)框架訓(xùn)練的)模型到VNN模型的轉(zhuǎn)換 。是目前應(yīng)用最廣的深度學(xué)習(xí)訓(xùn)練框架,VNN 以語(yǔ)言實(shí)現(xiàn),主要支持了模型的轉(zhuǎn)換 , 通過導(dǎo)入VNN 的模塊,簡(jiǎn)單的幾句代碼即可轉(zhuǎn)換出跨平臺(tái)的VNN模型 。模型直轉(zhuǎn)方案相對(duì)中轉(zhuǎn)方案可以更好地解決因版本問題導(dǎo)致的模型轉(zhuǎn)換錯(cuò)誤和算子缺失等部署痛點(diǎn) 。另外,為了支持等其他訓(xùn)練框架的模型轉(zhuǎn)換為VNN模型,VNN也支持經(jīng)ONNX模型中轉(zhuǎn)后的模型轉(zhuǎn)換 。
VNN Core 是核心算子庫(kù),實(shí)現(xiàn)模型解析和計(jì)算、內(nèi)存池管理等功能 , 包含深度調(diào)優(yōu)的幾十種常見AI算子的實(shí)現(xiàn) 。在算子計(jì)算效率方面,具體而言,客戶端主流硬件平臺(tái)包括x86、、ARMv7、ARMv8、ARMv8.2以及、Metal等多種體系結(jié)構(gòu),不同的體系結(jié)構(gòu)在CPU寄存器數(shù)量、訪存方法、SIMD寄存器位數(shù)、半精度浮點(diǎn)指令支持等若干方面存在差異,這些差異對(duì)算子計(jì)算效率有明顯影響 。VNN針對(duì)各硬件平臺(tái)的特性編寫匯編算子或算子,充分發(fā)揮硬件的計(jì)算潛力;其次,深度學(xué)習(xí)模型常用的卷積層具有多種實(shí)現(xiàn) , 每種實(shí)現(xiàn)在不同的輸入尺寸和卷積層參數(shù)下性能各有優(yōu)劣 。VNN包含了卷積層的多種實(shí)現(xiàn),并通過VNN 的自動(dòng)測(cè)速功能或手工指定的方法為每個(gè)卷積層選擇效率最優(yōu)的實(shí)現(xiàn) 。
VNN Kit 是工具函數(shù)庫(kù),實(shí)現(xiàn)日志輸出管理和模型結(jié)果變換等功能 。VNN設(shè)計(jì)了完善的異常處理機(jī)制,并提供日志輸出管理功能,方便開發(fā)者從日志中獲取具體的異常信息,提高SDK接入和調(diào)試效率 。其次,考慮到客戶端開發(fā)者常遇到的攝像頭采集畫面鏡像、倒置問題 , VNN提供了對(duì)模型結(jié)果進(jìn)行旋轉(zhuǎn)、翻轉(zhuǎn)的功能,方便開發(fā)者根據(jù)實(shí)際情況調(diào)整模型結(jié)果 , 節(jié)省開發(fā)者的編碼時(shí)間 。
VNN SDKs 包括 VNN Face(VNN 人臉關(guān)鍵點(diǎn)檢測(cè))、VNN(VNN 手勢(shì)檢測(cè)) 等各AI功能的頂層實(shí)現(xiàn)庫(kù) 。VNN SDKs 通過對(duì)上文 VNN Core、VNN Kit 庫(kù)的共享引用,減少代碼冗余 。對(duì)于移動(dòng)端占比最大的ARMv8.x架構(gòu),在、iOS平臺(tái)下全部功能的打包體積分別為2.3MB、2.0MB , 適用于對(duì)安裝包體積敏感的場(chǎng)景 。其次,VNN SDKs提供了跨平臺(tái)API人工智能開發(fā)者社區(qū),方便跨平臺(tái)開發(fā)并獲得一致的體驗(yàn) 。
5. 優(yōu)勢(shì)
(1) 多種實(shí)用AI能力
VNN的首個(gè)版本中,開放了人臉關(guān)鍵點(diǎn)檢測(cè)、人像背景分割、手勢(shì)識(shí)別、天空分割、衣服分割、頭部分割、頭發(fā)分割、動(dòng)物分割(貓狗)、表情驅(qū)動(dòng)、文檔矯正、場(chǎng)景分類等21個(gè)AI功能,可用于美顏、瘦臉、表情貼紙、手勢(shì)玩法(控雨)、頭發(fā)換色等實(shí)際應(yīng)用場(chǎng)景,覆蓋直播、短視頻、社交工具及其它相關(guān)業(yè)務(wù) 。
以人臉關(guān)鍵點(diǎn)檢測(cè)為例 , 人臉關(guān)鍵點(diǎn)檢測(cè)的作用是定位人臉輪廓、眼睛、眉毛、嘴唇等的位置,它是自動(dòng)瘦臉等智能美顏美妝特效的基礎(chǔ)算法 。目前自研人的臉關(guān)鍵點(diǎn)檢測(cè)能夠滿足點(diǎn)位準(zhǔn)確,識(shí)別率高,抖動(dòng)閃爍幅度?。??牡偷囊??,在效果和性能上持平或優(yōu)于商湯的相同產(chǎn)品 。經(jīng)過多輪的評(píng)測(cè)后,公司內(nèi)部已完成對(duì)商湯人臉關(guān)鍵點(diǎn)SDK的替換 , 成為旗下各個(gè)應(yīng)用最基礎(chǔ)的AI功能模塊 。以下是自研人臉278點(diǎn)關(guān)鍵點(diǎn)檢測(cè)的效果和在美顏瘦臉上的應(yīng)用 。
人臉 | 美顏演示
視覺AI技術(shù)提供了對(duì)現(xiàn)實(shí)世界更深入的解構(gòu)和重構(gòu)能力,我們可以從中發(fā)掘新的玩法、樂趣和商機(jī) 。以VNN提供的“迪士尼人臉風(fēng)格化”應(yīng)用為例,首先通過人臉關(guān)鍵點(diǎn)SDK檢測(cè)出圖像中的人臉,其次通過迪士尼人臉風(fēng)格化SDK根據(jù)這張現(xiàn)實(shí)中的人臉和關(guān)鍵點(diǎn)信息 , 生成臉型角度一致的、具有迪士尼風(fēng)格的人臉 , 最后通過人臉分割SDK識(shí)別現(xiàn)實(shí)人臉每個(gè)像素位置,實(shí)現(xiàn)生成人臉對(duì)現(xiàn)實(shí)人臉的精細(xì)替換 。以下是利用上述3個(gè)VNN SDK協(xié)作實(shí)現(xiàn)“迪士尼人臉風(fēng)格化”的示例 。
VNN將持續(xù)優(yōu)化已有AI功能的性能和效果,提供更多的AI能力的覆蓋 。目前VNN已為歡聚時(shí)代公司的Hago、VOO、、VFly、馬克水印相機(jī)等多個(gè)應(yīng)用產(chǎn)品提供持續(xù)的AI能力支持, 也希望這款開放的SDK能為更多移動(dòng)端和PC端的應(yīng)用產(chǎn)品貢獻(xiàn)一份力量 。
(2) 多平臺(tái)支持
VNN支持、iOS、、MacOS、大系統(tǒng)平臺(tái),而且在各個(gè)平臺(tái)上,所有的AI功能實(shí)現(xiàn)接口風(fēng)格統(tǒng)一,SDK調(diào)用接口一致 , 模型文件基本一致 , 基本可以做到幾行代碼就實(shí)現(xiàn)一個(gè)AI功能 。以人臉關(guān)鍵點(diǎn)SDK為例,幾行代碼就能實(shí)現(xiàn)對(duì)SDK從創(chuàng)建、設(shè)置、運(yùn)行到銷毀整個(gè)生命周期的控制 。
【歡聚時(shí)代AI跨平臺(tái)推理框架VNN正式開源】VNN使用Demo
另外 , VNN提供了詳細(xì)的使用說明文檔,同時(shí)還提供了各個(gè)平臺(tái)的調(diào)用Demo,助力AI功能在應(yīng)用端更高效、更快捷的落地 。
(3) 高性能低功耗
以下為VNN 熱門SDK在主流手機(jī)上的運(yùn)行速度 。大部分功能均能以實(shí)時(shí)或準(zhǔn)實(shí)時(shí)的速度運(yùn)行 。人像分割圖片版SDK主要應(yīng)用于影像編輯與創(chuàng)作 , 可在滿足生產(chǎn)效率的前提下提供高質(zhì)量的分割效果 。人臉關(guān)鍵點(diǎn)和手勢(shì)識(shí)別在手機(jī)上單獨(dú)運(yùn)行時(shí),基本不存在發(fā)熱現(xiàn)象 。
VNN性能對(duì)比
6. 下一步計(jì)劃
(1) 開放GPU支持 。針對(duì)高功耗的,計(jì)算量大的大模型,基于GPU的實(shí)現(xiàn)可以加快模型前向速度,降低功耗 。
(2) 開放轉(zhuǎn)換工具鏈VNN?;诘霓D(zhuǎn)換工具鏈,可以快捷地將模型或其它框架下經(jīng)ONNX中轉(zhuǎn)的模型,轉(zhuǎn)換成VNN的模型并部署到各端 。
(3) 開源代碼 , 助力AI生態(tài)的繁榮發(fā)展,貢獻(xiàn)VNN的力量 。
本文到此結(jié)束,希望對(duì)大家有所幫助 。
- 關(guān)于人工智能時(shí)代來(lái)臨你希望能為你做什么?
- 人工智能時(shí)代即將到來(lái),ChatGPT的玩法有哪些?
- 人工智能時(shí)代需要怎樣的技能人才?
- 人工智能時(shí)代真正的危機(jī)
- ?棉柔巾可以當(dāng)洗臉巾用,全棉時(shí)代棉柔巾和洗臉巾有什么區(qū)別
- 人工智能時(shí)代,銷售員如何避免被AI淘汰?
- 人工智能時(shí)代即將到來(lái),會(huì)有更多的普通人失業(yè),你相信嗎?
- 人工智能時(shí)代來(lái)臨 這家日本最大的汽車制造商如何應(yīng)對(duì)
- 人工智能時(shí)代即將來(lái)臨,Siri和微軟小娜改變用戶
- 人工智能時(shí)代來(lái)臨 沒有任何悲觀的理由
