高通發布深度模型量化/壓縮庫 AIMET | 翻譯徵文 | 雷鋒字幕組
本文為雷鋒字幕組「觸摸世界前沿科技 | 翻譯徵文 」活動收錄稿件
在高通科技公司,我們一直在積極研究1,2,3 和開發人工智慧解決方案,目標是讓人工智慧在設備、機器、車輛和事物中無處不在。在過去的十年中,我們對能源效率的關注使得每瓦特AI性能有了顯著的提高,這使得從設備上的虛擬助理和翻譯到智慧安全攝影機和安全駕駛的各種增強體驗成為可能。
這些每瓦性能提升背後的驅動力是我們在人工智慧模型效率方面的領先研究。所謂模型效率,我們指的是縮小模型、減少計算、減少記憶體流量、降低延遲和有效使用硬體的技術。傳統上,我們通過像神經資訊處理系統大會(NeurIPS)這樣的學術會議上的論文和研討會,或者像高通神經處理軟體包這樣的產品商業化,將我們突破性的人工智慧研究貢獻給社區的其他成員。
現在我們更進一步。高通創新中心(QuIC)很高興能在GitHub上開源AI模型效率工具包(AIMET),與其他領先的AI研究人員合作,並為AI開發人員提供一個簡單的庫插件,用於最先進的模型效率性能。這個開源項目的目標是幫助生態系統向整數推理遷移,因為我們相信這是提高每瓦特性能的有效方法。
AIMET用於大規模的節能人工智慧
AIMET是一個庫,支援先進的量化和壓縮技術的訓練神經網路模型。量化技術試圖在不犧牲模型精度的情況下,系統地減少用於權重參數和激活計算的比特數,例如從32位浮點值移動到8位不動點值。壓縮技術試圖系統地刪除激活節點和節點之間的連接,而不犧牲模型的準確性。AIMET支援各種高級量化技術,如無數據量化和壓縮技術,如空間奇異值分解(SVD)和通道修剪。
壓縮或量化降低了深度神經網路的模型大小。
優化神經網路並不具有可伸縮性,因為它既耗時又耗費工程資源。在設計AIMET時,重點是開發能夠通過簡單的API調用顯著提高模型效率的技術。AIMET自動提高了深度學習神經網路模型的運行時性能、延遲、功率效率和記憶體需求,同時避免了耗時且難以重複的手工調優。該庫直接插入TensorFlow和PyTorch培訓框架,以便於使用,允許開發人員直接從現有管道調用api。
AIMET包括量化和壓縮技術,允許在規模上簡單部署AI模型。
按此處查看大圖
確保AIMET能夠利用常用的硬體加速技術也很重要。AIMET的設計目的是讓神經網路在定點人工智慧硬體加速器(如高通Snapdragon平台上的加速器)上更有效地運行。
那你為什麼要對AIMET感興趣呢?這就是結果。該工具包是基於高通人工智慧研究論文發表的一些工作,包括無數據量化(DFQ)。通過一系列簡單的API調用,AIMET可以將現有的32位浮點模型量化為8位定點模型,而不需要犧牲很多精度,也不需要對模型進行微調。作為準確性維護的一個例子,DFQ方法應用於幾個流行的網路,如MobileNet-v2和ResNet-50,結果在沒有任何訓練數據的情況下,以自動化的方式從精度下降到8位量化,精度損失不到0.9%。此外,量化模型,我們已經運行在高通六邊形DSP而不是高通Kryo CPU導致了5倍至15倍的加速。另外,8位模型的記憶體佔用也比32位模型小4倍。
無數據量化支援INT8推理,與FP32模型相比,其精度損失非常小。
同樣,AIMET也可以顯著壓縮模型。對於流行的模型,如ResNet-50和ResNet-18,使用空間SVD和通道剪接進行壓縮,可以減少50%的MAC(乘法累積),同時將精度保持在原始未壓縮模型的1%以內。AIMET壓縮技術(空間SVD和通道剪除)使MACs降低了50%,同時將精度保持在原始模型的1%左右。
一個簡單的集成到通用AI開發工作流程
高通技術公司多年來一直在為開發人員創造工具,以更有效地利用硬體——從圖形加速到計算相機應用。我們知道工具適應典型的開發工作流程、抽象的複雜性、提供引人注目的好處以及易於使用是多麼重要。例如,Qualcomm Neural Processing SDK被設計用來幫助開發人員節省時間和精力來優化帶有Snapdragon的設備上訓練好的神經網路的性能。事實上,我們的量化技術從2019年夏天開始就和高通神經處理SDK一起發布了。
對於QuIC AIMET項目,開發人員將能夠獲取最新和最好的庫,它應該與他們現有的培訓工作流程無縫集成。AIMET輸入一個TensorFlow或PyTorch訓練模型,然後可以對其進行壓縮、量化和微調。量化模型可以在具有定點硬體加速的硬體上很好地運行。例如,優化後的模型以ONNX或TensorFlow的形式輸出,然後通過Qualcomm Neural Processing SDK在Snapdragon上運行。
我們也很高興地報告,這些技術已經在真實的商業應用程式上得到了實際開發人員的測試,其改進符合我們的理論基準測試結果。例如,它們已被用於優化用於生物識別、語音識別和汽車的商業模型。
通過合作推進人工智慧模型效率研究
人工智慧模型效率是一個重要的研究領域,它對整個人工智慧社區具有共同的重要性,可以使人工智慧生態系統和加速大規模的設備人工智慧開發。QuIC創建這個項目是為了與其他人工智慧研究人員合作,提高我們最先進的模型效率研究,並為開源社區做出貢獻。QuIC致力於定期為該項目貢獻前沿研究。請加入我們共同努力,提高人工智慧模型的效率。
在高通人工智慧研究公司(Qualcomm AI Research),我們相信研究並不意味著要呆在實驗室里。我們迅速將我們的研究突破商業化並擴大規模,跨越設備和行業,縮短了實驗室研究和提供豐富生活的先進技術之間的時間間隔。AIMET的開源進一步加速了這個創新周期。
加入QuIC AIMET GitHub項目
訂閱我們的通訊,獲取關於移動計算的最新資訊
引用:
1.Markus Nagel, Mart van Baalen, Tijmen Blankevoort, Max Welling. 《通過權重均衡和偏差校正實現無數據量化》IEEE電腦視覺國際會議(ICCV),首爾,2019年10月(口頭報告)
2.Markus Nagel, Rana Ali Amjad, Mart van Baalen, Christos Louizos, Tijmen Blankevoort.《上升還是下降?用於訓練後量化的自適應舍入》
3.Andrey Kuzmin, Markus Nagel, Saurabh Pitre, Sandeep Pendyam, Tijmen Blankevoort, Max Welling《卷積神經網路結構壓縮的分類與評價》
Qualcomm Snapdragon、Qualcomm Hexagon、Qualcomm Kyro、AI Model Efficiency Toolkit、Qualcomm Neural Processing SDK都是Qualcomm Technologies公司及其子公司的產品。高通人工智慧研究是高通技術公司的一項倡議。高通創新中心是高通技術公司的全資子公司。
本文為雷鋒字幕組「觸摸世界前沿科技 | 翻譯徵文 」活動收錄稿件