《AI全行業賦能系列深度研究之五:領軍路徑分歧更大的模型還是更低的成本?-211213(67頁).pdf》由會員分享,可在線閱讀,更多相關《AI全行業賦能系列深度研究之五:領軍路徑分歧更大的模型還是更低的成本?-211213(67頁).pdf(67頁珍藏版)》請在三個皮匠報告上搜索。
1、領軍路徑分歧:更大的模型還是更低的成本? AI全行業賦能系列深度研究之五 證券分析師:劉洋A0230513050006、洪依真A0230519060003、施鑫展 A0230519080002、周海晨A0230511040036 2021.12.13 2 結論結論 以商湯、曠視為代表的AI明星在平臺上有什么特別的布局? 自研了深度學習訓練、推理平臺,大量算法積累,AIDC算力支持; 商湯科技:SenseCore大模型+小模型,降低AI應用落地成本; 曠視科技:Brain+平臺支撐了跨行業AIoT解決方案。 深度學習開源訓練框架格局如何?國內AI公司自研深度學習框架有何種意義? TensorFl
2、ow、PyTorch、MXNet、CNTK已可以滿足工業界、學界的絕大部分要求; 技術遺留問題:靜態圖、動態圖技術方案都還有缺陷,有同時解決的可能性; 國產平臺由于技術遺留問題、國產化等適配性等原因可能仍有空間。 為何AI大模型成為趨勢?復現大模型的難度在哪里? 以GPT為代表的大模型能大幅降低對數據量的需求,預訓練大模型+細分場景微調,更適合長尾落地。 但對存儲、算力要求極高,普通機構難以復現。商湯、曠視在復現大模型上有算力、訓練推理平臺優勢。 對于必然的碎片化AI落地,不同公司路徑差異在哪里?哪種路徑可能勝出? 更大的模型路徑:較高軟件占比,硬件外采;大規模參數的通用模型,極高的首次開發成
3、本;模型長尾投 入理想狀態接近0;適合額外硬件建設較少,下游需求標準化程度強,產業鏈已有分工度高的行業; 更低的成本路徑:自有生產線壓縮硬件成本;小模型、小算力,較低的首次開發成本;中臺復用等方式控 制成本。適合已有硬件基礎差,需求標準化程度低,產業鏈已有分工度低的行業。 PYmWjW9UnVbWxUwV9P9RbRtRrRpNpOkPpOsQfQrQnR7NrRwPwMnQmQMYqRrQ 3 兩種路徑更適合的場景兩種路徑更適合的場景 3 算法和平臺能力 全棧解決方案 硬 件 物 聯 軟 件 方 案 需要 額外 的硬 件建 設少 下游標準化程 度高 下游標準化程 度低 下游客戶付費 能力強
4、下游客戶付費 能力弱 產業 鏈分 工程 度高 產業 鏈分 工程 度低 智慧城市/安防 手機 需要 額外 的硬 件建 設多 工業智能化 物流 汽車 醫療 更低的成本 更大的模型 目錄目錄 1. AI產業鏈:從算力到應用 2. AI平臺層:何種訓練模型可以脫穎而出? 3. AI大模型:為何更大的模型成為行業新 趨勢 4. AI明星:商湯、曠視自研平臺亮點 5. AI碎片化問題:軟件公司應對的兩種路 徑熟優? 4 5 1.1 AI1.1 AI行業產業鏈行業產業鏈工作流程視角工作流程視角 設計、實現、運行: 算法設計環節:機器視覺、語音識別、自然語音處理、知識圖譜; 算法實現環節:深度學習框架,訓練、
5、推理部署,對模型的調參優化; 算法運行環節:AI芯片和AIDC超算中心,提供硬件基礎。 圖:算法實現工作流程 資料來源:英偉達、英特爾、寒武紀官網,申萬宏源研究 6 1.2 AI1.2 AI行業產業鏈行業產業鏈代表廠商代表廠商 資料來源:艾瑞咨詢中國人工智能產業研究報告()2020,申萬宏源研究 圖:AI行業更領域代表性公司 7 1.2 AI1.2 AI芯片:突破芯片:突破NvNv壁壘的三種可能性壁壘的三種可能性 AI芯片的整體性能=AI芯片硬件性能(AI芯片廠商算子庫和工具鏈+深度學習框架支持) AI芯片公司需 要做的軟件 生態壁壘產生的 根源在于軟硬件 的高度耦合 最大的工作量是對海量算子
6、 和特定芯片的支持 突破AI生態壁壘的三種可能機會 從蘋果MacOS X案例可以推測,當任何一家 AI芯片公司能夠從英偉達手中逐漸拿走10%份 額的時候,深度學習框架廠商也大概率會去逐 漸投入為該廠商的AI芯片去做特定優化。 AI編譯器的成熟 芯片性能和英偉達相比具備明顯優勢 等待英偉達失誤 1 2 3 AI芯片公司所采取不同突圍路線 AI芯片公 司遇到了 不同的瓶 頸 AMD 華為 寒武紀 谷歌 兼容CUDA的路線,借 力英偉達生態 在走英偉達的路線 深度學習框架+AI芯片” 自研路線 難點在于其更新迭代速度永遠跟不上CUDA并且很難做到完全兼容 華為:沒有深度學習框架廠商主動支持,其自研的
7、MindSpore框 架尚未解決TF/PyTorch面臨的共同痛點 谷歌:TPU本身性能還有進一步提升空間以及過于專用的問題 芯片本身性能以及算子庫豐富程度還有追趕空間,沒有深度學習 框架廠商基于芯片做特定優化 解決算子自動開發優化的問題,以及將訓練好的模 型部署到各種AI芯片上的問題,從而實現AI軟硬件 的解耦 AI芯片整體的性能是由基礎軟件和芯片硬件本身共 同決定的,雖然軟件生態存在短板,但是如果硬件 本身性能非常突出是有可能獲得整體上的優勢的 類比PC時代AMD在英特爾兩次犯錯時分別獲得了 明顯市占率提升的機會 資料來源:艾瑞咨詢中國人工智能產業研究報告()2020,申萬宏源研究 8 1
8、.2 AI1.2 AI平臺層:巨頭必爭之地平臺層:巨頭必爭之地 平臺層平臺層 AI平臺層: 支撐AI大規模訓練生產、部署的技術體系; 包括訓練框架、模型生產平臺、推理部署框架、數據平 臺。 訓練、推理部署框架是核心: 機器學習框架或深度學習框架:AI開發依賴的環境安裝、 部署、測試以及不斷迭代改進準確性和性能調優,框架 目的是為了簡化、加速和優化這個過程。 避免重復發明輪子,而專注于技術研究和產品創新。 巨頭競爭的核心點,各大廠建設算法模型數據庫,將其 封裝為軟件框架,為應用開發提供集成軟件工具包,為 上層應用開發提供了算法調用接口。 資料來源:艾瑞咨詢中國人工智能產業研究報告()2020,申
9、萬宏源研究 9 1.2 AI1.2 AI應用層:百花齊放,工程和變現能力為核心應用層:百花齊放,工程和變現能力為核心 資料來源:艾瑞咨詢中國人工智能產業研究報告()2020,申萬宏源研究 AI+安防、AI+金融是標配: 智慧城市和安防仍然是AI機器視 覺最成熟的落地場景; 安防+金融合計收入在四小龍中占 比都在50%以上。 云從科技:繼續探索AI在社區、 政務、金融更深層次全棧應用。 AI+手機仍然是最理想的收費 場景: 虹軟、商湯、曠視該業務毛利率 可能都在80%以上,純SDK收費, 理想的場景; 但規模后續增長有限 AI+汽車、 AI+教育、AI+零 售可能為新的增長空間: 商湯科技:AI
10、+汽車,探索機器視 覺在L2+自動駕駛應用。 曠視科技:探索AIoT在物流、智 造等多行業的廣泛應用 10 1.3 AI1.3 AI行業產業鏈行業產業鏈整體圖譜整體圖譜 應用軟件及應用軟件及 解決方案層解決方案層 算法層算法層 行業應用(安防、交通、智能制造、金融、醫療等)行業應用(安防、交通、智能制造、金融、醫療等) 應用軟件應用軟件解決方案解決方案 計算機視覺應用平臺計算機視覺應用平臺自然語言應用平臺自然語言應用平臺其他其他AIAI平臺平臺 通通 用用 技技 術術 算法模型算法模型 計算機視覺計算機視覺自然語言處理自然語言處理知識圖譜知識圖譜 其他其他 (智能語音、(智能語音、 自動駕駛等
11、)自動駕駛等) 圖像分類圖像分類目標檢測目標檢測 目標追蹤目標追蹤圖像分割圖像分割 文本分類文本分類信息抽取信息抽取 情感分析情感分析機器翻譯機器翻譯 知識表示知識表示知識抽取知識抽取 知識存儲知識存儲知識問答知識問答 平臺層平臺層 數據平臺數據平臺訓練框架訓練框架推理部署框架推理部署框架模型生產平臺模型生產平臺 采集采集標注標注 生產生產存儲存儲 Tensor Tensor FlowFlow CaffeeCaffee PyTorcPyTorc h h MXNetMXNet Tensor Flow LiteTensor Flow LiteSense PPLSense PPL PaddlePad
12、dle- -MobileMobileCore MLCore ML AutoMLAutoML 分布式分布式 INT8INT8加加 速技術速技術 算力層算力層 AIDCAIDC超算中心超算中心 服務器服務器移動終端設備移動終端設備AIAI傳感器傳感器 CPUCPUGPUGPUASICASICFPGAFPGA類腦芯片類腦芯片 CNTKCNTK PadlePadle PadlePadle 資料來源:艾瑞咨詢中國人工智能產業研究報告()2020,申萬宏源研究 目錄目錄 1. AI產業鏈:從算力到應用 2. AI平臺層:何種訓練模型可以脫穎而出? 3. AI大模型:為何更大的模型成為行業新 趨勢 4. A
13、I明星:商湯、曠視自研平臺亮點 5. AI碎片化問題:軟件公司應對的兩種路 徑熟優? 11 12 2 2 本節結論:開源框架規模效應,國產平臺仍有空間本節結論:開源框架規模效應,國產平臺仍有空間 四大頂級深度學習框架陣營可以滿足絕大部分開發者要求 TensorFlow、PyTorch、MXNet、CNTK已可以滿足工業界、學界的絕大部分要求。 開源框架規模效應:維護力量、貢獻人員決定了算法庫擴展及時性、API水平,軟件框架規模效應較強。 目前深度學習框架發展趨勢和遺留的技術問題 發展趨勢:增加對Python的支持、動態圖應用;支持分布式和移動端運行平臺;前端的編程接口更加靈 活,訓練速度不斷提
14、高:對網絡優化,減少訓練耗時,提升底層計算硬件單元的計算能力; 技術遺留問題:靜態圖、動態圖技術方案都還有缺陷,有同時解決的可能性;在網絡結構、設備兼容、性 能與功耗均衡和各種自動化設計等有提升空間 動態圖:其核心特點是計算圖的構建和計算同時發生(Define by run)。優點是調試方便,缺點是難以 對整個計算圖進行優化。PT 靜態圖:將計算圖的構建和實際計算分開(Define and run)。優點是對全局的信息掌握更豐富,可以 做的優化更多,缺點是無法實時觀察中間結果。TF 國產平臺由于技術遺留問題、國產化等適配性等原因可能仍有空間 特定場景框架可能更優;開源平臺可能工業包不共享的問題
15、;國產芯片和適配,中文環境的API 國內百度、華為、商湯、曠視在自研框架初期就考慮到訓練速度要求提高帶來的各種問題,同時適應國產 服務器芯片等環境 2.1 AI2.1 AI平臺:少量企業參與的平臺:少量企業參與的AIAI高地之爭高地之爭 13 平臺層: 訓練軟件框架:實現深度學習訓練算法的模塊化封裝。 模型生產平臺:實現模型的工業級生產。 推理部署框架:實現模型生產完成后的工業級高效、自動的部署。 數據平臺:包括數據采集、數據標注、數據生產、數據存儲等功能 數據接入 數據導入 源數據 數據預處理 預處理數據 數據標注/ 特征工程 待訓練數據 模型訓練 AI能力模 型 模型優化 優化后模型 迭代
16、訓練 算法封裝 AI能力引 擎 AI業務 能力部署 AI能力服 務 模型迭代升級,實現數據閉環 數據準備模型訓練 模型 管理 推理 服務 資料來源:曠視科技官網,申萬宏源研究 圖:AI模型訓練部署全流程示意圖 2.2 2.2 訓練框架:調節參數,生成參數訓練框架:調節參數,生成參數 14 訓練框架是AI的重要基石,也是AI發展戰略的制高點 當算法變成改造甚至顛覆軟件行業的力量時,最后核心就是看這些AI的公司有沒有平臺化的能 力,即“能夠批量、高效、比競爭對手更及時地供應優質算法” 訓練框架的功能 1、基于圖(Graph)的張量計算引擎(基礎的概率統計、線性代數的計算模塊) 2、大量的外圍庫(訓
17、練樣本庫、應用數據庫、模型參數庫、模型代碼庫) 3、大量的領域模型(以文字處理、語音識別、圖像處理、目標識別等為主) 表:深度學子超參數對模型的影響 超參數如何影響模型容量原因注意事項 學習率調至最優,提升有效容量 過高或者過低的學習率,都會由于優化失敗而導致降低 模型有效容限 學習率最優點,在訓練的不同時間點都可能變化,所以需要一套 有效的學習率衰減策略 損失函數調至最優,提升有效容量 損失函數超參數大部分情況都會可能影響優化,不合適 的超參數會使即便是對目標優化非常合適的損失函數同 樣難以優化模型,降低模型有效容限。 對于部分損失函數超參數其變化會對結果十分敏感,而有些則并 不會太影響。在
18、調整時,建議參考論文的推薦值,并在該推薦值 數量級上進行最大最小值調試該參數對結果的影響。 批樣本數量 過大過小,容易降低有效容 量 大部分情況下,選擇適合自身硬件容量的批樣本數量, 并不會對模型容限造成。 在一些特殊的目標函數的設計中,如何選擇樣本是很可能影響到 模型的有效容限的,例如度量學習(metric learning)中的N- pair loss。這類損失因為需要樣本的多樣性,可能會依賴于批樣 本數量。 丟棄法比率降低會提升模型容量 較少的丟棄參數意味著模型參數量的提升,參數間適應 性提升,模型容量提升,但不一定能提升模型有效容限 權重衰減系數 調至最優,提升有效容量 權重衰減可以有
19、效的起到限制參數變化的幅度,起到一 定的正則作用 優化器動量 調至最優,可能提升有效容 量 動量參數通常用來加快訓練,同時更容易跳出極值點, 避免陷入局部最優解。 模型深度 同條件下,深度增加,模型 容量提升 同條件,下增加深度意味著模型具有更多的參數,更強 的擬合能力。 同條件下,深度越深意味著參數越多,需要的時間和硬件資源也 越高。 資料來源:CSDN、申萬宏源研究 15 2.2 2.2 主流訓練框架對比主流訓練框架對比 軟件框架是整個AI技術體系的核心,巨頭以開源軟件框架為核心打造生態: 通過使用者和貢獻者之間的良好互動和規?;?,形成實質標準體系和生態; 除蘋果等少數公司外,開源框架
20、是主流。 主流訓練軟件框架: TensorFlow(谷歌)、pyTorch(臉書),Caffe/2(臉書,圖像處理領域生態積累深厚)、 MXNet(亞馬遜)、CNTK(微軟) PaddlePaddle(百度)、 計圖(清華)、SenseParrots(商湯)、天元(曠視) 表:主流開源訓練框架編程語言和能力評價 編程語言教程和培訓材料CNN模型能力RNN模型能力 架構:易用性和 模塊化前端速度多GPU支持Keras兼容性 TheanoPython,C+ Tensor-FlowPython+ TorchPython,Lua+ CaffeC+ MXNet R,python,Julia,Scal a
21、+ NeonPython+ CNTKC+ 資料來源:CSDN、申萬宏源研究 16 2.2 2.2 海外巨頭背書開源訓練框架對比海外巨頭背書開源訓練框架對比 現有格局,海外開源框架四巨頭 (1)TensorFlow 前端框架Keras,背后巨頭Google; (2)PyTorch 前端框架FastAI,背后巨頭Facebook; (3)MXNet 前端框架Gluon,背后巨頭Amazon; (4)Cognitive Toolkit (CNTK) 前 端 框 架 Keras 或 Gluon , 背 后 巨 頭 Microsoft。 資料來源:德勤中國成長型AI企業研究報告,CSDN,申萬宏源研究
22、圖:GitHub各框架流行度指標比例雷達圖 圖:深度學習框架發展時間表 17 2.3.1 2.3.1 從從TheanoTheano到到tensorflowtensorflow Theano:較早的Python深度學習框架,奠定計算圖為框架核心、GPU加速理念 始于2007,最老牌和最穩定的庫之一,第一個有較大影響力的Python深度學習框架; 優點:作為早期深度學習框架,結合了CAS和優化編譯器,優勢明顯,用于定義、優化和求值數學表 達式,效率高,非常適用于多維數組。會對用符號式語言定義的程序進行編譯,來高效運行于 GPU 或 CPU上。 缺點:工程設計薄弱。Theano不支持分布式計算,在工
23、程設計上有較大的缺陷,有難調試,構建圖慢 的缺點。2017年后不再維護。 Tensorflow:全工具支持的AI開源框架 2015年11月Google推出機器學習開源工具TensorFlow。 TensorFlow和Theano設計理念相近:有很大一批共同的開發者,都是基于計算圖實現自動微分系統。 TensorFlow 使用數據流圖進行數值計算。 基于計算圖實現自動微分系統,使用數據流圖進行數值計算,圖中的節點代表數學運算,圖中的線條 則代表在這些節點之間傳遞的張量(多維數組)。 主流編程工具基本全支持:支持Python、C+、Java、Go、R等。庫可在ARM架構上編譯和優化, 用戶可以在各
24、種服務器和移動設備上部署自己的訓練模型。 背后Google巨大影響力:很多企業都在基于TensorFlow 開發自己的產品或將 TensorFlow整合到自 己的產品中去,如Airbnb、Uber、Twitter、英特爾、高通、小米、京東等。 18 2.3.1 Tensorflow2.3.1 Tensorflow出現的問題出現的問題 Tensorflow:過于復雜和全面的設計導致實際使用生產力低下 過于復雜的系統設計:TensorFlow在GitHub代碼倉庫的總代碼量超過100萬行,維護和學習難度極大; 頻繁變動的接口:TensorFlow的接口一直處于快速迭代之中,并且沒有很好地考慮向后兼
25、容性; 接口設計過于晦澀難懂:創造了圖、會話、命名空間、PlaceHolder等諸多抽象概念; 文檔混亂脫節:TensorFlow作為一個復雜的系統,文檔和教程眾多,但缺乏明顯的條理和層次 Keras:TensorFlow的默認高級API層 在Tensorflow上層封裝的高級API層:純Python編寫而成,以TensorFlow、Theano或CNTK為底層 引擎。2017年成為第一個被Google添加到TensorFlow核心中的高級別框架,這讓Keras變成 TensorFlow的默認API,使Keras + TensorFlow的組合成為Google官方認可并大力支持的平臺。 優點,
26、提升易用性:Keras的目標是只需幾行代碼就能構建一個神經網絡,提升易用性。學習使用 Keras很容易。 缺點:難以學到真正深度學習內容。開發者大多數時間都在學習如何調用接口,難以真正學習到深度 學習的內容,Keras層層封裝讓用戶在新增操作或獲取底層的數據信息時過于困難,存在過度封裝導致 缺乏靈活性的問題,性能也存在瓶頸。 Keras有助于快速入門,但想了解深度學習需要進一步學習使用TensorFlow。 19 2.3.2 2.3.2 從從CaffeCaffe到到PyTorchPyTorch Caffe:早期有較高完備性和易用性的框架 Convolutional Architecture f
27、or Fast Feature Embedding,用于特征提取的卷積架構;最初發起于 2013年9月,核心語言C+。作者賈揚清,曾參與過TensorFlow開發。 優點:在于較為完備和易用性。代碼和框架都比較簡單,代碼易于擴展,運行速度快,也適合深入學習 分析。在Caffe之前,深度學習領域缺少一個完全公開所有的代碼、算法和各種細節的框架。 缺點:Caffe不支持分布式,不夠靈活。套用原有模型很方便,但個性化就要讀源代碼,常常需要用 C+和 CUDA編程,Caffe網絡結構都是以配置文件形式定義,缺乏以計算圖為代表的相對自由靈活、 可視化的算法表達。 隨時間發展,對大型神經網絡使用繁瑣缺點顯
28、現。截止 2015 年,以 152 層的 ResNet 為代表的一些大 型神經網絡已經出現,而恰恰針對這種對于大型神經網絡,Caffe 使用起來會變得十分繁瑣。 Caffe2:針對工業界的輕量化、模塊化深度學習算法框架 賈揚清在2016年2月加入Facebook,推出Caffe2go。2017年4月Facebook開源Caffe2。 優點:定位于工業級、可跨平臺部署,將AI生產工具標準化。Caffe2開發重點是性能和跨平臺部署,更 注重模塊化,支持大規模的分布式計算,支持跨平臺。 20 2.3.2 2.3.2 從從CaffeCaffe到到PyTorchPyTorch Torch:適用于卷積神經
29、網絡的深度學習框架 2002年誕生于紐約大學Torch,后續加入了深度學習的內容,Torch7是Facebook和DeepMind一開始 使用的深度學習工具。 更高的靈活度,適用于卷積神經網絡。Torch是命令式的,因此與TensorFlow和Theano相比,Torch的 靈活度更高,而前兩者是陳述式的(declarative),必須declare一個計算圖。Torch非常適用于卷積神 經網絡,第三方的擴展工具包提供了豐富的遞歸神經網絡RNN模型。 缺點:基于Lua語言,但Python很明顯已經搶先統治了機器學習領域 PyTorch 1.0:前端PyTorch+后端Caffe2 PyTorc
30、h重新設計了model和intermediate中間變量的關系,使用Python,相比lua提升debug功能。 在Facebook的AI雙平臺定位中專注于快速原型設計和研究的靈活性。Caffe2的開發重點是性能和跨平 臺部署,PyTorch 則專注于快速原型設計和研究的靈活性。此前獨立發展,但是組件已經被大量共享; PyTorch 1.0 = Caffe2 + PyTorch。合并后可以將 PyTorch 前端的靈活用戶體驗與 Caffe2 后端的擴 展、部署和嵌入式功能相結合。 2018年12月Facebook 正式發布 PyTorch 1.0穩定版。 FastAI:提升PyTorch易用
31、性的高級API層 目標是只需幾行代碼就能讓你構建一個神經網絡。實測中用5行代碼就可以完成Keras用31行才能解決的 事情。 21 2.3.2* 2.3.2* 為何為何PyTorchPyTorch可能反超可能反超TFTF? 易用性 和 適配度 的互相取舍 截止 2020 年底PyTorch 項目的貢獻者大約 1626 人、下游項目 45k + 個,論壇用戶34k; 學術界PyTorch超過TensorFlow已成定局: PyTorch以易用性、快速上手取勝,可以快速驗證自己的 idea; 工業界Tensorflow暫時無法替代:和推理部署框架有更好的兼容性,如Tensorflow和英偉達支持的
32、 TensorRT(章節2.5中詳細描述)良好兼容,而工業界TensorRT對PyTorch兼容還需要時間; 未來工業界誰占優尚無定論:1)推理部署框架可以在一段時間后得以更好的兼容支持PT,2)即使對于 工業界,TF的上層API仍然過于復雜,tf. Keras,tf.layer,tf.contrib等API接口。 圖:2018-2020 年中國市場各框架市場認知與份額調研 資料來源:德勤中國成長型AI企業研究報告,CSDN,申萬宏源研究 圖:每年各AI頂級研究會議接收的PyTorch論文數和TensorFlow論 文數比例 22 2.3.3 MXNet2.3.3 MXNet和和CNTK CN
33、TK MXNet:輕量級、可移植、靈活的分布式框架 Amazon官方主推,支持CNN、RNN和LTSM。誕生于2015年9月,作者是當時在卡耐基梅隆大學CMU 讀博士的李沐, 2016年11月被亞馬遜選為官方開源平臺; 優點:嘗試結合命令式編程(PyTorch)和聲明式編程(TensorFlow)。命令式編程上提供張量運算, 聲明式編程中支持符號表達式。 同樣模型MXN往往占用更小的內存和顯存; 多語言支持:Python、C+、R、Scala、Julia、Matlab 和 JavaScript。 缺點:文檔更新速度較慢,導致新用戶難以上手。 Gluon:模仿了PyTorch的接口設計,成為主推
34、的MXNet使用的上層API。 CNTK*:數據包來自微軟自己大規模生產 Computational Network Toolkit,2016年1月在GitHub上開源 優點:微軟自產數據包。最初面向語音識別,發展后處理圖像、手寫字體和語音識別都支持。微軟的人 工智能工具包跟其他工具包最大的不同在于數據,數據都來自于微軟自己的大規模生產數據。包括 Cortana、Bing以及Cognitive Services中的Emotion API。 基于C+架構,Python或C+編程接口,支持跨平臺的CPU/GPU 部署。 缺點:CNTK現在還不支持ARM 架構,使其在移動設備上的功能受到了限制。 2
35、3 2.4.1 2.4.1 國內開源架構:百度國內開源架構:百度PaddlePaddle、清華、清華JittorJittor PaddlePaddle:國內第一個開源神經網絡框架 2016年8月,百度在Github上100%開源內部使用多年的深度學習平臺PaddlePaddle; 中文環境下較多的優勢:1)能夠應用于自然語言處理、圖像識別、推薦引擎等多個領域,其優勢在于開 放的多個領先的預訓練中文模型,適應中文環境。2)模型庫豐富,來自百度各個業務部門貢獻;3)較 多企業級的包,可以直接在產業界落地使用;4)兼容大量國產AI芯片; 整體來看反饋使用感受類似PT,我們對國產開源深度學習框架有極大
36、期待! 劣勢:使用習慣、社區人群數、普及度和海外框架相比有差距,部分模型實現過程有優化空間 Jittor計圖:目的為兼顧易使用、可定制、高性能 2020年3月,清華大學計算機系圖形實驗室自研深度學習框架Jittor計圖對外開源; 通過元算子和統計計算圖提升易用性:易用且可定制用戶只需要數行代碼,就可定義新的算子和模型,在 易用的同時,不喪失任何可定制性。支持統一內存、異步接口。 圖:Jittor與PyTorch推理與訓練速度對比圖:Jittor和其它深度學習框架比較 資料來源:量子位,申萬宏源研究 24 2.4.2 2.4.2 國內開源架構:華為國內開源架構:華為MindsporeMindsp
37、ore,曠視天元,曠視天元 Mindspore:云邊端同步適配 2018年10月10日,華為首次展示CANN算子庫、MindSpore深度學習框架、AI開發平臺ModelArts; 2020年3月華為在碼云開源MindSpore,企業級AI應用開發者套件ModelArts Pro在華為云上線; 設計思路:著重提升易用性并降低AI開發者的開發門檻,端、邊緣和云都適應,并能夠在按需協同的基礎 上,通過實現AI算法即代碼。適配華為昇騰AI處理器,也支持GPU、CPU等其它; 社區反饋問題:算子和PyTorch接近但不完全一致,對于靜態圖理解需要引導,無中文版文檔,文檔相比 tf和pt不夠詳細。 深度
38、學習天元MegEngine:特色是訓練推理一體,靜態圖動態圖都有優化 2015年開始搭建,針對當年Caffe架構不足,曠視Brain+在一開始就確立了要以計算圖的方式來進行框 架搭建的思路,大思路正確;2020年3月開源MegEngine;2020年9月推出Brain+商業版。 優勢:1)訓練推理一體化,訓練結果可直接進行用于產品推理、封裝。部署時自動刪除冗余代碼;2) 靜態圖性能高、占用資源少且易于部署、動態圖簡單靈活、方便調試且易于上手;3)具備Pythonic的 API,支持PyTorch Module,直接導入方便;在特定領域如機器視覺模型ResNet 18、ResNet50、 Mob
39、ileNet v2和 ShuffleNet V2上優于其它主流框架。 社區反饋問題:部分支持還不夠完善,模型、數據集不夠豐富 25 2.5 2.5 推理框架:與硬件和設備端緊密相關推理框架:與硬件和設備端緊密相關 推理框架:主要部署在設備端和云端,因此與硬件廠商緊密相關 設備端 機器視覺VR移動設備語音交互設備 機器人輔助駕駛 云端 訓練 ASIC FPGA+云計算 GPU 表:海外主流推理框架特性比較 模型推理部署框架應用平臺 支持深度學習模型 TensorFlowCaffeMxnetPytorch OpenVINO CPU,GPU嵌入式平臺都可以使用,CPU上首選OpenVINO。 Dep
40、hAI嵌入式空間AI平臺 TensorRT 只能用在NIVDIA的GPU上的推理框架。NIVDIA自家的Jeston平 臺 Mediapipe服務端,移動端,嵌入式平臺。TPU 資料來源:CSDN、申萬宏源研究 資料來源:雷鋒網,申萬宏源研究 圖:推理框架在云端和設備端部署 26 2.6 2.6 開源框架的選擇:規模效應與生態開源框架的選擇:規模效應與生態 四大頂級深度學習框架陣營可以滿足絕大部分開發者要求 社區規模效應:維護力量、貢獻人員決定了算法庫擴展及時性、API水平,軟件框架規模效應較強。 科研和工程落地,前者需要有足夠的靈活度和易用性,而后者需要的是部署和性能,PT和TF分別對應兩
41、種特性,可以滿足絕大部分使用者要求。 目前深度學習框架發展趨勢 1、增加對Python的支持,動態圖應用; 2、支持分布式和移動端運行平臺; 3、前端的編程接口更加靈活,設計需要兼容簡單高效的命令式和邏輯清晰的聲明式; 4、訓練速度不斷提高:支持單機多卡/多機多卡等訓練方式;對網絡優化減枝以減小訓練耗時的同時;提 升底層計算硬件單元的計算能力 表:主流開源訓練AI框架核心指標對比 是否支持分布式 計算,是不是分 布式框架? 是否支持移動端 部署? 命令式編程(imperative programming)還是聲明式 語言(declarative programing)? 基于動態計算圖 還是靜
42、態計算圖 是否有強大的 社區和生態支 持 社區評價 TensorFlow聲明式靜態計算圖Google廣泛適配,適合工業界 PyTorch命令式動態計算圖Facebook輕量易上手,適合學術界 MXNet命令式動態計算圖Amazon優化云端分布式部署 CNTK靜態計算圖Microsoft簡單配置易上手 Theano聲明式靜態計算圖 Caffe聲明式靜態計算圖 Caffe2靜態計算圖 資料來源:GitHub,CNDN,申萬宏源研究 27 2.6 2.6 開源框架的選擇:國產自研深度學習框架原因開源框架的選擇:國產自研深度學習框架原因 1、技術遺留問題 靜態圖、動態圖技術方案都還有缺陷,有同時解決的
43、可能性 動態圖:其核心特點是計算圖的構建和計算同時發生(Define by run)。優點是調試方便,缺點是難以 對整個計算圖進行優化。PT 靜態圖:將計算圖的構建和實際計算分開(Define and run)。優點是對全局的信息掌握更豐富,可以 做的優化更多,缺點是無法實時觀察中間結果。TF 在網絡結構、設備兼容、性能與功耗均衡和各種自動化設計等有提升空間 2、國內特色問題 特定場景框架可能更優 國產芯片和適配 開源平臺可能工業包不共享的問題 中文環境的API 國內百度、華為、商湯、曠視在自研框架初期就考慮到訓練速度要求提高帶來的各種問題,同時適應國產 服務器芯片等環境 目錄目錄 1. AI
44、產業鏈:從算力到應用 2. AI平臺層:何種訓練模型可以脫穎而出? 3. AI大模型:為何更大的模型成為行業新 趨勢 4. AI明星:商湯、曠視自研平臺亮點 5. AI碎片化問題:軟件公司應對的兩種路 徑熟優? 28 29 3 3 本節結論:深度學習熱點“大模型”優缺點同時存在本節結論:深度學習熱點“大模型”優缺點同時存在 以GPT為代表的“大模型”是什么 大規模預訓練:GPT(Generative Pre-Training)是OpenAI在2018年提出的模型,基于Transformer模型。 采用Pre-training + Fine-tuning訓練模式,使大量無標記數據得以利用。 優勢
45、顯著:大幅提升對數據要求,長尾場景落地新思路 自監督學習功能,大幅降低對數據量的需求:GPT舍棄Fine-tuning ,先使用海量數據預訓練大模型,得 到一套模型參數,然后用這套參數對模型進行初始化,再進行訓練。大幅降低后續對數據量的需求。 預訓練大模型+細分場景微調,更適合長尾落地:大規模預訓練可以有效地從大量標記和未標記的數據中 捕獲知識,通過將知識存儲到大量的參數中并對特定任務進行微調,極大擴展模型的泛化能力。 有望進一步突破現有模型結構的精度局限:可能繼續突破精度上限。 但對自然語言邏輯理解仍有缺陷 “盡管GPT-3觀察到它讀到的單詞和短語之間的統計關系,但不理解其含義?!?對存儲、
46、算力要求極高,普通機構難以復現 據 NVIDIA 估算如果要訓練 GPT-3 ,用 8 張 V100 的顯卡,訓練時長預計要 36 年;以微軟與OpenAI 合作建造 的Azure A工智能算力平臺為例,該算力平臺投資約10億美元,使用該超算中心訓練一次超大 模型GPT-3大約花費1200萬美元。 解決分布式訓練問題:上百臺服務器之間的通信、拓撲、模型并行、流水并行等問題,模型訓練是顯存峰 值問題。GPT-3發布一年后,只有 NVIDIA 、微軟等大企業可以復現 。 30 3.1 3.1 行業更新熱點在“大模型”行業更新熱點在“大模型” 此前AI算法基于深度學習創新,從業者使用DNN、CNN、
47、RNN等模型以及變種,加上attention、 GRU等機制,產生巨大的收益。但是近年很多算法與策略都已經使用過,前沿創新、業務演進減緩。 最后一次底層算法創新被認為是2017年Google的Transformer(3.1*)。 大規模預訓練模型(大模型)成為AI算法領域的熱點 Double Descent現象。傳統機器學習里,模型過小則欠擬合,模型過大則過擬合。深度學習里 Double Descent現象在2018年揭示,隨著模型參數變多,Test Error是先下降,再上升,然后第二次 下降;原則上,在成本可接受的情況下,模型越大,準確率越好。 大規模預訓練:GPT(Generative
48、Pre-Training),是OpenAI在2018年提出的模型,利用Transformer 模型來解決各種自然語言問題,例如分類、推理、問答、相似度等應用的模型。GPT采用了Pre- training + Fine-tuning的訓練模式,使得大量無標記的數據得以利用,大大提高了這些問題的效果。 資料來源:Deep Double Descent: Where Bigger Models and More Data Hurt,Github,申萬宏源研究 圖:深度學習中的Double Descent現象圖:對于不同問題進行不同的預訓練 31 3.1* 3.1* TransfomerTransfo
49、mer對對RNNRNN的改進的改進 Transformer取代RNN RNN存在問題:1)效率問題:需要逐個詞進行處理,后一 個詞要等到前一個詞的隱狀態輸出以后才能開始處理,2)如 果傳遞距離過長還會有梯度消失、梯度爆炸和遺忘問題 Transformer。Google Brain 2017的提出,針對RNN的弱 點進行重新設計,解決了RNN效率問題和傳遞中的缺陷等, 在很多問題上都超過了RNN的表現。 N進N出的結構,Transformer解決了效率問題和距離問題。 Self-Attention和Feed Forward Networks 在機器翻譯任務上,Transformer表現超過了RNN和CNN, 只需要編/解碼器就能達到很好的效果。在CV領域也有應用。 資料來源:Attention Is All You Need,申萬宏源研究 圖:Transfromer的基本結構 圖:Transformer的詳細結構 32 3.1 3.1 行業更新熱點在“大模型”行業更新熱點在“大模型” 大模型2018至今快速迭代 1)2018年,OpenAI基于Transformer提出了GPT; 2)2019年,Google推出了GPT的升級版BERT;3) 2019年,OpenAI推出了GPT的升級版GPT2.0;4) 2020年,GPT-3;5)2021,Switch Transf