- Advertisement -
首頁 標籤 ML

ML

- Advertisment -

愛德萬結盟PDF Solutions 打造Advantest Cloud

愛德萬測試(Advantest Corporation)與PDF Solutions宣布建立夥伴關係,合作內容如下:雙方簽訂開發協議,以PDF Exensio軟體分析平台為基礎,建立由Exensio驅動的愛德萬測試雲(Advantest Cloud),供愛德萬公司內部和外部客戶使用;雙方簽訂商業協議,為愛德萬測試平台和PDF Exensio平台提供技術授權;愛德萬向PDF Exensio分析平台簽訂五年期雲端訂閱合約;愛德萬以6,520萬美元左右金額,收購PDF增發普通股3,306,924股。 PDF的雲端大數據分析平台Exensio,橫跨整個半導體價值鏈光譜,從IC設計到晶圓製造、分類、封裝、最終測試和系統級測試皆涵蓋其中,管控上萬組工具以加速產品上市、擴大產能,並提升利潤、產品可靠度與品質。隨著半導體產業朝向更先進的元件持續精進,PDF軟體平台提供的大數據分析服務,包括善用AI與機器學習(Machine Learning, ML),已成為先進製程節點達成產能目標的關鍵,藉此確保元件品質並節省測試與量測成本。 重點是,當半導體業者採用分散式供應鏈來製造、測試與封裝晶片,PDF Exensio平台與資料交換網路(Data Exchange Network, DEX)能為半導體工程師連接起橫跨半導體價值鏈的自動化測試設備(Automated Test Equipment, ATE),推動重要設計並產生製造分析,藉此降低測試成本、提升效能/產能。 愛德萬透過自家先進測試設備將PDF Exensio平台與DEX結合起來,如此一來,無論客戶處於半導體價值鏈的哪一段,都能為他們提供連線、測試、量測與分析能力,幫助他們提升產能、降低測試成本。此次合作也進一步凸顯愛德萬期盼將測試與量測解決方案推往整體半導體價值鏈的決心,並在愛德萬「宏觀設計」願景中寫下重要的里程碑。
0

機器學習邁向物聯網終端 神經網路加值MCU邊緣智慧

基於各方考量,如延遲、耗電量、成本、網路頻寬、可靠性、隱私與安全等,機器學習(ML)演算法正朝物聯網(IoT)終端的應用發展。因此,廠商對於開發類神經網路(NN)解決方案,並將它們部署在微控制器系統這類低功率終端裝置的興趣與日俱增。為促成這類部署,Arm提出CMSIS-NN。這是一種經優化的軟體核心開放原始碼函式庫,可極大化其產品Cortex-M核心的NN效能,而且只需使用最小的經常性記憶體。本文進一步提出NN架構探索的方法,以CIFAR-10數據集的影像檔分類為例,開發適用在條件受限的裝置模型。 MCU降低運算延遲 演算法提升NN準確性 聯網裝置或物聯網過去幾年內快速擴展,到2035年,各區市場的聯網裝置總數預測將達到1兆個。這些物聯網終端裝置通常包含數個可以搜集數據的感測器,包括音訊、視訊、溫度、溼度、GPS位置與加速度等。通常大多數感測器搜集到的數據由雲端的分析工具進行處理,以便運作各式的應用,如工業監控、家庭自動化與健康照護。不過隨著物聯網節點數目增加,對網路的頻寬帶來相當的負擔,同時也增加物聯網應用的延遲性。此外,對雲端的依賴也造成在網路連線不穩定或有限的區域,部署物聯網應用相當具有挑戰性。這個問題的解決方案之一是終端運算,這種運算在數據的源頭、也就是物聯網的終端節點進行,因此可以降低延遲,並節省數據通訊消耗的能源。 類神經網路架構的解決方案,針對如影像分類、語音辨識與自然語言處理等複雜的機器學習應用,已經展現出與人類一樣水準的準確性。有鑑於運算的複雜性與資源的需求,NN的執行絕大多數都局限於高效能的伺服器CPU,或專用硬體(如GPU或加速器)的雲端運算,但會讓物聯網應用增加延遲。而如果在數據的源頭(通常是微控制器)立即進行分類,可以降低整體的延遲以及物聯網終端與雲端間數據通訊的能源消耗。不過在微控制器部署NN,有下列挑戰: ・有限的記憶體使用量:微控制器系統通常只有10幾到100多KB的可用記憶體。整個類神經網路模型,包括輸入/輸出、權重與啟動,都必須在如此小的記憶體上限內運行。 ・有限的運算資源:許多分類任務都有不斷線啟動與即時的要求,這會限制每個類神經網路推論的總運算次數。 這些挑戰可以從裝置與演算法的角度加以應對。一方面在執行類神經網路工作負載時,可以靠優化低階運算核心來達成更佳的效能與更小的記憶體使用量,並藉此提升這些微控制器的機器學習能力,協助微控制器處理更大型與更複雜的NN。另一方面,類神經網路可以靠NN架構的探索設計與優化目標硬體平台。此方法可以在固定的記憶體與運算配置上限內,提升NN的品質,也就是準確性。 下一個段落中,筆者提出CMSIS-NN的概念。CMSIS-NN是大量的高效類神經網路核心,開發目的是讓鎖定智慧物聯網終端裝置的Arm Cortex-M處理器核心上的類神經網路,極大化效能並極小化記憶體的使用量。架構在CMSIS-NN核心基礎上的類神經網路推論,可以達成4.6倍的Runtime/數據傳輸量提升,以及4.9倍的能源效率提升。文章的第三個段落則以使用CIFAR-10數據集的影像分類應用為例,針對微控制器記憶體/運算限制,提出搜尋類神經網路架構的技巧。 CMSIS-NN提升核心Runtime/傳輸量 CMSIS-NN類神經網路核心的總覽(圖1),核心編碼包含兩個部分:NNFunctions與NNSupportFunction。NNFunctions包含實作常見的類神經網路層類型的函數,如卷積、深度可分離卷積結構、全連接(也就是內積)、池化與啟動。這些函數可以讓應用程式碼使用,以實作類神經網路的推論應用。核心API則刻意保持簡單,以便針對TensorFlow、Caffe或PyTorch等所有機器學習框架輕鬆重新鎖定。NNSupportFunctions包含公用的程式函數,例如NNFunctions使用的數據轉換與激勵函數表。應用程式碼也可使用這些函數來建構更複雜的NN模組,如長短期記憶(LSTM)或閘控再流裝置(GRU)單元。 圖1 CMSIS-NN類神經網路核心總覽 對於某些核心,如全連接與卷積的核心,本文會實作不同版本的核心函數。提供一個針對所有網路層參數不必改變就可以通用的基本版本。同時也實作包括進一步優化技巧的其它版本,它們可能具有變形輸入,或是對網路層參數有某些限制。 固定點量化 研究顯示,即便是低精密度定點表示法,NN的運作依然良好。固定點量化可以協助避免進行昂貴的浮點運算,並降低儲存權重與啟動的記憶體使用量,這對資源受限的平台極為關鍵。儘管不同網路或網路層的精密度需求可能不同,CPU很難運行帶有不同位元寬度的資料類型,因此筆者的團隊開發了同時支援8位元與16位元數據的核心。 核心採用跟CMSIS-DSP裡使用的資料類型格式相同,也就是把q7_t當作int8、把q15_t當作int16,並把q31_t當作int32。執行量化時,假定固定點格式具有兩次方的定標。量化格式以Qm.n代表,而代表值是A×2-n,其中的A是整數值而n是Qm.n的一部分,代表該數字針對分數部分使用的位元數,也就是顯示數基點的所在地。跳過偏差用的定標因素,並把它以參數輸出至核心;因為是二次方定標的關係,定標的實作按位元移位操作。 在NN的運算期間,代表不同數據,也就是輸入、權重、偏差與輸出的固定點可能不同。bias_shift與out_shift這兩個輸入參數,則為用來替運算調整不同數據的定標。 下列方程式可以用來估算移動值: 其中的ninput、nweight、nbias 與 noutput,分別是輸入、權重、偏差與輸出中的分數的位元數。 軟體核心優化 這個段落突顯了在CMSIS-NN裡已進行的優化工作,以提升效能並降低記憶體的使用量。 1.矩陣乘法:矩陣乘法是類神經網路中最重要的運算核心。這個工作的實作,是使用CMSIS-DSP內的mat_mult核心。如圖2所示,矩陣乘法核心是以2×2核心實作,與CMSIS的實作類似。因此可以允許部分數據再次使用,也可以節省載入指令的總筆數。累積是使用q31_t資料類型完成,而兩個運算單元都屬於q15_t資料類型。筆者使用相對應的偏差值,讓累加器初始化。運算的執行則是使用專用的SIMD MAC指令_SMLAD。 圖2 具有2×2核心的矩陣乘法的內迴圈。每個迴圈運算兩行與兩列點乘積結果,也就是產生四個輸出 2.卷積:卷積網路層藉由在輸入特徵映射中運算過濾器權重與小型接受區域之間的點乘積,擷取新的特徵映射。通常來說,CPU架構的卷積實作可以解構成輸入紀錄、擴展(也就是im2col與Image-to-column)以及矩陣乘法操作。im2col是把類影像的輸入轉化成「行」,而「行」則代表每個卷積過濾器需要的數據。圖3即為im2col的一個範例。 圖3 具3×3核心、填充1與步數2的im2col的2D影像範例 im2col主要的挑戰之一是記憶體使用量的增加,因為輸入影像中的畫素在im2col輸出矩陣中重複。為了紓解記憶體使用量問題、同時維持im2col的效能優點,卷積核心實作了部分的im2col。核心一次只會擴展兩行,這已經足夠從矩陣乘法核心取得大幅的效能提升,同時把記憶體負擔維持在最小。影像數據格式也會影響卷積的效能,特別是im2col的效率。兩種最常見的影像數據格式是頻道為第一的CHW(頻道-高度-寬度),與頻道為最後的HWC(高度-寬度-頻道)。維度的順序則與數據步數的順序一樣。在HWC格式中,頻道的數據以步數1儲存,沿著橫向寬度的數據則是以頻道數的步數儲存;沿著縱向高度的數據,則以(頻道數×影像寬度)步數儲存。 只要權重與影像的維度順序一樣,數據的布局對於矩陣乘法的運作就沒有影響,im2col只會與寬度及高度的維度一起運作。HWC式樣的布局可以促成高效率的數據移動,因為每個畫素的數據(也就是同樣的x與y位置)是連續地儲存,並且可以用SIMD指令有效率地進行複製。為了驗證這一點,筆者實作CHW與HWC版本,並比較它們在Arm Cortex-M7的Runtime。圖4顯示了實作結果,把HWC輸入固定為16×16×16,並很快輸出頻道數目。當輸出頻道值為零時,代表軟體只執行im2col,並沒有進行任何矩陣乘法的運作。與CHW布局相比,HWC擁有較短的im2col Runtime,但矩陣乘法效能卻相同。因此,本文用HWC數據布局來實作卷積核心。 圖4 CHW與HWC數據布局卷積執行時間的比較。兩種布局都有同樣的矩陣乘法runtime,但HWC的im2col runtime比較短 CMSIS-NN結果 測試卷積神經網路(CNN)的CMSIS-NN核心,CNN則利用CIFAR-10數據集進行訓練。數據集包含6萬個32×32的彩色影像,並分為十個輸出類別。網路拓撲是基於Caffe內提供的內建範例,具有三個卷積網路層與一個完全連結的網路層。所有網路層的權重與激勵數據都量化成q7_t格式。Runtime則是用具有一顆時脈216MHz的Arm Cortex-M7核心的意法半導體(ST)NUCLEO-F746ZG Mbed開發板進行測量。 整個影像分類中的每個影像,大約花費99.1微秒(相當於每秒10.1張影像)。CPU在這個網路運行的運算吞吐量,大約是每秒249百萬運算(MOps)。預先量化的網路針對CIFAR-10測試集達成80.3%的準確率。用Arm Cortex-M7核心運行的8位元量化網路,則達成79.9%的準確率。使用CMSIS-NN核心的最大記憶體使用量約為133KB,此時用部分的im2col來實作卷積以節省記憶體。接下來則進行矩陣乘法。少了部分im2col的記憶體使用量,大約為332 KB,此時神經網路無法在開發板上使用。為了量化CMSIS-NN核心對既有解決方案帶來的優點,選擇使用一個1D卷積函數(來自CMSIS-DSP的arm_conv)、類Caffe池化與ReLU,實作一個基準線版本。 針對CNN應用,表1總結基準線函數與CMSIS-NN核心的比較結果。與基準線函數相比,CMSIS-NN核心的Runtime與吞吐量分別提升2.6倍與5.4倍,節能方面的提升也與吞吐量的提升相近。 硬體條件限制NN模型 這個段落裡,比較使用影像分類應用為範例,說明為部署應用的硬體平台,也就是微控制器選擇正確類神經網路架構的重要性。為此,需要先瞭解微控制器的硬體限制。微控制器通常包含處理器核心、一個當成主記憶體的靜態隨機存取記憶體(SRAM),以及用來儲存編碼與數據的嵌入式快閃記憶體。表2顯示具有Arm Cortex-M核心的一些市售微處理器開發板,它們擁有不同的運算與記憶體容量。 微處理器系統中的記憶體數量,會限制系統可運行的類神經網路模型的大小。除了記憶體限制,類神經網路的龐大運算需求也會為在微控制器上運行NN,帶來另一個關鍵限制:為了維持低耗電,通常都以低時脈運行。因此,必須選擇對的NN架構,來配合部署NN模型的硬體在記憶體與運算上的限制。為了評估在不同硬體限制條件下神經網路的準確性,筆者選擇三個不同尺寸的系統配置,並導出每個配置需要的類神經網路需求(表3)。假定每秒標稱可進行10個影像的分類推論(也就是每秒10幀),以便導出神經網路的需求。 影像分類用神經網路架構 1.卷積神經網路:CNN是電腦視覺應用最受歡迎的類神經網路架構。CNN包含多個依規格化散布的卷積網路層、池化與非線性激勵網路層。卷積網路層將輸入的影像解構到不同的特徵映射,從初始網路層中如邊緣、線條與曲線等低階特徵,到後面網路層的高階/抽象特徵。當代最頂尖的CNN包含100多個到1,000多個這種卷積網路層,而最後擷取的特徵則由完全連結的分類網路層分類至輸出類別。卷積運作是CNN最關鍵的運作,並且非常耗時,有超過九成的時間都花在卷積網路層上。 2.近期的高效NN架構:為了降低CNN的運算複雜性,有人提議用深度可分離卷積網路層當成標準卷積運作的高效率替代品。也有人提出利用2-D深度卷積接著1-D逐點卷積,取代標準的3-D卷積,並提出名為MobileNets的高效率NN類別。ShuffleNets利用混合 頻道上的深度卷積以及群組軟體1×1的卷積,來提升緊湊模型的準確性。MobileNets-V2藉由增加捷徑連接進一步提升效率,並協助深度網路的收斂。整體來說,已經有許多高效率的神經網路架構提案,可以用來開發符合特定硬體預算的NN模型。 硬體條件受限的NN模型的搜尋 筆者使用具捷徑連接的MobileNet架構,它類似讓硬體條件受限的類神經模型,進行搜尋的ResNet模型裡的架構。網路層的數量、每層網路層的特徵數量、卷積過濾器的維度與步數,被當成這次搜尋的超參數。訓練這些超參數的所有組合相當耗時,並且不太實際。因此需要反覆執行超參數的竭盡式搜尋、計算模型的記憶體/運算需求,並且只訓練能配合硬體預算限制的模型。隨後從之前的集用場選擇超參數,以縮小搜尋空間,並繼續下一更新的模型搜尋。圖5為超參數搜尋的範例,這個範例顯示準確性、運算的數量,以及每個模型的參數。 圖5 利用CIFAR-10數據集進行影像分類的類神經網路超參數搜尋vs以泡泡尺寸顯示的運算及參數數量 經過幾個更新後,表4顯示於硬體條件限制內具有最高準確性的模型。請留意,由於這並不是對所有超參數進行的極盡式搜尋,因此在搜尋期間可能會漏掉一些符合硬體條件限制、且準確度極高的類神經網路模型。結果顯示這些模型擴大規模沒有問題,且針對不同的硬體預算,準確性在不同層級出現飽合。例如,針對200KB與每秒20百萬次運算的記憶體/運算預算,模型的準確性大約在85%左右飽合,並且受到硬體的運算能力限制。瞭解類神經網路的準確性是否受運算或記憶體資源限制,對於硬體平台選擇的各種利弊得失,可提供關鍵的洞察。 強化神經網路效能 機器學習演算法已證實可以實現一些人類能力等級的效能,所執行的複雜認知任務。在全新高效類神經網路架構與優化的NN軟體協助下,這些演算法正慢慢地朝物聯網的終端移動,以便類神經網路在這些終端裝置高效運作。在微控制器裝置常見的記憶體/運算限制下,提出執行NN模型搜尋的技巧,並使用影像分類為例,進一步提出優化CMSIS-NN內的NN核心的方法,以便在最小的記憶體使用量下,極大化Cortex-M核心的神經網路效能。 (本文作者Naveen Suda為Arm主任工程師;Danny Loh為Arm機器學習總監)
0

開放不等於免費 CPU客製化必須穩紮穩打

為滿足人工智慧(AI)、物聯網(IoT)、邊緣運算等應用對運算效能的需求,許多晶片供應商都開始探索使用客製化CPU的可能性,盼藉由專為執行某些特定運算任務所設計的指令集跟執行邏輯,來提高運算效能。但魚與熊掌往往難以兼得,這些專為某類運算任務設計的特殊CPU,必然會犧牲其泛用性,與現有應用軟體的相容性問題,也必須審慎應對。 大廠導入RISC-V 小心翼翼試水溫 因此,即便RISC-V這類開放架構CPU廣受業界矚目,採用RISC-V核心的SoC或處理器設計案例數量也快速成長,但若更深入研究RISC-V在這些SoC或處理器中所扮演的角色,就會發現目前RISC-V的應用領域,還是高度集中在不太需要顧慮第三方軟體相容性的範疇。 舉例來說,繪圖晶片(GPU)大廠NVIDIA的GPU晶片內,除了負責執行圖形運算的各種著色器(Shader)之外,還有許多晶片內部的控制跟協調作業需求,必須靠嵌入式CPU來執行。為此,NVIDIA早在十多年前就開始自行發展RISC指令集,並以此設計出自家專用的嵌入式CPU,負責GPU內部的管理跟控制任務。 但經過十多年後,NVIDIA內部的研發團隊認為,已經很難再靠改良現有指令集架構的方法來滿足新的需求,因此,該公司決定發展全新架構,以提供更高的性能。具體來說,新一代嵌入式CPU至少要提供比現有CPU高一倍的效能、支援64位元記憶體定址、快取與高速記憶體等。 經過評估之後,NVIDIA發現,目前市場上的主流CPU核心,還是沒辦法滿足其需求,所以又走回了自行開發的老路。不過,與十多年前NVIDIA必須自己從指令集架構開始發展的情況不同,這次NVIDIA可以用RISC-V指令集架構作為設計起點,來開發新一代CPU,取代已經使用十多年的老CPU。 2016年時,NVIDIA先採用柏克萊大學發展出來的RISC-V處理器Rocket,開發出第一代基於RISC-V的Falcon控制器,在9項客製CPU設計要求中,已能符合7項功能規格。到了2017年,NVIDIA改用自己設計的RISC-V處理器版本,發展出第二代Falcon控制器。 第二代Falcon控制器使用了64位元RISC-V指令集來設計,並根據自身需求,決定需要使用哪些指令,也加入自己的專用指令集,來對CPU設計進行最佳化。第二代Falcon不只滿足所有技術需求,而且效能更好,也幫助他們降低成本,就是因為採用開源設計。 三星電子(Samsung)採用RISC-V的情況也類似。三星早在2017年就已經開發出第一款內建RISC-V核心的晶片,經過三年多的設計迭代,該公司在2019年的RISC-V高峰會上,正式發表了第一款內建SiFive RISC-V核心的5G毫米波前端模組,接下來三星還有意在AI影像感測器、安全管理晶片與AI運算控制器等晶片中導入RISC-V。在5G毫米波前端這款解決方案中,RISC-V核心負責的任務是訊號處理,而非標準CPU所擅長的控制任務。這顯示RISC-V在某種程度上,可以靠著DSP延伸指令集這項擴充能力,取代某些原本要靠數位訊號處理器(DSP)實現的應用。雖然三星並未揭露未來RISC-V在影像感測器中所扮演的角色,但考量到影像感測器就跟5G射頻前端一樣,會有大量的訊號處理任務需求,可以合理推論,RISC-V應該會扮演某種接近DSP的角色。 除了在處理器、SoC內部扮演微控制器或訊號處理器的角色外,儲存相關應用採用RISC-V的速度也相當快。除了威騰(Western Digital, WD)對RISC-V全力相挺,發展出三款基於RISC-V指令集的核心(表1),主要應用在NAND Flash控制器上之外,晶心科技技術長蘇泓萌透露,台灣某SSD控制器大廠的控制器晶片,也已經內建晶心提供的RISC-V核心。 從NVIDIA、三星,以及威騰等NAND Flash控制器的實際應用案例,不難看出這兩家大廠導入RISC-V的過程,是經過深思熟慮的。不管是GPU內部的控制任務,或是5G毫米波前端,其運作所涉及的軟體都是韌體,晶片開發者對此有完全的掌控能力。也因為晶片開發商可以一手掌控,不太需要考慮第三方軟體、應用在客製化CPU上執行的相容問題,所以晶片開發商可以大膽採用自己客製化發展的CPU硬體架構,以功率、效能與晶片面積(Power, Performance, Area)的極致最佳化為設計目標。 在通用處理器或主處理器方面,目前真的採用RISC-V的知名案例並不多見,僅阿里巴巴旗下平頭哥半導體所發表的玄鐵910,是基於RISC-V指令集架構所開發出來的通用處理器。對RISC-V陣營來說,玄鐵910的問世,固然有其里程碑的意義,但從玄鐵910的規格跟性能測試結果來看,跟Arm及x86陣營相比,還是有一段明顯的差距,在軟體、開發工具支援方面,要跟Arm、x86相比,也還有一段不小的距離。 指令集客製不難 難在維繫生態系完整 面對AI、IoT應用開枝散葉,相關應用開發快速且項目多元,標榜使用者可以自行客製化設計的RISC-V乘著這波風潮,在市場上來勢洶洶,作為嵌入式處理器IP龍頭的Arm,又如何看待? Arm應用工程總監徐達勇(圖1)表示,AI、IoT應用無所不在,確實導致市場上出現許多標準CPU指令集不容易照顧到的新應用、新需求。這些新應用很符合商學教科書上所提到的「長尾理論」--個別應用的市場規模或許不大,但累積起來也是一個相當可觀的市場。對Arm來說,如何滿足這類應用的需求,自然是一個必須思考的問題,而Arm所提出的回應,就是在標準指令集之外,開放晶片開發者在共通的框架、格式規定下,進行客製化的指令集定義。 圖1 Arm應用工程總監徐達勇 事實上,客製化指令集在技術層面並不困難,但Arm直到2019年10月才推出Arm Custom Instruction(ACI),是因為有許多技術以外的考量。例如CPU硬體加上客製化指令之後,編譯器(Compiler)、除錯工具(Debugger)等開發工具,以及處理器上執行的軟體等生態系統的配套,能不能支援開發者自己定義的客製化指令,就是一個大問題。客製化指令立意雖好,但實際上使用者/客戶並不多,而且大多是有雄厚研發資源的大廠,因為客戶必須要有定義指令的能力,並自行克服軟體破碎的問題。 經過審慎思考後,Arm決定在其現有架構中,開放部分客製化指令集,滿足客戶彈性修改CPU指令集設計的需求,但客製化必須符合Arm預先定義好的規範,以避免編譯器、除錯工具無法理解這些開發者自訂義的指令。Arm認為,這是兼顧設計者需求與生態系完整的兩全對策。 SSD控制器便是一個對客製化指令需求很高的應用,因為SSD控制器所做的工作重複性很高,但這些工作卻往往得用到許多條標準指令才能完成,導致CPU經常耗費大量資源在抓取指令(Fetch)上。若能將常用的多條指令整合成一條客製化指令,如圖2,便能加快記憶體存取、編譯與寫入的速度,不只能減少指令執行時所占用的記憶體,也能進一步縮小晶片的尺寸、降低功耗。這是客製化指令對某些客戶非常有吸引力的主要原因之一。 圖2 客製化指令集的基本概念與優劣勢 但客製化之後的指令,必須確保編譯器或除錯工具的夠解譯,否則後面的應用產品開發將無法繼續進行下去。為了避免這種情況發生,相關工具配套必須先到位,或是晶片設計者必須自行備妥這些工具。 天底下沒有白吃的午餐,雖然開源常被跟免費畫上等號,但開源絕不等於免費。光是一套完善、成熟的開發工具,就需要投入大量人力進行研發跟維護,這很難是完全免費的。此外,即便是使用RISC-V這類開源架構設計晶片,仍會有工程開發成本,並且承擔市場風險。如果進行成本精算,開發者的總成本不一定會比取得現成的IP授權來得低。 大廠競相投入RISC-V 背後有其戰略用意 SiFive總裁暨執行長Naveed Sherwani對最近幾年RISC-V廣獲業界矚目,聲勢一路看漲的現象,也有一番值得思考見解。他認為,就技術層面來說,RISC-V的自由與彈性,確實是讓不少大廠對RISC-V產生興趣的原因。但RISC-V能有今天一片欣欣向榮的景象,連帶讓SiFive在短短幾年內就累積超過350個設計定案(Tape Out)的實績,且委託客戶不乏一線科技大廠,關鍵還是在每家廠商想要有與眾不同的產品。 標準CPU還是有其存在的價值,不會所有人都需要客製化的CPU,但如果是對自家產品有長遠發展規畫的大廠,最後一定會考慮在CPU裡面添加自訂義的元素,因為這會讓終端產品出現明顯差異化,進而凸顯自己的品牌色彩。蘋果(Apple)、Google、Facebook、Tesla等大廠都自行為特定應用設計專用的SoC,原因也就在此。 其次,既有的CPU架構在應對AI、IoT所帶來的多樣化需求時,確實有些力有未逮之處。不是現有CPU架構無法實現這些應用,而是在效率面、成本面還有很多改善空間。RISC-V填補了這些缺口,進而讓很多本來採用標準CPU架構,甚至是像英特爾(Intel)、Microchip這些本身就擁有自定義CPU架構的供應商,願意在RISC-V上投入資源。 最後,沒有任何一家廠商或是國家,會樂於見到單一技術供應商擁有市場壟斷地位,因為這會帶來許多風險。先不提新興國家的政府或科技企業對此會有疑慮,即便是美國的科技公司,也會想在既有的主流技術之外,扶植新的供應商與其抗衡。在這個時間點上,RISC-V成為一個頗具潛力的替代方案,且因為RISC-V是開源硬體,沒有權利金、授權費的問題,對大廠來說,只要投入少許資源,就能探索新的機會跟可能性,何樂而不為? 總結來說,RISC-V社群能在短時間內如此蓬勃發展,背後不只有單一原因。有發展潛力的技術、AI及IoT等應用趨勢凸顯出標準CPU架構的問題,加上各家廠商與各國政府分散風險的戰略考量,都促成RISC-V爆紅。
0

天時/地利/人和俱足 開放處理器來勢洶洶

在摩爾定律逐漸走向尾聲,處理器效能提升速度趨緩的情況下,為了榨出更多效能,以滿足人工智慧(AI)等應用對運算能力的需求,晶片設計者開始在主流的處理器IP之外,探索其他的可能性,例如異質運算、異質整合封裝概念的興起,都與CPU效能成長趨緩,有著密不可分的關係。 領域專用運算架構(Domain Specific Architecture)的觀念,為許多IC設計團隊帶來新的靈感。在標準處理器之外,利用客製化的指令集跟邏輯電路,提高特定某幾類運算任務的執行效率,以便讓處理器在功耗、晶片面積沒有大幅增加的前提下,執行特定任務時能有更高的效能,是領域專用運算架構的核心概念。而開放式CPU架構具有自由、可擴充等特性,正好與領域專用運算架構的想法一拍即合,也促成RISC-V在短時間內爆紅。 開放架構處理器的概念並非RISC-V首創,自2005年起,產業內便曾陸續提出OpenSPARC、OpenRISC、OpenCores等開源指令集架構,但始終面臨相關生態系不易建立,難以受到市場廣泛採用的難題。直到2010年加州柏克萊分校的Krste Asanović教授在其實驗室中開始一系列的開放原始碼研究,RISC-V即是他的RISC CPU研究計畫中的一項。隨後2015年,RISC-V基金會在瑞士成立,以非營利組織的形式推動RISC-V生態系進展,才奠定了RISC-V的基礎。 柏克萊掛保證 RISC-V成功引起產業興趣 晶心科技(Andes)技術長暨執行副總經理蘇泓萌(圖1)提及,柏克萊大學原先為了教學目的而開發出RISC-V,而柏克萊大學作為電腦科學人才培育的重鎮之一,其響亮的名聲,是初步吸引廠商對RISC-V產生興趣的原因。 圖1 晶心科技技術長暨執行副總經理蘇泓萌 與其他的開源硬體相比,RISC-V具有兩方面的優勢,一是簡單易學,二則是良好的商業模式。原本就是為了教學而發展出來的RISC-V,跟其他主流CPU或開源CPU相比,很容易學習上手,有些比較年輕的工程師,很可能在學生時代就已經接觸過RISC-V,因此開發團隊的培養、建構,跟採用主流CPU架構開發晶片相比,難度比較低。而商業模式方面,RISC-V是開源硬體,開發者不用支付授權費、權利金,免於承擔龐大的資金壓力,也讓許多廠商更願意嘗試在晶片中採用RISC-V架構。 SiFive總裁暨執行長Naveed Sherwani(圖2)則從天時、地利、人和的角度,來分析RISC-V快速竄起的原因。在人和方面,Sherwani的觀點與蘇泓萌類似,認為從學術教育需求中誕生的RISC-V,其單純易學、容易客製化的特性,讓RISC-V在推廣時占了很大優勢,這也讓半導體大廠與EDA工具業者看到RISC-V的發展潛力,進而提供支持。這是其他開源或可組態(Configurable)CPU所不曾享有的待遇,也是RISC-V聲勢快速上漲的原因。 圖2 SiFive總裁暨執行長Naveed Sherwani 各國追求半導體自主 RISC-V來得正好 至於在地利方面,由於國際政治的對立加劇,許多國家都需要在談判桌上累積更多籌碼,而半導體作為重要的戰略物資,自然是各國爭相投入扶植的產業。事實上,SiFive在2019年曾經在埃及、巴基斯坦等根本沒有半導體產業的國家舉辦RISC-V論壇,結果動輒吸引數百人、上千人出席,原因也在於各國都想要在半導體領域掌握一定的自主權。對於沒有半導體或資訊科學基礎的國家來說,RISC-V是一個很好的起點。 中國為了追求半導體產業自主,在RISC-V上所投入的資源,更是不在話下。近期中國開放指令生態聯盟才剛舉行CRVS 2020研討會,會中探討了中國RISC-V生態系的未來發展方向,以及中國本土業者在RISC-V處理器設計、驗證、矽智財(IP)與軟體工具等的發展成果,顯示中國有很強烈的企圖心,欲利用RISC-V創造出屬於自己的處理器生態系統。 摩爾定律走向尾聲 運算效能提升要靠客製化 而在天時部分,摩爾定律的進展趨緩,導致處理器效能提升速度大不如前,加上AI應用蓬勃發展,都使得晶片業者必須設法在既有的CPU架構外另闢蹊徑,以滿足客戶對運算效能的需求。 Sherwani就指出,如果處理器的效能提升速度,還能保持十多年前的水準,業界恐怕不會對RISC-V產生這麼大的興趣,因為標準CPU就能滿足應用需求,就算有些電晶體閒置不用或工作效率不彰,對晶片公司跟使用者來說也無所謂。但在摩爾定律走向尾聲,客戶對運算效能的需求卻因為AI暴增之際,晶片業者必然要想辦法讓處理器上每個電晶體都能發揮到極致。針對特定應用進行客製化設計,則是實現這個目標必然要走的路。 蘇泓萌也認為,RISC-V的發展,跟AI有很密切的關係,當AI應用不斷更新,以聲音、人臉辨識與資料中心為主的應用發展比通用的處理器開發更快,須要彈性靈活的解決方案,允許客戶自行修改指令集,才能透過硬體加速滿足AI的效能需求。 應用廣泛的RISC-V便是AI加速的解決方案之一,藉其彈性修改的特性,可依照不同客戶的需求客製化處理器,縮短產品從開發到上市所需的時間。目前RISC-V架構以中低階產品為主,並以美國及中國發展最快。未來RISC-V將走向高階產品,同時持續與學界合作拓展整體生態系。 生態系建立仍為RISC-V最大考驗 基於精簡、可擴充、易於客製等優勢,讓許多廠商對RISC-V躍躍欲試。具代表性的科技公司如英特爾(Intel)、三星(Samsung)及高通(Qualcomm)三大廠商皆對RISC-V處理器IP/解決方案商SiFive投入資金;而聯發科除了是RISC-V基金會的成員之一,也是晶心最大的股東,令市場更加看好RISC-V的發展前景。面對處理器開放架構應用的討論,處理器大廠Arm則選擇部分開放自家處理器架構,因應日益增加的客製化需求。 主流的處理器IP與開放式架構兩陣營各有支持者,而RISC-V架構的出現,提供處理器設計人員在現有IP之外,另一個更具彈性的選擇。基於開源的核心宗旨,RISC-V的開放性可加速創新。然而硬體架構仍須搭配編譯器與軟體工具支援,才能發揮其作用。因此RISC-V的挑戰便在於建立一套完整的支援系統,藉由建立生態系來穩固市場定位,期望未來與主流處理器並駕齊驅。 為了建立RISC-V生態系,學界與業界人士成立基金會共同推動,RISC-V社群中的處理器廠商之間除了各自的策略布局,同時反映了半導體產業的競合關係。蘇泓萌表示,RISC-V社群的廠商間呈現合作性競爭(Co-opetition)關係,競爭對手與合作對象間並沒有明顯的界線。生態圈中存在競爭,但是上下游廠商,甚至競爭對象還是可以合作把餅做大,透過互相支援拓展RISC-V生態系。
0

高通推機器人RB5平台為5G/AI應用鋪路

高通(Qualcomm)日前基於過去成功的RB3平台,發布專為機器人設計的RB5平台。RB5平台由一系列機器人/無人機通用的軟硬體產品組合而成,將能整合高通的5G及人工智慧(AI)技術,有助於開發人員與製造商創造出下一世代所需的高算力、低功耗機器人/無人機設備,並預計2020年上市。 圖 RB5開發套件。來源:高通 RB5平台採用高通QRB5165處理器,客製化機器人所需的應用程式,提供強大的異構計算結構(Heterogeneous Computing Architecture),加上第五代高通的AI 引擎,效能可達到每秒15兆次 (Tera Operations Per Second, TOPS),用以運算複雜的AI與執行深度學習。此處理器同時使用新的高通Hexagon張量加速單元(Hexagon Tensor Accelerator, HTA)、可支援七顆鏡頭的影像處理器與強化影像分析能力的電腦視覺引擎。 整合RB5平台與QRB5165處理器,高通可以設計多元的產品,包括現成的系統模組,以及晶片上靈活的設計。該解決方案有多種組合,可依照商業或工業及的溫度範圍選擇。同時透過配套模組支援4G及5G連接,RB5機器人平台可為未來的5G機器人及智慧系統鋪路 RB5平台的主要技術包括: 1. 強力的異構計算功能:為了達到高功率的計算效能,平台所用的處理器整合Octa Core Qualcomm Kryo 585 CPU、powerful Qualcomm Adreno 650 GPU、多個數位訊號處理器(DSP)以及ISP,並且使用包含Hexagon張量加速單元的專用AI引擎、電腦視覺引擎。 2. AI引擎:新型的Hexagon張量加速單元基於第五代的高通人工智慧引擎,可以提供每秒15...
0

突破尺寸/功耗/效能天險 智慧推論晶片迎接新典範

未來消費性裝置創新,須仰賴創建更智慧的新型聯網裝置。此一未來,會由更多具有近端機器學習推論能力的知覺型感測器(Perceptive Sensor)所推動。運用這些感測器並同時擴大推論網路,將能推動智慧型裝置在幾乎所有方面的功能與使用者體驗的提升。隱私權亦可透過終端裝置本地推論的運行而獲得改善,因為只有最少量的使用者資料及感測器資訊會上傳至雲端。 機器學習被鎖在雲端 機器學習與智慧型裝置的交會解放了消費性電子產品新一波的創新。然而最佳的機器學習網路處理需求以及低功率處理器效能之間還有極大的差距。目前的解決方案是運用裝置收集並廣播感測器的資料至雲端,而高功率、專用的機器學習處理器則在雲端負責推論,並在完成後將結果透過網際網路回傳至使用者裝置。這個方法雖能提供機器學習的功能,但亦有極明顯的弱點。裝置有限的能量必須消耗一部分以保持持續的網路連線;雲端運算的延遲亦會限制了裝置對推論的應用,並且會破壞使用者體驗。而傳送原始資料的需求則讓裝置難以維護資料安全,並造成隱私權的顧慮。整體而言,這些限制了智慧裝置對機器學習的實際運用。 第一代的低功率機器學習處理器的整體容量與運算能力不足,只能專注在基本網路應用,如語音指令辨識,以及用於攝影機控制及客製化過濾的特徵偵測等。機器學習的核心邏輯絕大部分被減慢的摩爾定律所限制,因此若沒有效能上快速的改善,機器學習就必須維持在雲端。僅有在運算架構出現突破,方能創造出高效能、高正確度的近端推論。 本文意在展望複雜的推論網路可在幾乎任何消費型裝置上執行的未來─現在已極度接近。全新的「智慧型推論裝置」浪潮將會提供近端高效能的機器學習,讓敏感性的使用者資料不必上傳網路及雲端。其能自動化運用機器學習以改善低階裝置的功能以及使用者體驗。其將由快速創新、機器學習的同步處理、處理器設計、裝置設計所驅動,以創造全新的未來使用者體驗。 機器學習推論的突破 近期機器學習所克服的進階挑戰,揭露了新興智慧型推論裝置的絕佳前景。眾多團隊投身機器學習研究與學習/推論的程式碼庫,讓機器學習進入指數型的學習曲線。大部分的進展多與裝置的雲端連線能力或近端處理有關,針對處理較小資料集的研究則是純粹近端處理的最佳候選。裝置近期可以直接運用的創新包含: ・觀察手勢並處置實體世界物體 這項創新在兩個相關領域中已取得進展,可追蹤人類與機器人手臂,及教導機器人執行觸覺操縱。2019年,OpenAI透過在3D模擬中訓練的機器人展現出手指的靈活性,將其知識轉移至現實,並適應現實世界的物理現象。這創造出可以執行複雜任務的彈性,像是解開真實世界的魔術方塊,卻不需要真實世界的訓練。此外,2019年Oculus Quest亦發表了視覺感測器的手部追蹤技術,需要同時使用4具攝影機以進行6個自由度的頭部追蹤。該解決方案在Snapdragon 835處理器及3MB的神經網路架構,以500mW的耗能提供骨骼及數個手勢追蹤。此前非機器學習的解決方案必須使用景深攝影機及專用邏輯,並消耗超過15W的功率,卻僅能提供明顯較差的正確性。 ・以現在的行動衡量未來結果 在Google的DeepMind中,強化學習經過修改而能了解賽局中決策的長期結果。Temporal Value Transport演算法則是用以將未來所得的結果通知現在,結合未來利益的機率於當前的行動中。這種結合未來結果於目前決策的能力能大幅改善機器學習系統在現實世界的決策制定,除可協助裝置進行更複雜決策的制定,還能大幅改善可執行任務的數量以及可應用狀況的複雜度。 智慧型推論裝置 開創全新體驗 運用推論協調裝置功能是未來裝置設計的強大典範。推論驅動的設計可以創造全新等級的使用者體驗,同時改善低階裝置的功能。具有多重網路推論的裝置將用以進行使用者與環境輸入訊號的複雜翻譯而不需要運用到雲端。使用多重同步網路能讓裝置對於使用者與環境輸入訊號有更高層的理解及反應。這些裝置受到影響的邏輯包含: ・智慧型推論裝置啟動  機器學習極適合翻譯聲音、手勢以及視覺輸入,以啟動裝置、節省電池電力並減少雲端資料傳送。 ・雲端運用與資料隱私經衡量 裝置可以運用推論在雲端相關任務上,包含進一步推論,或是非推論的雲端計算。裝置可以在近端進行推論,而不需要提供原始資料至雲端。聲音、影像及感測器資料及其所產生的推論均不需要上傳。裝置可以決定哪些資料需要傳送至雲端,而該邏輯可以透過設計以強化隱私與資料安全性,而不需要因為必須在雲端處理而公開地揭露。 ・推論驅動使用者體驗 在裝置靈活性、真實聲音翻譯及重製、導航、視覺、偵測、辨識等裝置功能的提供上,推論已證明具最佳的表現。推論可以直接用以創造全新使用者等級的功能與體驗,這些都是不具推論能力的裝置所無法提供的。可同時使用一組以上神經網路的處理器,具有能在裝置及使用者層級同時運用視覺、聲音及創新感測器輸入以制定複雜決策的能力。 啟動智慧型推論裝置 啟動感測器或連接至雲端都需要運算、耗電以及成本。若裝置能快速推論,一旦感測器的輸入需要後續對應動作時,處理器便能聰明地啟動、建立無線網路連線,而雲端的任務亦能明確地被指派。以此方式,低功率的推論便能透過把有趣的動作偵測、聲音啟動以及使用者意圖等留在裝置近端處理,節省整體裝置的耗電(圖1)。 圖1 推論驅動設計的智慧裝置運作 智慧型啟動的重要性不應該被低估─裝置可以進入可接受的耗電範圍,而在許多應用中雲端服務可以避免雙位數的誤判。 ・只有當任務短語和語調提出時,更聰明的啟動文字才會觸發裝置和雲端活動。 ・在各種基於攝影鏡頭的應用中,智慧動作感測可預測動作的意向,以避免下游處理。 ・智慧感測處理能減少一般功能處理器的負載,並運用機器學習來聰明地啟動裝置。 雲端運用與資料隱私經衡量 行動與社群應用帶來前所未有規模的運算與隱私挑戰。為雲端所設計的應用,可以把推論移轉至裝置,減少延遲並節省雲端資源。此外,如穿戴式裝置或智慧音箱等產品亦能決定近端、多因子排程以執行不同甚至是多重供應商的雲端服務。雲端雖然有極大的運算能力與資料量,不依賴網路連線的近端裝置則免於網路延遲與不可靠性。能正確在近端執行推論的裝置,因為能在近端分析聲音、影片、空間及其他感測器資料,僅需傳送較少的資料至雲端,能大幅改善機會來保護使用者隱私。 ・機器學習從雲端轉移至近端裝置可以達成低延遲的使用者反應,能大幅改善聲音、攝影機、手勢等輸入的使用者體驗。 ・近端的影片與聲音分析可以在近端執行,僅有在需要進行雲端分析時才將影片或聲音上傳,因而能保護敏感的使用者原始資料流。 ・智慧型應用程式介面亦能讓單一智慧裝置對來自多個供應商的應用程式進行任務分派並進行雲端互動。 推論驅動使用者體驗優化 推論是讓裝置開啟尖端且全新使用者等級功能的核心性能。結合機器學習推論的聲音與視覺處理讓裝置能辨別複雜的指令與語境,而後產生絕佳的成果。可在新興智慧型推論裝置上擴展的功能,包含使用者回應功能像是生物辨識存取、環境回應、有意義的輸入以及衍伸的人類意圖。此外,還包含替身模擬、機器人控制、智慧型感測器控制及導航等功能(圖2)。 圖2 機器學習推論可讓裝置開啟全新使用體驗的尖端功能 智慧型推論裝置機器處理器的期待屬性 能協調智慧型裝置功能的處理器,將運用機器學習技術,同時包含與裝置感測器、核心處理以及功率控制的關鍵介面。其將成為裝置的大腦,以啟動裝置的功能並調配關鍵的處理。理論上,其能提供實用的功能讓裝置因為減少耗能、必要時智慧化啟動裝置功能、確保其能依安排的需求而啟動,而成為更好的產品。在此同時,其能高效率正確地處理複雜的網路,體積又能更小─讓其可以置入體積精巧的平價裝置。 未來智慧型裝置的關鍵考量是其在感測器與耗能之間的關係。許多裝置需要延長電池使用時間。現今,複雜的視覺感測器資料分析會以最大Thermal Design Power(TDP)的狀況下消耗所有的運算資源。智慧型感測器僅有在必要時會啟動處理、無線網路、雲端互動及實體功能。智慧型感測器與裝置功率的減少是加速智慧家庭採用的必要項目。智慧化啟動網路運作及雲端互動可以減少裝置耗能、延長運作時間、增加尖端功能所能保留的電力預算。家用配線是長期的限制,需要許多裝置以電池運作,以增加消費者的採用。現今電池運作的智慧型家用裝置通常使用4個以內的AA電池或是3500mAh的充電電池,而目標運作時間則在3個月以上。運用智慧型感測器,僅在必要時才啟動裝置,在近端處理輸入而不需要無線網路的連線,可以顯著增加其功能,並減少對於電力的需求。 最佳化的效能、架構、軟體、功率以及研發平台的匯集,對於推論成為未來智慧型裝置設計的驅動因素是全部必要的條件。最佳化的推論處理器將在這些屬性上同時擁有優異的表現。 效能 ・高機器學習網路效能/瓦特:能執行高正確性、現代的影片/影像/聲音處理類型網路。 ・一致的加速度:即便在網路程式碼改變,並擴大多重網路類型,仍能提供相對一致的加速度。 架構 ・整合式設計:小尺寸及高度整合,以簡化設計。 ・標準匯流排:使用標準介面與匯流排設計,易於整合至裝置。 ・多重感測器輸入/輸出介面:支援影片、聲音、常見及新興的感測器。 ・可擴充性:在相同的程式碼下,設計架構能擴展至多重ASIC或是更大、更高性能的ASIC。 ・低延遲:整合記憶體架構及快取,以快速處理所擷取的資料,包含聲音及高解析度/多重攝影機影像等。 軟體 ・快速載入:快速並動態載入,同時執行多重機器學習網路。 ・不特定機器學習網路:執行任何神經網路型式或是分層類型。 ・執行及相關多重機器學習處理:運作多重網路並執行橫跨多重推論的分析。 ・一般目的運作:執行程式碼以產生完整形成與裝置運作相關的成果。 電力 ・低TDP:支援電池電力以延長穿戴式裝置及離線操作的使用時間。 ・低熱度限制:低熱度適合支援穿戴式裝置及全被動式運作。 ・快速啟動:由使用者或感測器呼叫可快速、低延遲的啟動加速器,適合底層以低於使用者感知等級的運用。 ・選擇性啟動:命令和控制感測器啟動,支援額外處理,協助裝置平均耗能最小化。 平台 ・強力的SDK及說明文件:軟體工具集,搭配第三方工具的支援,使其易於運用於目標的加速器中。 ・最佳化的預製:針對主要應用的功能區塊,如偵測、分類、除噪等,提供直接替代(Drop-in)的支援。 ・部署工具集:來自主要機器學習平台如MXNet、PyTorch、Caffe及TensorFlow的移植工具等強力支援。 兼顧尺寸/功耗/效能 全新推論處理器登場 新創公司Perceive發表全新的Ergo,是款高度整合的推論處理器,能將所有推論處理卸載至低功率應用及小尺寸裝置。Ergo能以相當於55 TOPS/W的性能執行推論,而在全功率運轉時可以達到4 TOPS,而不會犧牲正確性,或限制可支援網路的類型。Ergo ASIC採用7×7mm FBGA封裝並能以約20mW耗能處理許多網路,最大功率約為120mW,且完全採用被動式散熱。在現場展示中,Ergo在全速運轉之下溫度仍低得可以直接碰觸。 Ergo是設計來執行傳統上僅能在資料中心等級推論處理器上方能運作的網路。現今Ergo可以完整執行YOLOv3,在批量尺寸為1時以246fps處理6400萬組參數。Ergo可以執行傳統上需要超過400MB儲存空間且有超過1億組參數的網路。 與之前設定為低耗電應用的推論處理器相比,Ergo計畫並達成所有之前的處理器及專用加速器擁有相當的每瓦特效能的20倍至100倍的功率效能。現今的推論處理器一般低於5 TOPS/W,而Ergo則可以達到55 TOPS/W以上。 要達成這樣的效能,Perceive發展出全新的運算架構,能維持高正確性,但大幅減少記憶體與耗電量的要求。Ergo新穎的網路表示法(Representation)避開推論對於MAC陣列的需求,並因而精巧至足以在晶片內記憶體執行大型網路。Ergo晶片亦採用積極性功率與時脈閘以增加電源效率。因此,Ergo能在7mm×7mm的封裝內提供極高的正確性。結合了源自數學原理的方法至機器學習、不是依據MAC而設計的架構、沒有外部記憶體、傳統的節電技術,是讓Ergo可以在資料中心等級網路上提供高正確性、效能與效率的原因。 廣泛的移植網路和一致的效能提升,代表該公司已成功創造一種能提供相對於今日推論負載明顯效能改善的架構。此外,該公司亦已展示許多多重網路應用,均與其宣稱的網路容量及性能相符。 Perceive Ergo能直接串接高解析度、高影格率影片感測器,讓多重感測器與即時元資料(Metadata)有機會作為推論處理的額外輸入。此能提供先進的問題解決與多重網路推論,讓其能運用於核心裝置控制與先進的終端使用者功能。有了高效能與網路容量,亦可能推出全新的功能。在此機會之下,軟體設計與訓練出現新的挑戰,對裝置生產廠商成為全新的技術挑戰。Perceive已試著透過工具套件(其中含有針對一般機器學習應用的已可用於部署Ready-to-deploy網路),讓研發更為容易。 Perceive Ergo機器學習網路範例 Perceive Ergo可同時執行多個網路,讓智慧型裝置能採用推論驅動設計。其已使用現今多層次網路如CNN(包含殘差邊緣)、LSTM、RNN及其他網路進行測試。示範的網路包含: 以M2Det進行多重物件偵測 多重層次多重尺度偵測器(M2Det)是新發表的類神經網路(2019年1月),用以進行物件偵測及在地化,設計以偵測尺度差異極大的物件。M2Det是款端到端、單一拍攝物件偵測器,其在現實世界應用極為實用,因為物件可以是在漸進場景中且尺寸及比例差異極大。 以YOLOv3進行多重物件偵測 YOLO是由Joseph Redmon及Ali Farhadi所創造的CNN式類神經網路,可以在影像及影片中辨識並定位高達80個物件類型。現今YOLOv3是資料中心最受歡迎的多重物件偵測器之一。 以專用網路進行聲音事件偵測 最佳化的類神經網路可以以小尺寸的類神經網路辨別多重聲音事件類別,讓其極適合運用搭配較大的視覺處理類神經網路使用。 以ResNet進行臉部辨識 深度殘差學習因較易訓練與絕佳的正確性而受到關注,其為微軟研究院(Microsoft Research)在2015年所發表。多重層次配置的ResNet已運用於大型樣本地區臉部與影像辨識。 Perceive Ergo同步推論類神經網路範例 Perceive Ergo已示範結合這些類神經網路運作,並且以其自身的記憶體/網路權重能力在技術上是足以同時執行多重類神經網路。此處理器能執行全新類神經網路的組合,處理使用內建輸入/輸出埠自多重偵測器所取得的資料。 Perceive...
0

AI提升認知/本地化資料 協作機器人優化製造流程

越來越多自動化裝置投入工業部署。IIoT是IoT的分支,其主要作用是將自動化設備部署到包括工廠、倉庫和公司等工業環境的製造系統或其他生產流程中。數量日益成長的資料經由IoT支援裝置導入網路,需經過快速有效的處理,才能得到深入見解,進而改善產業的決策和製程控制。 機器人加入工業應用已有很長一段時間,多數人最為熟悉的例子當屬生產線上組裝汽車的機器手臂。其中半導體產業善用機器人達到製程穩定可靠,順利生產需要小心且保持動作一致的產品。 IIoT的崛起推動協作機器人在產業中的利用率。協作機器人是一種協作式的機器人,其經過不斷調整,能與人類並肩合作(圖1)。協作機器人之所以得到重用,是因為IoT使機器人與人類活動相互協調,達到更高層次的合作與效率。傳統機器人則多設定為獨立運作,不需要與人類進行特定的交互活動。相較之下,協作機器人能與人類合作並互相支援。當然不是說協作機器人將全面入侵,用侵略性的方式占據整個產業。相反地,新技術將形成對人類和產業均有利的雙贏工作模式和關係。本文將探究其中的啟用技術,以及協作機器人在IIoT領域的應用。 圖1 新一代協作機器人,開始出現在製程環境中 啟用技術促協作機器人落地 協作機器人投入IIoT,仰賴超越以往傳統機器人領域的技術,這些技術強化人類與機器人的互動,提升工作人員的安全,並降低成本。感測器、執行器、控制功能和運算技術上的改善,讓協作機器人獲得感知、資料融合與處理、人工智慧與執行能力。加上其他技術的出現,更進一步提升方便性和調整能力,同時降低成本。以下將探究三項讓協作機器人在IIoT中落地應用的特定啟用技術,包含人工智慧與機器學習、電腦/機器視覺以及智慧邊緣。 AI/ML助機器人認知技能 人工智慧(AI)是一項用於處理數位資料的技術,會模擬人類思考的功能、行為或結果,雖與人類的邏輯不同,但仍會嘗試透過合理的程序來達到目標。機器學習(ML)為運用AI並導入演算法的程序,這套演算法的目標是產生成果,並以機器在達成設定目標過程中所獲得的經驗不斷改善成果。 傳統機器人是按照預先設定的指令作業,並持續重複執行,不考慮作業環境中的任何變動。而協作機器人則整合AI,具有感知環境的能力,可以理解問題並加以解決,同時做到辨識、學習,對新的狀況和脈絡做出調整,並能自主決策、與人類互動。協作機器人要在新環境下運作並不需要經過太多複雜的編程,雖然有時可能需要操作人員手動介入,引導協作機器人手臂進行一次所要的行程,以完成指定動作。 AI需要由高速的電腦處理器,以及整合模糊邏輯、機率證明方法、神經網路和專家系統等多種技術的軟體,賦予協作機器人如同人類般的特質,讓人類與機器達到更好的互動與協作。協作機器人能從許多感測器擷取大量原始資料並加以處理,經過整合、處理和解譯後的資料,有助於協作機器人針對環境做出資訊充足且準確的推論,而後才能採取適當的行動。這整個流程必須以近乎即時的速度完成,避免協作機器人在與人類合作的過程中發生延遲。雖然感測器會散布在工作場所中的不同位置,且感測的時間點可能不盡相同,但編程演算法能有效地整合來自各感測器的所有資料,並對環境和狀況做出資訊充足且準確的推論。AI和ML讓協作機器人擁有某種形式的認知技能,能模仿人類的行為,因而能在IIoT環境下更出色地與人類互動。 電腦/機器視覺提升感知 視覺是人類所擁有最重要的感官,也是人類得到感知能力、察覺外在環境的重要方式。同樣地,機器(尤其協作機器人)也能設計成透過電腦或機器視覺的程序來進行感知。機器視覺能讓協作機器人以模擬人類肉眼的方式,透過可見光(波長430~730nm)、紅外光(波長>730nm)和紫外光(波長<430nm)來偵測及識別物體、空間、景色、方向和位置。光線偵測與測距(LiDAR)是一種偵測系統,其採用雷達的原理運作,但使用雷射光源。機器視覺的主要焦點在於解決適當分辨及正確分類物體的問題上,讓決策和物體處理不致成為工業製程的瓶頸。機器視覺有助於改善準確度、提高處理量、避免碰撞,並能提高狀態感知。 智慧邊緣將資料本地化 邊緣裝置彼此互相連結,部署在物聯網的最前線,協作機器人便是從邊緣裝置衍生而來。這些邊緣裝置的技術功能和情報能力持續提升,智慧化程度也越來越高,能感測及回應更多事物,並依照設定進行傳達和處理。協作機器人代表機器人自主性的下一個階段,能賦予其更多能力,與人類並肩在工作環境中運作及決定如何執行特定作業。要提升機器與人類之間的複雜互動品質,需能貼近作業位置處理及協調龐大數量的資料,因此最好在本機端運用智慧方式處理資料,而非從遠端或透過集線器/閘道。智慧邊緣是一套網路系統和技術,在適當進化和調整後,能滿足本地化資料管理的需求。智慧邊緣必須具備充足的資料容量、適當的系統效能、系統頻寬、安全性和可靠性。智慧邊緣如能獲得進一步的開發,工程師便能讓協作機器人發展出能隨時間提高自主能力的功能。 提升製造業/IIoT產能應用 協作機器人在製造業的新型態應用仍持續發展,可靠的協作機器人能安全地協助製造商提高品質,改善製程調整能力,同時提高生產力。IIoT的應用則包括組裝與操縱、搬運與裝卸,以及檢查。 執行精密組裝與操縱 用於電腦數值控制工具機(CNC)加工的生產機具必須由操作人員持續監看,操作人員負責的工作包括裝載原料、啟動機具、確保機具正確運作以及卸除成品。組裝和操縱為最常見的一些工業作業,單調且無趣,通常不需要高階技能,操作人員也很容易因為重覆不斷地舉起沉重的原料和零件而受傷。組裝和操縱作業的其他例子還包括沖壓、磨削、修邊、焊接、射出成形、印刷電路板(PCB)測試、零件檢查和三座標測量。 協作機器人是組裝和操縱應用的理想選擇之一,可放在傳統生產機具的前端,經過簡單編程就能執行所需要的裝卸作業,再定期由具專業技能的技師對機具和工具進行檢查,執行定期保養即可。由協作機器人進行技術門檻較低的手動作業,而檢查、維修及更換工具、執行品管測試和採取適當的修正動作等技術需求較高的作業則交由技師負責,如此合作將能改善工作場所的人力。透過適當的工作分配,不只可省下大量勞力成本、降低人員受傷機率、縮短產線停機時間,更能激勵人心,同時提高生產力。 拾放製程機器人需要精準放置未完成的組件和零件,協作機器人則能經過調整後用在非高精度的放置作業,因為其整合機器視覺系統,可提供定位回饋。協作或調整式的組裝作業一開始需要先由操作人員進行檢查、分類,並選出特定零件,接著將零件概略對準放到未完成的組件上(亦即處理中工件)。在後續的組裝步驟中,再由協作機器人將零件固定到未完成的組件上,如此便算是完成組裝。這種作業方式能在以下情境中改善生產效率與提升工作安全:零件太小,用人類肉眼難以對準的情況下;或零件的最終對準及連接需要高靈敏度或力道;抑或是最終組裝需要在高溫、高挑戰性的環境下,甚至用到危險化學物質或黏著劑的情況。因此當未來將零件放到未完成組件上不需要精準或重複性的定位、方位調整或放置動作,協作機器人便能派上用場。 協作搬運與裝卸 搬運與裝卸作業包括移動產品或從組裝線或輸送帶上拿下產品,經過計數和適當的包裝,貼上標籤,放入紙箱,然後封箱。高產速、高產能的製造商或許會生產專用的機器人機具和設備來進行包裝,但協作機器人也可以是搬運與裝卸應用的選擇。 協作機器人可用來擴展人類在製造和組裝作業中的能力,輔助執行低技術含量(重覆性)的作業,或需要高強度或拉長延伸範圍的作業。此外,製造作業經常會需要舉起像是車門等大型零件,然後放到車體等未完成的組件上。這類製程不見得適用於完全自動化的作業,因為其需要微調零件位置,確保將零件正確組裝到未完成的組件上。在汽車組裝作業中,各類車款可能有不同數量和外型的車門需要安裝,因此不適用於全自動製程。不過,對於需要舉起大型零件的作業場景,則可以使用協作機器人,它可執行操作人員的「指令」,對操作人員的觸碰作出回應,將零件移到未完成組件上所需的位置。 機器人檢查可改善製程 協作機器人能對物品執行細膩的檢查或複查,且絕不會感到疲累、無趣或心煩意亂。對於改善IIoT製程的安全、品質與生產力來說,是很重要的資產。協作機器人只要經過簡單的編程,便能辨識及計數輸送帶上的物品、加入包裝材料和標籤,然後將物品放入合適的紙箱內。但工作人員在執行高技能等級的作業時仍能與協作機器人一起合作,像是執行與監督有關的品管檢查等。此外,協作機器人的程式易於修改,可針對產品包裝需求的變動加以調整。 機器人與人類共構新合作模式 協作機器人在IIoT領域的參與程度越來越高,它們可以與人類並肩作業。IIoT在人類和技術之間建構了全新的關係,透過數位與機器人技術改善效能,滿足人類的需求。在未來的工業自動化領域中,機器人並不會完全取代人類,而是與人類齊力合作,使工作環境更美好。 (本文作者任職於貿澤電子)
0

三向直搗技術/智慧應用難關 聊天機器人起腳射門

時至今日,全球各地,從制定相關決策的政府機關,大型上市公司與夾縫求生存的中小企業,無一不提出數位轉型、扶植新創、組織創意轉型等方向。而此篇文章將試圖探討在現今的技術條件與市場期待心理下,是否能夠因為使用新技術、或者開闢新賽道進行聊天機器人的市場突圍? 聊天機器人無法滿足使用者期待 科技的快速發展來自人追求快速、方便的本性,但人類的想法與思緒十分複雜,因此聊天機器人難以全面滿足使用者的需求。回想日常生活的溝通情境,當人們在日常溝通的時候,除了說出口的字句,對方的肢體動作與眼神有沒有影響到自身的判斷?讀者是否會自行腦補一些情境?尤其跟老闆、同事或下屬進行具目的性的談判對話時,語句之外的線索顯得更重要。 聊天機器人不夠聰明的原因,是它距離人類多模態交互的能力還很遙遠。現今最普遍和流行的生活應用,當屬智慧音箱(如Amazon的Echo),一般人在買回去的當下充滿興奮感,嘗試各種指令來挑戰智慧音箱的極限後,就將它放置在屋裡的某一角落,成為一個可有可無的家用品,無法實際融入使用者的生活情境中。即便仰賴大數據和人工智慧(AI)的相關技術持續更新,用戶體驗也漸入佳境,但仍缺乏具代表性的現象級App,無法滿足多數人的使用需求。另一方面,若人們嘗試降低自己對產品的期待,單純利用聊天機器人詢問明確的問題(如天氣),請它做一件明確的事情(如播放音樂),這樣的基本需求可以被滿足。 聊天機器人技術發展三向剖析 聊天機器人是一項技術整合的產物,其中牽涉的技術範圍有電腦視覺、自然語意、機器學習(Machine Learning, ML)與深度學習(Deep Learning, DL)等。本文根據市場調研機構Gartner所提供新興科技發展週期報告,來審視各個技術目前位處的位置、困境、與待解決的問題。 電腦視覺 電腦視覺(Computer Vision, CV)目前處於泡沫化的谷底階段,意即此技術無法滿足使用者的期待,導致大家對於它的創新了無興趣。CV從實驗室的前沿技術,到如今能夠聽懂人類的指令,花了整整半個多世紀,產生瞄準在新零售、醫療、工業製造和網路娛樂等應用的期待。然而,人工智慧情緒識別離開人類的干預,對複雜情感的理解和表達能力,仍須持續的技術突破。其中,利用AI判斷並理解實體環境的CV,不僅是辨識情緒的關鍵技術之一,也被公認為未來三至五年最重要的技術之一,不僅眾多新創企業投入,大企業也紛紛利用自己既有的優勢企圖先布局並搶占先機,現階段大約聚焦在下列4個發展方向: 1. 服務平台:提供機器學習開發工具和雲端服務的商業型平台,讓開發者毋需從頭自行建構。 2. 影音資料庫:利用海量資料進行機器學習的模型訓練,將使用者上傳的相片和影音資料,與個人特徵資訊進行連結,大量使用電腦視覺技術客製化廣告投放以增加營收。 3. 硬體製造:如NVIDIA、英特爾(Intel)的晶片製造。 4. 消費性產品:近期可期待者為手機人機互動的介面。 自然語意 自然語意(Natural Language Procession, NLP)與CV處於泡沫化谷底階段。自然語意發展分為兩大階段,一種是應用傳統的分詞執行自然語言處理,第二階段則是近年由於機器學習快速發展,大家開始應用機器學習執行NLP。透過NLP所能實現的功能包含神經機器翻譯(Neural Machine Translation)、智慧人機交互(就是所謂的聊天機器人,受限於技術,目前只能在特定場景實現多輪次的對話)、機器閱讀理解與機器創作。但如前言所述,現實狀況下,人與人當面溝通,仍會有語意上的誤解,在此情況下,如何期待科技可以奇蹟似地解決這一切?自然語言處理首先透過斷詞、理解詞,接下來是分析句子,包含語法和語義的自然解析這兩個步驟,再轉化為電腦容易處理與計算的形式。上述在處理時,需耗費大量的人力成本,除此之外,還牽涉建構者本身對於所屬領域的專業度、邏輯與理解能力(所謂的人工智慧訓練師)。此外,NLP毫無疑問的是一個未來巨大的市場,無論電腦視覺或是語音識別,想要實現更人性化的功能,就需要NLP的加持,同時可預期隨著NLP技術的不斷發展,將會逐漸呈現NLP、語音與視覺融合發展的趨勢。 機器學習/深度學習 機器學習與深度學習位處在過度期望的高峰階段,各方話題與議題熱度竄升。機器學習指的是可以從資料中歸納規則的方法,是第三波人工智慧發展的代表技術,而在眾多機器學習演算法中,深度學習則是近幾年成長最快,表現最好的技術。遺憾的是,截至目前為止,幾乎每個深度學習實踐者都認同的一件事是:深度學習模型數據效果有限。要實現真正的深度學習需要滿足下列三點,這三點可以協助讀者辨別此項技術到底是人工智慧還是科幻小說。 1. 大量的數據與活動:為了使神經網路能發現新的模型,就需要有大量的數據,這些數據可以透過反覆試驗來處理和分類。 2. 運算能力:假設已有一定量的有意義數據,則需要運算能力,所幸目前已有一系列更低成本的選擇,如微軟Azure等雲端託管服務。 3. 新的敏捷方法:最後,也是最重要的一點,需要採用新的敏捷方法思考和解決問題。 大型資料庫用於訓練精確模型的必要性已成為一個非常重要的問題,同時,需要低效的人工標注數據成為一個更大的挑戰。在當前的深度學習應用中,數據的問題無處不在,由於建基於大規模數據,當滿足所需環境和約束條件時,這些系統會產出令人驚豔的成果;但若不符合上述場景,它也可能完全失效。舉例來說,若有人試圖解決大量翻譯或無人駕駛的問題,則需花很長時間來思考重要數據中的所有因素,需先建構演算法,而在過程中有很高的失敗機率。雖說如此,深度學習和先進模型的興起仍是一次革命性的進步,加速了那些針對以前無法解決的問題之技術解決方案出現,在思維上邁出重要的一步。 聊天機器人短期內破局可能性具困難度 產業中的廠商若以業務角度分析,主要分為三類: 1. 2C公司:產品直接面對用戶,如Amazon的Echo,由於未能滿足人類對於AI的美好想像,距離規模化應用上有大段距離。 2. 2B公司:如金融領域的智慧監管系統、醫療領域的醫療問答和診斷助理等。但是實際效果仍牽涉上述自然語意建構的縝密度,與場景應用設計的順暢度而有不同。 3. 2G公司:為面向政府執行行政業務類的知識庫建構和問答業務,如政府服務大廳的引導型聊天機器人、一站式辦公機器人等。 從生態系統來看,聊天機器人可分為產品,框架(Framework)和平台三類;其中框架是為了加速產品的研發,以SDK或SAAS服務的型態,提供有市場敏感度,或創意點子的需求者可快速架構特定場景和領域的聊天機器人。 短期若要大規模地拓展市場,恐怕有一定的困難度,除非在上述的關鍵技術中突然有突破口,縱然如此,各式場景應用與垂直深化探索仍不斷地激起人們對未來的想像。相信未來的聊天機器人與虛擬生命,將會以更好的體驗和型態呈現在人們面前。 (本文作者任職於優拓資訊)  
0

可編程架構靈活第一  FPGA DNN部署高速直進

本文概述演算法和架構方面的最新發展,並探討FPGA如何適應不斷變化的環境。 DNN加速部署因應環境變化 當今工業革命的核心是推出許多機器學習(ML)的演算法,尤其是深度神經網路(DNNs)(圖1)。其在電腦視覺與語音辨識領域取得令人印象深刻的成果,且越來越廣泛地應用在其他任務中。DNN首先會透過已標記的資料集進行訓練,後續應用的其中之一是將其他資料進行推論,這個推論的過程通常被稱為部署,即是本文的重點。 圖1 卷積神經網路的基本拓撲結構 與DNN部署相關的大量運算和儲存需求需要加速。此外,根據不同的應用實例,可能會對準確度、成本、功耗、模型大小、傳輸量和延遲有不同的限制。擁有即時性且以安全為重點考量的應用,如AR、無人機控制、自動駕駛等,由於低延遲與資料傳輸量的需求,因此不適合使用雲端。 在雲端運算和ML即服務的環境下,資料中心為成功處理大量的資料,面臨不斷成長的傳輸需求,為能源效率與營運成本帶來更多像是如何降低最多營運費用等挑戰。與嵌入式場景相比,雖然雲端服務延遲不那麼重要,但其仍然會直接影響到互動式應用的使用者體驗,例如Jouppi等學者在雲端服務中,將互動式使用者體驗的回應時間限制為7毫秒。 由於上述這些挑戰,過去數年間不同DNN模型與加速器呈現極速的發展。考慮到應用需求的差異,目前DNN推論作業負載與硬體加速器架構領域的一大關鍵趨勢,為多樣性及快速演進發展。本文將概述演算法和架構的最新發展,並探討FPGA如何適應這種不斷變化的環境。 DNN趨向追求高效推論 DNN通常是由一個或多層建構的前饋運算圖,其中大型網路能夠包含數百到數千層;每一層皆由突觸互聯的神經元組成且都與權重相關。每個神經元運算其接受域的加權和,並且使用非線性激勵函數。電腦視覺通常使用卷積層,其接受域擴展到多個典型的二維特徵圖,這些特徵圖與多個典型的二維過濾器進行卷積,產生如圖2所示的運算虛擬碼結果。 圖2 典型DNN運算的虛擬碼 機器學習框架(如PyTorch、TensorFlow和Caffe)都是基於這些運算圖展示,針對訓練與推論將硬體的運算進行排程與配置。 傳統意義上,機器學習研究的重點是如何提高模型精確度,並沒有特別考量推論的成本。這一點在像AlexNet與VGG這類較為陳舊的ImageNet獲獎網路中表現相當明顯,即便這些網路現在看來規模較大且過度參數化。然而,隨著機器學習和DNN進入實際應用,運算和記憶體需求成為其中一個主要的問題。上述問題激發最近一系列有關如何使DNN推論更有效的研究,同時精準度和運算的複雜度也會成為考量。 以下簡述為提高DNN效率而提出的幾種方法。在大多數情況下,這些方法可被認為是相互獨立且可以組合的,儘管部分DNN可能不太適合某些技術。 高效能拓撲結構 DNN的拓撲結構定義了其包含多少層、每層的類型和大小,以及各層之間的連接方式。一些拓撲結構由構造規則進行定義,該構造規則根據拓撲參數定義大小和層數。近期大量研究都提出DNN可透過緊湊的拓撲結構實現高精準度,例如透過少量的參數、少量的乘積累加(MAC)運算或兩者並用。 最近的範例包括MobileNets、 ShiftNet、ShuffleNet,和Deep Expander Networks,其通常具有可控制精準度與運算量之間權衡的拓撲參數。而FPGA在這方面可以提供獨特的優勢,因為新型運算單元(例如移位和隨機排列)幾乎不需要運算資源,可透過重新配置元件中的可編程設計互連來實現。 量化 DNN通常使用浮點運算進行訓練,但可以使用有限的數值,其通常可以直接量化到8位元(參考圖3),或者重新接受訓練以使用更少位元(訓練量化),進而得到量化神經網路(QNN)。量化方案可以是均勻或非均勻的,而根據網路的不同部分可以使用不同的量化方案。使用更少位元數需要更少的運算和記憶體,但可能會導致準確度降低。最近大量資料都提出更好的量化訓練技術。近期的方法如LQ-Nets,已經將浮點和4位元QNN之間的精準度差距縮小到1%以下。 圖3 正弦波3位元量化函數 FPGA內部的可編程邏輯可提供獨特的功能,能夠以非常精細的位元度對運算單元的資源進行客製化,進而提供精確的位數來滿足應用需求。因此,此應用能夠發揮潛力來降低運算與記憶體的硬體成本。 剪枝(Pruning) 神經網路的一部分可以被修剪掉而不會對準確度產生任何重大影響,對於某些層來說,準確度最高可達90%(圖4)。剪枝技術在如何選擇修剪部分(例如透過權值幅度或二階導數),以及在選擇以何種精度執行修剪(例如單個突觸、相鄰突觸群或用於卷積的整體特徵圖)有所不同。修剪單個突觸會導致不規則的結構,而這些結構只能透過專用硬體來進行有效處理。雖然人們通常選擇較粗精度的修剪方法,但是精細度的修剪方法更進一步提供可與FPGA搭配使用的效能擴展性,進而縮減記憶體子系統,在提供運算引擎所需支援的同時,有效儲存稀疏表示(Sparse Representations)。 圖4 突觸剪枝 層間融合與分解 數學等價或近似可以用來減少DNN層的運算和記憶體需求。例如,批次的標準化操作可以融合到前面的線性轉換層(卷積或全連接層)中。卷積可以用深度可分離濾波器(Filter)來近似表示基於奇異值分解的全連接層。 其他技術則可以使用知識蒸餾(Knowledge Distillation)使高效能模型的訓練變得更加容易。Hoffer 等學者提出將DNN的最終分類層固定到Hadamard矩陣上的方法,該矩陣具有+1/-1的固定模式值,並證明此方法對幾個ImageNet網路的分類精準度沒有影響。 精度/運算之間損益比較實測 神經網路是函數近似器,高品質的近似器(Approximators)比低品質的成本更高。其中,在確定將多少記憶體和運算資源用於執行推論(使用神經網路),以及所得推論的品質(例如網路對未見輸入影像的類別進行預測時的準確性)之間,需要作出權衡。雖然難以確定資源與精度之間的確切關係,但是透過對具有不同運算要求的神經網路進行訓練並觀察所得準確度,能夠以過往經驗探究其設計空間。 圖5呈現的是設計空間探索的一種結果。(圖中兩軸上的數值越低結果則越理想。)使用不同的量化方案來生成具有不同運算成本(x軸表示為在整體運算中將使用多少FPGA LUT和DSP片的大略數值)和準確度(y軸)的網路。紅線是柏拉圖邊界(Pareto Frontier)與設計點,這些設計點在運算成本和準確度方面都是同類中最好的。在這種情況下,較低準確度的深度網路(ResNet-50,具有2位元權重和8位元激勵)的運算成本與誤率較低,優於較高精度的淺層網路(ResNet-18,具有8位權重和8位激勵)。 圖5 運算成本與使用各種量化網路在ImageNet上排名前5的分類錯誤率 深入推論加速器架構研析發展趨勢 如前所述,神經網路對運算與記憶體的要求可能非常高。例如使用像ResNet-50這類熱門的DNN對每個單獨的輸入影像進行分類需要77億次運算。然而,從優勢來看,本質上DNN的高度平行化,可以加以利用。因此,各種形式的客製硬體架構正在演進發展,以實現這些演算法的部署。 DNN的推論運算包含多個平行級別,如圖6所示。這些平行級別可歸納如下: ・連續層之間的粗精度拓撲平行與平行分支,例如在GoogLeNet或DNN整合中所發現的。 ・層內的神經元和突觸平行,例如多個輸入/輸出特徵圖(IFM/OFM)通道及卷積層中的畫素。 ・當分別查看權重和激勵的各個位元時,運算內部的位元層級平行級別。 圖6 適用於運算DNN推論的平行級別 推論加速器架構前景可期 在為這些運算和記憶體高度密集型演算法優化硬體架構時,會出現以下問題: ・如何進行最佳迴圈轉換和展開,以實現資料重複使用和運算效率最大化與記憶體瓶頸最小化? ・如何在技術節點縮小導致收益有限的情況下提供效能可擴展性? ・如何實現即時回應、功耗限制,以便在耗能較高的嵌入式應用場景中進行部署? 除了標準的CPU以外,特殊應用硬體架構正試圖針對特定的應用限制進行優化,包括GPU、FPGA和AI ASIC。微軟創造了「DNN處理單元」這一術語,也可簡稱為DPU,作為這些客製架構的總稱。圖7描述了通DPU架構,其中典型的「痛點」以黑點標示。 圖7 通用DPU架構中的典型「痛點」 架構可以大致按照運算操作的基本類型、記憶體頻寬、平行級別、專業化程度和既有的準確度支援進行分類。雖然GPU最初是專注於遊戲和繪圖處理,並逐漸應用於高效能運算,但之後也越來越關注AI領域,並且將訓練加速作為其業界標準。 GPU被認為是向量SIMD處理器,如透過NVIDIA Volta系列中引入張量核(Tensor Core)和定點整數運算,為深度學習進行越來越大幅的客製化,尤其是採用NVIDIA最新Turing架構的INT4和INT8。DPU的ASIC解決方案旨在實現硬體成本最小化,並盡可能提升效能,例如Google的張量處理單元(TPU)。如前所述,TPU專門針對張量而不僅只是向量進行運算,並且為了充分發揮量化的優勢,還擁有客製記憶體架構與算數運算。除了TPU以外,越來越多公司正在打造客製硬體,包括Arm、Intel收購的Nervana、MobilEye和Movidius,以及GraphCore、Cerebras、Groq和Wave Computing等眾多新創企業。綜上所述,業界環境正在迅速發生變化。 FPGA在高效DNN的優勢 DNN的多樣性還展現在前面提到的各個平行級別上。因此,對於固定的硬體架構,如果以固定方式傳輸固定數量的平行運算元素,執行DNN的效率就會受到限制。例如,如果為了利用輸入特徵圖和輸出特徵圖(IFM-OFM)平行而建構固定的架構,那麼對於深度可分離卷積來說,可能會降低其利用率。特別是考慮到用來創建高效DNN的技術在快速發展,靈活應變能力是在不斷變化的DNN推斷環境中保持高效率的關鍵。 在這種情況下,業界廠商如賽靈思(Xillinx)FPGA的主要特色在於提供的運算和記憶體資源具有靈活應變能力,並能實現大規模細精度平行。該元件支援多種DPU架構,這些架構能夠充分發揮多個平行級別的優勢,並根據特定DNN拓撲結構的要求和應用根據設計限制進行客製。 在FPGA上運作的Soft DPU可以支援上述配置,並且能為每個特定的神經網路客製顯式記憶體管理及算數運算。 圖8、圖9和圖10提供Soft DPU範例呈現出其架構的多樣性。每種架構的主要特色如下: 對於特定的QNN,FINN可生成客製DPU,其中每一層都有專屬硬體,並採用晶片上通道連接到下一層,但會受到元件尺寸的限制。這樣可以為每一層客製精確度與運算資源,進而實現高效能的設計。層間資料流平行有助於實現低延遲與高傳輸量。FINN是可利用的開源程式碼。 圖8 FINN是一種專用於每層運算資源與層間晶片上資料流Soft DPU 圖9 xDNN是一種具有高度可編程設計與效能優化功能的Soft DPU xDNN是一種具有固定精度的脈動陣列可編程設計堆疊架構。該陣列的規則結構支援高度的效能優化。其提供的工具流能夠將任何DNN應用到該架構,無需生成新的位元流或具備FPGA專業技術,即可將xDNN用於評估。 圖10 BISMO為可支援不同算數運算精度且無需重新配置的Soft DPU BISMO是位元串列矩陣乘法的可編程設計堆疊,其透過序列化位精度維度但平行化其他維度,提供一個固定的架構,不但可以利用運作時的可變精度,同時仍然能夠提供高效能。精度更高的層需要更多的時脈週期(Clock Cycle)來執行,而BISMO為一款開源程式碼。 在摩爾定律終結的驅動下,賽靈思使用的AI架構由具有客製指令集的軟體可編程設計AI引擎組成。此外,基於NoC的互連,在布建資源方面更進一步提升靈活性,這對於提高元件利用率來說至關重要。再者,除了神經網路本身,FPGA還可以提供感測器融合和靈活的I/O;FPGA不僅能夠增加電腦視覺的預處理和後處理,還可以為線上智慧提供整合所需的其他功能,使元件適用於使用者的應用環境。 FPGA架構更迭因應各種挑戰 越來越多的應用採用機器學習演算法,為傳統運算架構帶來巨大的運算負擔。半導體產業透過許多代號為DPU的創新架構來因應挑戰。 其中,FPGA可以發揮關鍵作用,在調整運算架構方面提供高度的靈活性,因此不僅適用於一般的機器學習任務,還適用於特定的神經網路拓撲結構。可編程設計元件可以提供客製演算法,實現儲存和運算資源最小化,進而提供進一步的效能擴展性或針對嚴格的延遲要求進行最佳化。最後,FPGA可以在I/O和感測器融合與電腦視覺的預處理和後方面提供高度的靈活性,有利於滿足客戶需求 (本文由賽靈思提供)
0

即時/安全/可靠 邊緣運算執行高效機器學習

舉例來說,如ILSVRC影像分類競賽(圖1),在這場競賽中即是使用一種稱為機器學習(ML)的人工智慧─AlexNet早在2012年就贏得這場競賽,成為第一個使用深度神經網路和GPU來進行訓練的模型;而ResNet-152在2015年的影像分類競賽中亦擊敗人類。 圖1 影像分類中機器與人類的比較 電腦優於人類的其他範例還包含遊戲,表1中的範例是機器擊敗人類冠軍以及人類仍較優秀的非競賽情境。 機器學習無疑為智慧家庭、智慧零售、智慧工廠和智慧城市之類的應用情境帶來全新美好的必要功能,且現今各種企業都能利用這項技術。運用此技術的相關機器學習雲端服務供應商有亞馬遜(Amazon) AWS、SageMaker、微軟(Microsoft) Azure ML和Google Cloud ML,而這類機器學習雲端服務的成長都極為驚人。 邊緣執行ML流程簡化 直到最近,因為推出各種運算和儲存資源,機器學習的重心都集中在執行大量集中式電腦中心的雲端,其快速移轉至邊緣有以下幾個原因: .雲端處理、儲存空間與頻寬的成本無法將資料傳送到雲端,以執行人工智慧功能的決策。 .較完善的使用者體驗需要在邊緣進行快速的人工智慧功能決策。 .隱私權和安全性考量會限制在雲端中儲存的資料類型。 .提升可靠性。 以上這些因素讓邊緣無庸置疑成為機器學習處理許多應用的顯著位置。這也是半導體廠商推出運用專屬高效能機器學習加速器之應用處理器的原因之一,像恩智浦(NXP)的i.MX 8M Plus使用14nm FinFET製程技術,提供高效能與低功耗,並具備雙鏡頭ISP在內的各種新功能,可支援兩個低成本的HD相機感測器或一個4K相機感測器,以執行臉部、物件和手勢辨識的機器學習任務。其中也整合獨立800MHz Cortex-M7來支援即時任務與低功率、H.265和H.264的影片編碼和解碼、800MHz HiFi4 DSP,以及用於語音辨識的8PDM麥克風接口。工業物聯網功能包含Gigabit乙太網路與時效性網路(TSN)、兩個CAN-FD介面和ECC。 另一方面,資料科學家正為在邊緣上部署的資源限制裝置最佳化特定演算法,進而協助加速移轉到邊緣。MobileNet是由Google開發的影像分類演算法,著重在高準確度,同時又能大幅減少所需的運算資源數量。圖2中顯示處理過程中大幅減少的趨勢。從VGG-16模型到MobileNet v2模型的轉變讓在邊緣所需的運算數量減少50倍,協助在邊緣的資源限制硬體解決方案,執行複雜的機器學習處理。 圖2 針對邊緣最佳化的NN演算法 同樣地,使用行動電話在邊緣執行MobileNet v1比起在雲端中執行MobileNet v1的速度明顯更快,此差異的成因是將雲端網路延遲降到最低,而網路往返延遲的新增範圍可以輕易橫跨200毫秒到超過1.4秒(大幅延遲回應時間)。該演算法的目標是達低於100毫秒的回應,以即時向使用者顯示(圖3)。 圖3 在邊緣更快速的使用者體驗 以下是i.MX 8M Plus支援的應用程式,這些應用程式會在邊緣執行機器學習。如圖4所示,這些使用案例都需要特定層級的效能來判斷需要哪種層級的執行硬體。這就是應用處理器須具備專屬機器學習加速器的主因。 圖4 機器學習使用案例 因為上述原因,便可較易理解為何要在邊緣執行機器學習應用。然而,必須符合幾個額外需求才能順利完成部署: ・機器學習開發人員的生態系統─讓實作變得簡單。 ・硬體安全性─保證隱私權與安全性。 ・全新、創新的混合SoC架構─提供符合成本效益的解決方案。 ・可擴充和安全的邊緣部署─讓部署變得容易。 打造適用於機器學習部署的全面性生態系統 機器學習應用的重大突破需要結合設計與部署的生態系統來負責處理任務,這也是半導體業者打造創新邊緣智慧工具環境的原因,以恩智浦eIQ為例,該工具支援各種機器學習處理元件,包含Arm Cortex-A和Cortex-M處理器、圖形處理器(GPU)、DSP和機器學習加速器。eIQ機器學習軟體環境包含推論引擎和程式庫,兩者皆利用開放原始碼機器學習技術中的改善技術,像是TensorFlow Lite、OpenCV、CMSIS-NN和Arm NN;而針對較熱門的i.MX RT應用處理器,則透過適用於MCUXpresso和Yocto(Linux)的開發環境進行評估,為應用開發過程提供順暢的支援;在物件偵測和語音辨識中的範例應用程式中會隨附eIQ軟體,作為邊緣機器學習的起點(圖5)。 圖5 eIQ機器學習開發環境 確保邊緣安全性 邊緣的安全性至關重要,其所需的功能包含安全啟動信賴起點、晶片內建加密、安全布建、相互裝置驗證、安全裝置管理、OTA或無線安全更新與生命週期管理。為了支援這樣的安全性,半導體業者打造了可擴充的EdgeLock組合,其中包含安全元件、安全驗證器和應用處理器的嵌入式安全以及MCU。像是i.MX 8M Plus具備進階EdgeLock嵌入式安全系統(含資源網域控制器、信任區、HAB、加密啟動、使用RSA的公開金鑰加密與橢圓曲線演算法),其可為邊緣節點提供完整性、驗證確實性和隱私,並提供從邊緣到閘道和雲端的安全性。 AI/ML領域更迭不斷 加速人們生活便利性 人工智慧領域的變化步調正逐漸加快。如圖6來自「2018年人工智慧指數」和Monster.com所示的圖表呈現深度學習職缺方面的趨勢。 圖6 2015~2017年所需人工智慧技能的職缺成長 至於圖7則顯示在公司盈餘會議中提到人工智慧和機器學習的次數。 圖7 2007~2017年公司盈餘會議提到次數-IT公司 人工智慧與機器學習為電腦產業中帶來劇烈的改變,這樣的改變可使人們的生活更便利完善。新應用處理器如i.MX 8M...
0
- Advertisement -
- Advertisement -

最新文章

- Advertisement -

熱門文章

- Advertisement -

編輯推薦

- Advertisement -