成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

揭秘支付寶中的深度學習引擎:xNN

人工智能 深度學習
xNN的模型壓縮工具 (xqueeze) 在業務模型上實現了近50倍的壓縮比, 使得在包預算極為有限的移動App中大規模部署深度學習算法成為可能。xNN的計算性能經過算法和指令兩個層面的深度優化,極大地降低了移動端DL的機型門檻。

本文介紹支付寶App中的深度學習引擎——xNN。xNN通過模型和計算框架兩個方面的優化,解決了深度學習在移動端落地的一系列問題。xNN的模型壓縮工具 (xqueeze) 在業務模型上實現了近50倍的壓縮比, 使得在包預算極為有限的移動App中大規模部署深度學習算法成為可能。xNN的計算性能經過算法和指令兩個層面的深度優化,極大地降低了移動端DL的機型門檻。

[[205186]]

深度學習——云端還是移動端?

近來,深度學習(DL)在圖像識別、語音識別、自然語言處理等諸多領域都取得了突破性進展。DL通常給人以計算復雜、模型龐大的印象——從Siri語音助手到各種聊天機器人、再到支付寶“掃五福”,移動端收集數據+云端加工處理似乎成為一種常識。然而對很多應用來說,這種模式其實只是無奈之選。

[[205187]]

去年春節的“掃五福”活動中,為了識別手寫“福”字,支付寶多媒體團隊調動了近千臺服務器用于部署圖像識別模型。可是如此規模的集群也沒能抵擋住全國人民集五福的萬丈熱情。為了防止云端計算能力超載,活動中后期不得不啟動了降級預案——用計算量小但精度也較低的傳統視覺算法替代了DL模型。降級雖然不妨礙大伙繼續熱火朝天地收集福卡,但對用戶體驗無疑是有一定影響的,比如一些不可言說的漢字也被誤判成了“福”字。

另一方面,DL在云端則意味著數據必須上傳。即使不考慮計算壓力,從網絡延時、流量、隱私保護等角度也給用戶體驗帶來種種限制。因此,對相當多的應用來說,DL模型前移到移動端部署可以看作是一種剛需。

兩大挑戰

最近,隨著手機處理器性能的提升和模型輕量化技術的發展,移動端DL正在變得越來越可行,并得到了廣泛的關注。蘋果和谷歌已經分別宣布了各自操作系統上的DL框架Core ML和Tensorflow Lite,這無疑將極大地促進移動端DL的發展。但是,尤其對于支付寶這樣的國民App來說,仍然存在一些嚴峻的挑戰是無法通過直接套用廠商方案來解決的。

1. 機型跨度大:支付寶App擁有數億受眾群體,在其中落地的業務必須對盡可能多的用戶、盡可能多的機型提供優質的體驗。對支付寶來說,參考Core ML只將功能開放給少數高端機型的做法是不合適的。因而無論在運行速度和內存占用等性能指標、還是在兼容性上,支付寶的移動端DL都必須做到***,才能***幅度地降低使用門檻。

2. 包尺寸要求嚴:支付寶App集成了眾多的業務功能,安裝包資源非常緊張,一個新模型要集成進安裝包往往意味著需要下線其他的功能。而即便通過動態下發的形式進行部署,DL模型的大小也會強烈影響用戶的體驗。隨著移動端智能化程度的不斷提升,直接在端上運行的DL應用必然會越來越多,這以當前單個模型大小就動輒數十、數百M的尺寸來看幾乎是不可想象的。同時,移動端DL引擎本身的SDK也需要盡可能地瘦身。

五大目標

支付寶xNN是針對國民App環境定制開發的移動端DL解決方案,項目制定了如下技術目標。

1. 輕模型:通過高效的模型壓縮算法,在保證算法精度的前提下大幅減小模型尺寸。

2. 小引擎:移動端SDK的深度裁減。

3. 快速:結合指令層和算法層的優化,綜合提升DL計算的效率。

4. 通用:為保證***的機型覆蓋率,以最為通用的CPU而非性能更強勁的GPU作為重點優化平臺。不僅支持經典的CNN、DNN網絡,也支持RNN、LSTM等網絡形態。

5. 易用:工具鏈對業務保持高度友好——使得算法工程師們能更好地專注于算法本身,在不需要成為模型壓縮專家和移動端開發專家的情況下都能快速完成云端模型到移動端模型的轉換和部署。

主要特性一覽

xNN為DL模型提供了從壓縮到部署、再到運行時的統計監控這一全生命周期的解決方案。xNN環境由開發后臺和部署前臺兩部分組成。

開發后臺以xqueeze工具鏈為核心,支持多種訓練框架。業務可以使用xqueeze壓縮、優化自己的DL模型,得到尺寸大幅減小、運行速度顯著加快的模型版本。壓縮后的模型根據使用場景,可以通過App安裝包內置或按需下發的形式部署到移動端。

在部署前臺,xNN的計算框架提供高效的前向預測能力。xNN的應用層在計算的基礎上還提供了模型下發、數據統計、錯誤上報等一站式能力。xNN還通過一個jsapi提供了直接對接H5應用的能力——通過DL模型的動態下發和H5,能夠實現完全的動態化,從而在客戶端不發版的情況下完成算法+邏輯的同時更新。

上圖給出了xNN的主要特性。在xqueeze模型壓縮的基礎上,xNN還支持通過快速處理稀疏網絡來提高性能。xNN支持了豐富的網絡結構類型,包括經典CNN/DNN、SSD目標檢測和LSTM。xNN的部署框架原生兼容Caffe,業務可以在不做轉換的情況下直接在移動端運行已有的Caffe模型,以快速評估效果。而經過壓縮的私有格式模型更小、更快。在Tensorflow和Keras平臺上訓練的模型也能夠在原有的環境上進行壓縮,然后轉換為xNN支持的格式部署到移動端。不同于core ML,xNN理論上支持安卓和iOS上的所有機型。

xqueeze模型壓縮

xNN-xqueeze的模型壓縮流程如下圖之(a)所示,包括神經元剪枝 (neuron pruning)、突觸剪枝 (synapse pruning)、量化 (quantization)、網絡結構變換 (network transform)、自適應Huffman編碼 (adaptive Huffman)、共5個步驟。其中前三步理論上是有損的,而使用xqueeze對網絡權重和壓縮超參進行finetune,能夠將精度的下降保持在可控甚至可忽略的程度。后兩步則完全不影響網絡的輸出精度。整個流程不僅會減小模型的尺寸,還通過網絡的稀疏化和結構優化,顯著提高前向預測的速度。

在領域的經典方案DeepCompression的基礎上,xqueeze 進一步擴充了neuronpruning和network transform的能力。其中,neuron pruning能夠逐次裁剪掉“不重要”的神經元和與之對應的權重參數。通過neuron pruning和synapse pruning的結合,在模型精度和壓縮比之間達成更好的平衡。xqueeze還具有network transform——在網絡的宏觀層面進行優化的能力,networktransform腳本掃描整個網絡,診斷出可優化的點,包括在有條件的情況下自動地進行層 (layer) 的組合與等效替換。此外,xqueeze通過自適應地使用Huffman編碼,有效提升不同稀疏程度的模型之壓縮比。

如下圖所示,對于業務分類模型,使用xqueeze工具鏈能夠實現45.5倍的壓縮,在同等程度的精度損失下,壓縮率超越經典方案達60%。

xNN計算性能優化

xNN的性能優化不局限于底層,而是通過與xqueeze工具鏈的配合,在算法和指令兩個層面同步發力,為更為深入的優化創造空間。

如下圖所示,在算法層,xqueeze的剪枝在壓縮模型尺寸的同時,也促進了網絡的稀疏化——即催生出大量的零值權重。相應地,xNN在指令層實現了稀疏運算模塊,在卷積和全連接計算中,自動忽略這些零值權重,減小計算開銷,提升速度。又如之前已經提到的,在xqueeze的network transform階段,會對網絡進行宏觀層面的優化,包括將相鄰的層進行結果上等效的組合與替換,來減少計算的冗余度和提高訪問存儲器的效率。要充分發揮network transform的效能,也離不開指令層實現的支持。

在指令層,xNN通過智能調配各個內核的負載,提升多線程環境下的性能。xNN在設計中不僅關注計算資源,還充分考慮了訪問存儲器的開銷,通過精細化地調度數據的讀寫來提升cache的***率。最為重要的是,所有核心計算模塊均由某位芯片行業出身的指令集架構專家一條一條匯編代碼手寫而成。

在以SqueezeNet為基礎的業務分類模型上,xNN在Qualcomm 820 CPU上能夠輸出29.4 FPS的前向預測幀率,在蘋果A10 CPU (iPhone 7)上的幀率則達到52.6 FPS,比CPU與GPU并用的Core ML還要更快。

業務落地

支付寶App已經集成了xNN。在支付寶的“AR掃一掃”入口,90%以上的Android和iOS機型都在使用xNN來完成前置物品分類,向用戶推薦“AR掃花識花”等便利功能。xNN本身的健壯性也經受住了“七夕送你一朵花”這樣高強度、廣機型覆蓋的大型運營活動的考驗。該模型的***版本在確保精度的前提下,尺寸已壓縮到100KB以下。Android平臺上,全功能xNN的SDK包增量僅200KB出頭,若根據特定應用做裁剪,將能夠輕松減小到100多KB。

xNN上線后,已在螞蟻和阿里內部引起了強烈反響,一大波移動端DL應用正在基于xNN緊張開發中,并在未來的幾個月中逐步提供給用戶使用。

【本文為51CTO專欄作者“阿里巴巴官方技術”原創稿件,轉載請聯系原作者】

戳這里,看該作者更多好文

責任編輯:武曉燕 來源: 51CTO專欄
相關推薦

2019-11-13 09:46:08

技術研發指標

2012-11-21 17:37:46

Oracle技術嘉年華

2021-01-25 14:13:26

iOS支付寶支付

2021-09-09 15:30:28

鴻蒙HarmonyOS應用

2018-03-27 12:02:31

央行支付寶紅包

2022-01-07 10:28:49

支付寶體驗科技

2020-06-02 13:34:16

支付寶小程序 V8 Worker

2014-11-17 10:52:56

支付寶去阿里化

2009-08-20 10:10:16

敏捷開發支付寶

2009-09-17 12:15:28

互聯網

2023-11-28 08:53:15

2017-08-13 10:22:44

支付寶深度學習人臉識別

2017-12-18 18:23:09

支付寶掃碼賺錢支付寶套路

2013-10-31 11:24:53

支付寶漏洞支付寶漏洞

2011-04-21 11:27:42

Firefox支付寶

2009-11-23 10:02:22

PHP支付寶接口

2009-12-14 16:31:00

Linux安裝支付寶

2013-11-28 11:15:43

微信支付寶支付戰爭

2015-10-13 09:13:42

2013-04-24 13:24:49

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 在线只有精品 | 日韩亚洲欧美一区 | 四虎海外 | 看特级黄色片 | 国产精品a久久久久 | 一级毛片在线播放 | 久久久久久免费精品一区二区三区 | 欧美一级片 | 成人在线视 | 不卡在线一区 | 亚洲欧美日韩国产综合 | 日韩欧美三级 | 中文字幕91av | 国产 日韩 欧美 制服 另类 | 国产高清在线精品 | 国产精品国产a | 久久久久久毛片免费观看 | 天天干夜夜操 | 伊人久久综合 | 欧美久久精品一级黑人c片 91免费在线视频 | 日韩91在线| 日本三级网站在线观看 | 天天人人精品 | 久久久久久久一区 | 日韩免费在线观看视频 | 久久亚洲欧美日韩精品专区 | 在线观看欧美一区 | 国产超碰人人爽人人做人人爱 | 国产极品车模吞精高潮呻吟 | 一区二区三区四区免费在线观看 | 色一级 | 亚洲国产精品一区二区久久 | 91精品一区二区三区久久久久 | 中文字幕国产一区 | 久久久久电影 | 亚洲一区 中文字幕 | 欧美日韩视频网站 | 免费成人av网站 | 国产精品精品3d动漫 | 久久无毛| 伊人网综合在线 |