- Advertisement -
首頁 標籤 CNN

CNN

- Advertisment -

AI推論執行有道 INT4運算全精度優化

因此,4位元啟動參數和4位元權重參數(4-bit Activations and 4-bit Weights, 4A4W)Hardware-friendly型量化解決方案可實現更優異的精度/資源權衡取捨。本文介紹在Zynq UltraScale+MPSoC和Zynq-7000SoC系列上針對CNN 4位元XDPU實現的低精度加速器,其透過高效映射卷積運算,充分發揮其DSP功能。這種解決方案可提供優於XDPU兩倍的性能。而在ADAS系統中執行2D檢測任務時,這種實現方案能夠在MPSoC ZCU102基板上實現230fps的推論速度,與8位元XDPU相比,性能提高了1.52倍。此外,在用於ADAS系統中的不同任務時,該解決方案可實現媲美全精度模型的結果。 網路結構剖析 企業日益重視使用AI的系統在資料中心、汽車、工業和醫療等領域中的產品化。這帶來了兩大挑戰,如AI推論需要完成的運算量規模增加,同時還要保持價格、功耗、延遲和尺寸大小不變;以及AI科學家繼續日復一日地在演算法和模型上開展創新,也需各種不同的硬體架構提供最佳性能。 針對持續創新的強烈需求則需要使用彈性的領域專用架構(DSA)。優化AI推論性能和降低功耗的主要趨勢之一,是使用較低精度和混合精度。為降低硬體設計複雜性,模型量化被當作應用於各類硬體平台的關鍵技術。大量工作被投入用於大幅降低CNN運算量和儲存成本。本文充分地證明,對於大多數電腦視覺任務,在不嚴重犧牲精度的情況下,權重參數和啟動參數可以用INT8表示。然而對於某些邊緣應用而言,硬體資源仍然不足。在針對邊緣應用使用較低的位元寬度(如1或2位元)時,一些常見的硬體設計解決方案使用簡化的乘法器。儘管這些解決方案延遲低、輸送量大,但它們與全精度模型相比,仍然存在較大的精度差距。因此,在模型精度和硬體性能之間尋求平衡變得至關重要。 本文運用幾種常見的網路結構,在ImageNet分類任務上透過使用幾種不同的量化演算法進行實驗。結果顯示精度隨著位元寬度減少而下降。尤其是在位元寬度低於4時,精度下降幅度顯著。此外,也使用Samuel Williams等人提出的Roofline模型,分析不同位元寬度下的硬體性能,如圖1所示。以賽靈思ZCU102評估板為例,隨著MAC的精度降低、硬體成本降低,性能獲得提升。此外,實驗結果還顯示,低位元量化可透過降低記憶體需求提高性能。這在ResNet-50神經網路的卷積運算強度上獲得證實,該網路分別用4和8位元精度進行了運算。因此,INT4在模型精度和硬體性能之間實現了較佳的平衡。 圖1 ZCU102上以不同位元寬度運行Roofline模型 如何量化全流程Hardware-friendly型CNN 為實現整個量化過程的Hardware-friendly化,INT4量化法可分為三個部分:量化機制、Hardware-friendly型量化設計、量化感知訓練。 ・量化機制 本文使用經訓練的量化臨界值(TQT)將DNN從單精確度浮點(FP32)轉換為INT4。對於權重和啟動參數,量化函數可正式寫成:   其中n=-2b-1,p=2b-1-1,為有符號資料;n=0,p=2b-1及為無符號資料。   公式1表示輸入值(x)的量化值取決於臨界值(t)、位元寬度(b)和量化比例係數(s)。臨界值t一般初始化為待量化張量的絕對值之最大值。隨後在訓練過程中用log2t的形式進行優化。量化係數是2的冪,具有Hardware-friendly特性。若將上下截斷運算去除部分離群資料,加大權重參數和啟動參數的分布緊密度,更有利於量化。 如上文所述,log2t是一種在訓練過程中可學習的參數,優化它就能確定合適的量化範圍;與之相反,log2t的梯度可透過鏈式法則確定。此外,輸入值的梯度也可透過下方公式運算:   對於(四捨五入)和(正無窮取整數),不可微函數STE被用於確定梯度,定義如下方公式所示。     TQT證明對數表達能確保臨界值和輸入值的標度不變性。採用對數方式訓練臨界值更容易管理,並且已證明是較高效的。 ・Hardware-friendly型量化設計 要進行量化訓練,必須從全精度網路中構建低位元網路。以流程化Hardware-friendly型量化為基礎,下文介紹部分常用的網路結構,並針對幾種粗細微性模組的量化解決方案總結。對於這些量化模組,INT4量化方法可用於多種類型的網路結構;部分常用模組的量化解決方案如圖2所示。圖2中的虛線表示能根據實際網路結構增添或者刪除。 圖2 模組量化 首個模組為CBR(Conv+BN+ReLU),其作為CNN中的通用結構,BN層被合併以減少訓練和推論過程中的觸發器數。然而,BN層存在不一致性;大量運算在訓練過程中使用當前批次的平均值和平方差,但在推論過程中移動平均值和平方差。如果量化的是從當前批次的平均值和平方差獲得的合併參數,在推論時就會導致偏差。為消除這種不匹配,應使用下列最佳實踐來量化這種結構。在將BN折疊到ConV後,就對折疊到INT4的參數進行量化。該模組的量化如圖2(b)所示。 再來為BRC(BN+ReLU+Conv)模組,如圖2(c)所示,在緊隨卷積層的BN層被合併後,仍然存在獨立的BN層。然而,在現有的INT4量化方法中,BN層原則上不受重視。為有效部署這個獨立的BN層,有種量化神經網路的簡化方法被用於在訓練過程中保持全精度,並在推論過程中吸收浮點標度和臨界值偏差。這種方法可延伸用於所有線性運算(包括推論中的卷積),同時有助於保持精度。該模組的量化詳見圖2(d)。 而於加法模組中,其占用硬體資源較少。因此該層一般量化為8位元。此外,為了量化所有輸入和輸出,將使用標度共用規則。共用規則的作用是讓硬體繞過標度運算,消除了浮點乘法的需要。如圖2(b)所示,「ShareQuantize」指這些量化層共用相同標度。 至於其他則為確保卷積運算輸入是4位元,加法運算的8位元輸出需要再次被量化為4位元,如圖2中的「再量化」所示。針對第一層和最後一層,仍然進行INT4量化,整個網路的輸出被量化成8位元,且內積層與卷積層保持一致。 ・量化感知訓練 量化感知訓練通常被作為關鍵技術,用來降低低位元模型與全精度模型之間的精度差。在本文描述的INT4量化方法中,它仍具備不可或缺的作用。量化感知訓練過程都使用以下所示的逐層量化感知訓練演算法。 於輸入方面,其為全精度輸入、權重和偏差:X、W、Bias;針對輸入和權重的可學習對數域臨界值:ax、aw、abias;位元寬度:針對輸入和權重,b=4;針對偏差,b=8。而輸出:Y,初始化ax=log2max(|x|),aw=log2max(|w|),abias=log2max(|bias|),同時根據公式1運算q(x)、q(w)和q(bias)。而Y=Forward(q(x),q(w),q(bias));運算分類損耗為:Loss,針對所有可學習參數使用正則化方法。可參閱以下公式,並使用Adam更新全精度參數。 於DSP晶片最佳化INT4f 使用DSP硬體資源可實現乘法和加法密集型(Multiply-accumulate, MAC)占用硬體資源較少。經優化後,DSP能夠在16或28nm元件上處理較多的MAC運算。以16nm為例,賽靈思可程式設計元件中UltraScale架構的DSP48E2晶片就屬於專用晶片,其由一個27×18二進位補數乘法器和一個48位累加器構成。如圖3所示,MAC能使用DSP晶片完成。 圖3 MAC模式下的晶片 INT4優化 在低精度MAC運算中,相乘方式是a×b。其中a是4位元無符號啟動參數資料;b則是4位元有符號權重參數資料。該晶片可被配置成4通道乘法運算,如圖4所示。 圖4 4通道封裝晶片的配置模式 該晶片的埠A是27位元寬度、埠B是18位元寬度。iNT4×uiNT4相乘產生的結果至少有8位元寬度。 充分利用DSP資源的前提是在多個相乘被打包在一起時,可確保輸出結果保持正確。為確保這一點,通道之間添加了保護位元。當四個MAC通道被打包在一起時,需要在兩路輸入間布置足夠的保護位元。根據晶片設計,保護位元被設置為3位元:   第一個通道A1×W1被布置在對應埠的4LSB上,下一個通道A2×W1需要移位元至少8位元才能正確運算;第二個通道與第一個通道共用權重參數資料W1。埠B中的A2移位11位。3位元保護位元用於最大化DSP資源的利用;最後一個運算元W2被分配給埠A。最後兩個通道是A1×W2和A2×W2。權重參數是有符號資料。在相乘開始前,使用27位預加法器打包兩個權重參數資料。因為W1需要符號擴展,所以W2不能布置在D埠的四個MSB上。如果W2在MSB中,當W1<0且W2=-8時,預加法器就會溢出。後48位加法器可作為累加器,透過級聯對之前層次的DSP結果進行相加。單個晶片就能在單時序週期內實現四通道MAC。 結果的位元寬度在累加後增大。Hardware-friendly型量化器是一組移位暫存器,它可以透過指令控制移位元的位元數。移位元運算為Hardware-friendly型。在低精度CNN中,卷積能夠使用兩種量化方法之一。一種是逐運算位元輸出8位元;另一種是針對下一卷積輸出4位元。透過優化演算法,兩種量化方法都能量化成2k的步伐長度。差別在於輸出資料的位元寬度以及它們是否是有符號資料。 DSP強化使用 DSP雙數據速率(DDR)技術被用於改進晶片實現的性能。因此需要為DPU提供兩個輸入時序:一個用於通用邏輯,另一個用於DSP晶片。未採用DSPDDR技術的DPU和採用強化使用模式的DPU之間的差異如圖5所示。 圖5 未採用DDR的DSP和DSP強化使用之間的差異 運算圖因應CNN要求 卷積是CNN網路的主要運算要求。卷積的實際運算任務如下: 其中Anf是浮點特徵圖,Wnf是浮點權重。其本質上是MAC運算。根據新量化感知訓練解決方案,浮點的卷積運算按如下方式進行量化:   其中axf、awf和abf是標度。這些浮點參數被轉換成2k×2k。這是一種Hardware-friendly型標度,能夠在FPGA中使用移位運算實現。 DSP模組在一個時序週期中需要兩個權重和兩個特徵,其中彼此都能共用,如圖6所示。 圖6 卷積運算任務和乘法器共用方式 其中Anf是浮點特徵圖,Wnf是浮點權重。其為MAC運算。根據新量化感知訓練解決方案,浮點的卷積運算如以下方式進行量化: 模型量化與性能模擬 下面的篇幅講解量化感知訓練中使用的CV任務。這些任務包括影像分類、姿態估計、2D檢測、3D檢測、語義分割和多工處理。 基準分類模型 在完成ImageNet分類資料叢集上的實驗後,得到以下結果。網路包括ResNet50-V1、ResNet50-V2。在所有實驗中,資料叢集均從浮點模型進行微調。所有偏差參數都量化到8位元,實驗結果如表1所列。 而基準分類模型的結果參見表1。它體現了這種方法的有效性,對ResNet50V1而言,4位元與8位元XDPU解決方案在前1精度上的差距僅有1.4%,在前5精度上的差距則僅有0.9%。 表1 不同位元寬度下類ResNet50的網路精度 即時ADAS模型解析 為進一步驗證量化方法的通用性,也在真實場景下開展了其他CV任務。 ・姿態估計 姿態估計任務使用更加複雜的堆疊Hourglass網路。透過在MPII資料叢集上開展姿態估計實驗,評估逐層模式下兩個網路結構的精度。結果參見表2。 在表2中,hg-s2-b1意謂著堆疊數量是2,模組數量是1;hg-s8-b1意謂著堆疊數量是8,模組數量是1,因此證明INT4量化解決方案實現了可相比浮點模型的精度。 表2 不同位元寬度下的Hourglass網路精度 ・2D檢測 在ADAS系統中,BDD100K數據叢集用於2D檢測。此外,特徵金字塔網路(FPN)結構被添加到ResNet18-SSD中作為檢測網路,而實驗結果如表3所示。 表3所示的是在經過微調後,8位元量化模型實現了高於浮點模型的mAP。透過逐漸從8位元微調到4位元,最終4位元量化模型的mAP損耗小於2%。 表3 不同位元寬度下的檢測精度 ・3D檢測 ADAS系統的3D檢測任務使用KITTI資料叢集,而PointPillars用於開展3D預測任務,實驗結果如表4所示。 如表4所示,採用微調技巧後,4位元量化模型的精度僅比浮點模型低0.16%。 表4 不同位元寬度下的3D檢測結果 ・語義分割 在ADAS系統的語義分割任務中,CityScape的資料叢集以理解城市視覺場景為重點。實驗在以ResNet18為基礎的特徵金字塔網路上開展。結果如表5所示。 表5顯示,8位元模型可實現比浮點模型更高的mIoU,4位元模型的mIoU僅比浮點模型低1.7%。語義分割的示意圖參見圖7。 表5 不同位元寬度下的語義分割精度 圖7 語義分割示意圖 ・多工學習 為增強模型的歸納功能和精度,在多工模型中使用了多個訓練資料集,包括用於檢測的Waymo和BDD100k,以及用於分割的BDD100k和Cityscapes。這些研究在以ResNet18為基礎的特徵金字塔網路(FPN)上開展。結果如表6所示。 表6顯示,8位元量化模型可實現優於浮點模型的mAP和與浮點模型保持同等水準的mIoU。透過逐步微調,與浮點模型相比,最終的4位元量化模型的mAP降低1.66%,mIoU提高1.79%,仍然劣於8位元模型的表現。 表6 不同位元寬度下的多工精度   競爭分析:8位元/4位元對比 4位元XDPU在下列三種評估板上以300MHz頻率運行:Ultra96、Zynq UltraScale+ MPSoC ZCU104和ZCU102。表7所示為4和8位元XDPU的比較情況。在不同的FPGA上,4位元XDPU實現的性能提升1.5倍到2.0倍之間。例如,ZCU102板使用的硬體資源沒有增加,但性能提高2倍。 表7 4和8位元XDPU的性能比較 對於兩個精度不同的加速器,在啟用池化、逐運算單元逐深度卷積和平均池化等全部功能後,針對資源進行比較。如表8中所示,在相同的性能架構下,DSP和RAM的占用顯著下降。有鑑於資源耗用下降,4位元XDPU架構被擴展到B8192的最大規模。使用B8192架構能以單元件實現更高性能。 表8 4和8位元XDPU的資源消耗比較   若以表3中13.6FLOP的2D檢測模型為例,兩個高精度模型4/4和8/8分別使用4和8位元XDPU進行測試。該網路的運算要求是13.6GOP。2D檢測網路的訊框率如表9所示,測試不包含預處理和後處理。有鑑於效率和網路類型的差異,性能和訊框率之間不存在線性關係。如表9所示,4位元XDPU的訊框率在所有平台上均優於8位元XDPU。 表9 4和8位元DPU之間的訊框率比較 本文介紹了一種運行在Zynq UltraScale+ MPSoC和Zynq-7000 SoC系列元件上的完整流程、Hardware-friendly型量化解決方案,可作為CNN的低精度加速器。此外,本文也介紹如何在DSP晶片上優化INT4,進而在一個時序週期內完成4通道INT4相乘。卷積運算要求可透過打包DSP予以滿足。與INT8 XDPU解決方案相比,使用DSP實現的INT4優化在真實硬體上可將處理峰值GOPS提升最高2倍,並將性能提升至最高1.77倍。 (本文作者皆任職於賽靈思Xilinx)
0

萊迪思新AI解決方案提升網路終端應用效能

萊迪思半導體(Lattice)為低功耗、可程式化設計元件的供應商,日前宣布推出Lattice sensAI 3.0,為用於網路終端設備AI處理的完整解決方案集合的最新版本。該版本現支援CrossLink-NX系列FPGA,可打造低功耗智慧視覺應用,更擁有客製化卷積神經網路(CNN)IP,此靈活的加速器IP可簡化一般CNN網路的實現,經優化後可更加充分利用FPGA的並行處理能力。經由增添對CrossLink-NX FPGA的支援,Lattice sensAI將為監控/安全、機器人、汽車和運算領域的智慧視覺應用帶來功耗和效能上的再次突破。 為了解決數據安全、延遲和隱私等問題,開發人員希望將智慧視覺和其他AI應用所仰賴的AI處理任務從雲端轉移到網路終端。大多數網路終端設備都靠電池供電,或對功耗較敏感,因此開發人員需要各種硬體和軟體解決方案,不僅要能夠提供AI應用所需的處理能力,還要盡量降低功耗。通過增強版sensAI集合,萊迪思將持續為客戶提供更多功耗和效能的優化方案選擇。對於智慧視覺等AI效能要求較高的網路終端應用而言,運行sensAI軟體的CrossLink-NX FPGA相較之前版本提供翻倍效能,同時降低一半的功耗。
0

關鍵應用含金量高 手機/汽車AI吸引大廠競折腰

AI新興應用持續推進 自2018年起,在演算法層面,AI已經相對成熟,賽靈思(Xilinx)人工智慧業務高級總監姚頌(圖1)提到,目前應用層面還在不斷進展的是神經結構搜索(Neural Architecture Search, NAS)相關的領域,希望透過電腦自動找到最佳演算法結構、減輕演算法工程師的負擔。MIT的韓松教授推出One-For-All神經網路,可以訓練一個複雜的網路,針對不同場景的需求(高精準度、低延遲等),自動選擇部分子網路來滿足要求。2020年,對於邊緣運算解決方案需求最大的還是手機與汽車,二者共同的特點都是無論網路與通訊狀況如何,都需要AI做出迅速的反應。 圖1 賽靈思人工智慧業務資深總監姚頌 姚頌進一步指出,手機、平板電腦已經從通訊工具,升級為娛樂工具,再升級為邊緣的核心設備。除iPhone全系列產品已經搭配了用於FaceID的結構光相機,需要即時、私密的AI識別之外,最新推出的iPad Pro,還新增了dToF的微型雷射雷達,可以進行高精度測距、實現良好的AR效果,而AR也是AI的一個重要應用場景。另外,2020年在自動/輔助駕駛、智慧車艙已全面採用AI,特別是隨著電動車的推廣,汽車被視為下一個智慧終端裝置。 過去影像辨識與語音辨識通常是各自發展的應用,主要原因是影像採用卷積神經網路(Convolutional Neural Network, CNN),語音使用遞歸神經網路(Recurrent Neural Networks, RNN),然而近期Google公開演示了使用CNN網路進行語音辨識,也開啟了影像與語音辨識複用的可能,NVIDIA技術行銷經理蘇家興(圖2)認為,目前已有應用同時導入兩種辨識技術,讓人機溝通更自然,雖然目前還不是使用同一套網路,但或許不久的將來就會相互整合。 圖2 NVIDIA技術行銷經理蘇家興 手機/汽車AI競爭如神仙打架 手機與汽車是兼具雲端與終端的裝置,一方面需要強大的運算效能,一方面對耗電非常在意,這類產品也被看好具有高度潛力,於是大廠的邊緣應用都投注心力在這兩類產品。姚頌表示,AI晶片除了性能需求足夠出色,更重要的是需要有簡單易用的開發環境、豐富的生態以及滿足使用場景的產品功能。賽靈思2019年推出了全新的軟體發展環境Vitis與Vitis AI,就是旨在協助不同開發者輕鬆地開發AI應用。而針對AI產業的Vitis AI以及Vitis AI Library,可以允許演算法工程師直接在提供的大量案例上二次開發,也可以透過簡單的命令與腳本編寫完成AI演算法的編譯與執行。 在晶片層面,賽靈思推出了新的車規級運算平台XAZU7與XAZU11,可以廣泛用於L2到L3的輔助駕駛與自動駕駛場景,也可以用於智慧車艙的各類應用。到目前為止,Vitis AI已經發布了最新的1.1版本。而賽靈思的自動/輔助駕駛方案也得到戴姆勒、百度等汽車產業認可。 另外,NVIDIA在GTC也公布新一代自駕車平台Orin,將整合具新一代TensorCore之Ampere架構GPU,針對L2的標準可在45W耗電水準下,提供200TOPS性能的版本;針對先進輔助駕駛的Orin ADAS SoC,可在5W功耗提供10TOPS的性能,能夠滿足當前先進輔助駕駛的需求。標準的Orin採用12核Arm Herculus CPU搭配Ampere GPU,記憶體頻寬達200GB/s,與支援四路10Gbps乙太網路,具備170億個電晶體。在L5自動駕駛平台部分,NVIDIA藉由雙Orin搭配兩組Ampere架構GPU組成,功耗800W,但算力可達2,000TOPS。 而在CES 2020,高通發表Snapdragon Ride平台,正式進軍自駕車領域。該平台共有三種不同的配置,其中,單處理器版已經足夠應付ADAS系統;雙ADAS處理器版本,算力則更進一步強化,同時也為系統準備了安全備援,可以支援L2和L3半自動駕駛。第三種配置則在上面的基礎上多了加速晶片,三晶片版本的配置包括兩塊ADAS處理器外加自動駕駛加速器,算力可達400TOPS。 關鍵應用投入大量資源/時間 除了汽車與手機之外,蘇家興表示,智慧醫療、5G等應用也需要高運算力,而由於AI模型發展越來越複雜,在業界希望賦予AI更多能力的前提下,導致資料庫越加龐大,所以在訓練過程中希望可以優化網路,以提升整體系統的效率。 AI晶片在重要裝置如手機、汽車等平台的發展目前由大廠主導,除了含金量高之外,這類平台的應用需要整合許多相關資源,與雲端的網路訓練關係也很密切,如自駕車就需要非常龐大的網路資料庫輔助,目前相關廠商已累積不下數百萬英哩的測試里程,但實際上離自駕車可以安全上路還有很長一段距離;另外,智慧醫療除了資料數量之外,更要求資料品質,而且醫療行為攸關人命,發展過程會更加謹慎。相信未來幾年,人工智慧還會發生更多有趣的事,開創更多可能性,值得市場持續關注。
0

AIoT應用含苞待放 邊緣推論晶片迎來戰國時代

相較於AI雲端訓練領域的蓬勃發展,邊緣推論則像是一片含苞待放的花園,各式各樣爭奇鬥艷的花朵準備盛開,智慧物聯網AIoT應用破碎化,很少有一個應用可以像過去主流應用一樣每年創造數億或10幾億出貨量的產業規模,每個應用的需求又各自不同;不過,業界估算整體AIoT產業的規模至少數十億甚至上百億,邊緣推論晶片未來幾年產業發展潛力十足。 目前人們生活中的絕大部分應用都需要機器學習(Machine Learning, ML)及邊緣運算解決方案,如語音辨識、人臉識別、符號偵測與定位、車牌辨識等。大多數應用場景需要即時的用戶互動與反應,強調能在地處理解決問題,而毋需將數據傳遞到雲端並進行運算,透過邊緣運算可以降低雲端運算的負擔,也可以解決延遲性、安全性和可靠性的問題。 AI聲音/影像應用推陳出新 由於AI演算法與處理器能力持續提升,超高影像解析度(Super Resolution)、準確的物件偵測(Object Detection)、影像分類功能(Images Classification)、快速的語音翻譯功能(Speech Translation)在過去一年獲得大幅進展。Arm首席應用工程師沈綸銘(圖1)提到,AI為使用者帶來更好的使用體驗。例如超高影像解析度能讓使用者掌握影像細節,大幅提升觀賞影片的體驗;Avatars效果能讓使用者在自拍時使用有趣的即時動畫效果;相機的智慧夜拍模式,則讓光源控制更輕鬆,在低光源下拍攝也能媲美日拍一般清晰;此外運用生物辨識技術的臉部辨識與解鎖功能,能讓消費者使用手機付款時更安全更便利。 圖1 Arm首席應用工程師沈綸銘 沈綸銘進一步提到,除了超高影像畫質能提升觀影體驗,AI也能強化整體的聲光環境,例如偵測影視內容所需,調整或放大聲量,或者對應室內光線環境,調校顏色對比與鮮明度;還能為家中有小朋友的家長把關,當偵測到電視前方有小朋友,電視會自動停止播放不適合的影視內容,以上這些功能或多或少都有AI的協助。 觀察AI專用晶片進程,沈綸銘認為,未來產品將朝向分眾市場發展,根據各式需求,像是算力、功耗、軟體大小、軟體開發框架等而有不同的發展趨勢。以嵌入式系統為例,市場上需要在少量功耗增加下提供有效率的運算處理。相對的,以自駕車系統為例,市場上則需要可延展的AI運算加速器,以及通用性的軟體開發。 邊緣推論講算力拼省電 卷積神經網路(Convolutional Neural Network, CNN)是這波人工智慧技術發展的起點之一,也是目前發展成熟度最高的技術,其對影像辨識效果最佳,應用也非常廣泛;過去幾年在指紋辨識領域取得領先地位的神盾(Egis Technology),也將原先的核心技術與AI結合,神盾新技術研發處副總經理林郁軒(圖2)表示,以智慧型手機指紋辨識功能為例,透過邊緣AI的協助,在辨識時毋須喚醒應用處理器也無須聯網,對整個系統的耗電與反應速度大有幫助。 圖2 神盾新技術研發處副總經理林郁軒 神盾從指紋辨識起家,為了優化指紋辨識的效能而導入AI,再從指紋的影像辨識往人臉、行為、動作等各式影像辨識技術發展,林郁軒解釋,邊緣運算尤其是行動終端或AIoT類的產品,除了算力還會比較每瓦的TOPS,導入AI也不能犧牲電源效率,這應該也是未來邊緣推論晶片競爭的重點。以神盾現在的解決方案來看,每瓦約可提供1~2TOPS算力,預計年底將提升到3TOPS,2021年則將推出20TOPS的解決方案。 未來幾年,對於ASIC廠商而言,與客戶深入溝通,將需求明確定義,是非常重要的關鍵,林郁軒認為,這樣才可以透過專用演算法與電路的設計,提高晶片的每瓦TOPS。而在推論的精度上,一般而言精度越低效率越好,所以也有滿多設計會導入可調式精度架構,讓精度與效率可以依應用調整。 AI系統效能為更可靠指標 針對AI算力已經成為效能指標的代名詞,在台灣可以被稱得上是人工智慧「獨角獸」的耐能智慧(Kneron),該公司董事長劉峻誠(圖3)指出,算力就跟CPU的處理速度一樣,只是AI晶片的運算能力,並不能代表整個系統效能,一味追求TOPS或是每瓦TOPS的數字表現,容易陷入迷思。耐能於2019年推出KL520晶片,具備「可重組式人工智慧神經網路技術」,會根據不同任務進行重組,減少運算複雜度,保證在不同的卷積神經網路模型上的使用,無論是模型內核(Kernel)大小的變化、模型規模的變化,還是影像輸入大小的變化,都能保持高效率使用運算(MAC)單元。 圖3 耐能智慧董事長劉峻誠 劉峻誠並提出「Edge AI Net」的概念,透過AI晶片,能夠將生命賦予終端設備,實現去中心化、離線本地處理、主動智慧等目標。一般而言,目前的AI網路如CNN、遞歸神經網路(Recurrent Neural Network, RNN)或長短期記憶(Long Short-term Memory, LSTM)網路,都是由卷積、剪枝(Pruning)與矩陣乘法器組成,耐能的晶片可以因應不同應用需求進行網路重組,所以一款晶片可支援多個不同網路架構,並組成Edge AI Net,讓算力共享,而能達成1TOPS算力,創造3TOPS效率的效果。 2020年下半年耐能計畫推出新款的AI晶片KL720,具備可堆疊式設計,可因應網路效能需求大幅提高算力,也不放棄個別晶片的每瓦TOPS,同時進一步將Edge AI Net概念具體實現,以「Kneo」的名稱推廣其智慧物聯網AIoT概念。從2019年發表KL520開始,已經有數百萬顆晶片的出貨量,未來這些產品都將是一個網路節點,有機會成為AI時代最具影響力的架構。 邊緣推論晶片大發生 在PC與行動通訊時代,最後都只剩少數晶片大廠主導市場,如英特爾(Intel)、AMD與高通(Qualcomm)、聯發科(MTK)。AI目前是百花齊放的時期,會不會延續之前的發展模式還很難研判,但競爭的激烈程度可以想見;恩智浦(NXP)AI晶片專注於邊緣運算晶片和終端產品晶片。恩智浦半導體大中華區業務行銷資深經理黃健洲表示,於邊緣運算和閘道,提供如i.MX處理器和Layerscape處理器並加強NN/ML加速器運作為目標,提供更快的反應時間,而毋需連接到網際網路執行機器學習推論並提高隱私和安全。 除了開發人工智慧晶片外,恩智浦還打算為使用者提供完整的生態系統,建立開發環境,推出邊緣智慧(eIQ)SDK工具,用於收集資料庫和開發工具,建構MCU/MPU的機器學習應用程式,如i.MXRT10xx與i.MX8M Plus應用處理器。 而在行動通訊時代取得重大成功的Arm,同樣積極發展AI解決方案,沈綸銘說,Arm...
0

AI異構運算工作負載有解 HBM/運算加速相得益彰

近年來,異構運算(Heterogeneous Computing)逐漸興起,進而拓展了後摩爾定律時代在加速運算密集型工作負載方面的創新。當前資料中心產業中,普遍採用異構運算進行加速的工作負載種類繁多,包括人工智慧、即時視訊轉碼和基因組分析,而這些僅僅是其中的一部分。FPGA元件則為現代資料中心工作負載提供了靈活應變能力和運算加速能力。 然而,在很長的一段時間內,DDR記憶體架構的演進並不足以跟上運算加速領域的創新步伐。在過去十年中,雖然平行記憶體介面的頻寬性能得到改善,但進展依然緩慢;現在的FPGA支援的最大DDR4資料速率仍然只有2008年DDR3的兩倍左右。相比之下,自2008年以來,FPGA的運算能力卻提高了近八倍,而且隨著配備AI運算單元的元件推出,預計未來兩年內還會有更大的成長空間(圖1)。因此,在資料中心領域,記憶體頻寬與容量將成為眾多運算和記憶體頻寬密集型工作負載發展的主要限制因素。 圖1 FPGA運算性能成長與DDR頻寬提升比較   HBM2提升AI運算效能 HBM(High Bandwidth Memory)是一種高速的系統級封裝(SiP)記憶體技術,它使用垂直互聯的DRAM晶片堆疊和一個寬(1024位元)介面,與採用傳統打線接合封裝的記憶體產品相比,可實現更大的儲存容量和更高的資料頻寬。聯合電子裝置工程委員會(Joint Electron Device Engineering Council, JEDEC)在2013年開始啟用初代HBM標準,2016年1月,第二代HBM2版本成為業界標準(圖2)。 圖2 HBM和2.5D結構 HBM2標準支援4個或8個8Gb DRAM裸晶逐個堆疊在一起,由一個2.5D矽中介層(Interposer)提供支援,該中介層可將記憶體堆疊與底層電路板連接起來。堆疊一些裸晶(通常是記憶體)而不是其他裸晶(通常是處理器)的多晶片封裝被稱為2.5D元件。 可以將多個堆疊整合在同一個封裝中。與傳統的多晶片DRAM產品相比,透過在一個電路板上堆疊多個裸晶並將其堆疊得更緊密,可以大大減少HBM記憶體封裝的占板面積。由於縮短了訊號在設備之間的傳輸距離,HBM技術還可以提高系統性能。此外,較短的傳輸距離可以減少傳輸定量資料所需的能量(圖3)。 圖3 HBM裸晶堆疊技術 HBM具備先進的矽穿孔(Through Silicon Via, TSV)技術、微尺度互聯和突破極限的I/O數量,可以增加記憶體頻寬,與競爭對手相比,在用於繪圖卡的圖形雙數據速率(GDDR)記憶體方面,HBM無疑能提供更高性能。在元件級別,單個三星HBM堆疊可以提供高達307GB/s的資料頻寬,實現比GDDR5晶片快近10倍的資料傳輸速度。而在系統級別,與使用於GDDR的解決方案相比,HBM則能提供近3倍的輸送量,並且能將功耗降低80%,同時還可以節省寶貴的電路空間(圖4)。 圖4 HBM與GDDR頻寬比較 支援HBM的Virtex UltraScale+ FPGA提高了記憶體頻寬,例如,兩個三星HBM2記憶體堆疊可提供高達460GB/s的速度。將一個或兩個HBM2堆疊與各種尺寸的FPGA邏輯和DSP進行配對,為使用者應用選擇較佳的運算能力與記憶體頻寬/容量組合。如賽靈思(Xilinx) Alveo U280網路加速卡基於16nm UltraScale+架構,採用8GB三星HBM2,可為資料庫搜索與分析、機器學習推論及其他記憶體限制應用提供較高等級的加速功能。本文以深度神經網路與資料庫加速方面的研究為例,展示了支援HBM的元件優勢。 加速語言翻譯準確性 各種雲端應用正在提供自動即時語言翻譯服務,這種服務可以使用基於神經網路的機器學習方法在兩種語言之間翻譯語句。編碼器-解碼器架構推動了當今的商業自動化翻譯服務。在使用機器執行翻譯任務時,兩種語言的單詞經由一個稱為單詞嵌入的過程,以高維向量的形式呈現;因此,單詞之間的關係可以通過向量進行量化建模和反映。遞迴神經網路(Recurrent Neural Networks, RNN)、卷積神經網路(Convolution Neural Network, CNN)和基於注意力的模型等結構通常用於執行編碼和解碼功能。 近期研究表明,在語言翻譯中,只有採用基於注意力的網路才能達到業界一流的準確性。研究論文中所描述的注意力機制,即縮放點積注意力,是由兩個矩陣乘法和其他函數(Scale、Mask和Softmax)構成的。多頭注意力結構通常由多個並行的縮放點積注意力與不同的輸入投影構成。該結構與前饋網路共同用於構建整個語言翻譯模型的解碼器和編碼器(圖5)。 圖5 基於注意力的神經網路語言翻譯模型 如圖5所示,基於注意力的語言翻譯模型的主要運算強度來自於對縮放點積注意力和前饋網路的點積計算。這些點積通常被組合到矩陣乘法計算,以實現更高效的運算。然而,與傳統在整個空間中大量重複使用權重參數以減少資料移動痕跡的卷積神經網路不同,這種基於注意力的模型幾乎不重複使用輸入空間參數,導致對矩陣乘法計算的記憶體頻寬要求要高得多。 透過建立一個轉換器分析模型,其是用於語言翻譯的注意力神經網路,並且已經完成了構建與映射以便在UltraScale+元件上實現。FPGA實現方案的架構採用DSP脈動陣列來執行矩陣乘法。中間的啟動資料儲存在晶片的URAM中,可以消除啟動造成處理器和晶片外記憶體之間的資料移動。HBM或DDR用於儲存所有嵌入字典的單詞嵌入與權重參數。 針對具有不同句子長度(L)和句子數量的英德翻譯任務,也稱為批次處理大小(B),對其進行分析就可以瞭解附加DDR的元件和支援HBM的元件的時間延遲(Time...
0

AI應用水漲船高 FPGA邊緣運算完美達陣

然而AI應用種類各異,各有千秋。不同的應用領域要求的AI技術也不盡相同。目前最受關注的應用類別當屬嵌入式視覺。這一領域的AI使用所謂的卷積神經網路(CNN),試圖類比人眼的運作方式。在本文中,將探討電腦視覺(Computer Vision)應用與其他許多相關概念。 網路終端AI的要求 AI涉及創造一個工作流程的訓練模型,然後該模型在某個應用中對現實世界的情況進行推理。因此,AI應用有兩個主要的階段:訓練和推理。 訓練是在開發過程中完成的,通常在雲端進行。推理作為一項持續進行的活動,則是透過部署的設備完成。因為推理涉及的運算問題相對複雜,目前大部分都是在雲端進行,但是做決策的時間通常都十分有限。向雲端傳輸資料然後等待雲端做出決策非常耗時,等到做出決策,可能為時已晚,而在終端做決策則能節省寶貴的幾秒鐘時間。 這種即時控制的需求適用於需要快速做出決策的諸多領域。例如人員偵測相關應用,包括:智慧家庭電器、智慧音訊/影視消費性電子產品、智慧門鈴、自動販賣機、安全攝影機、智慧門等。其他即時線上的應用包括:智慧音箱、零售店攝影機、無人機、收費站攝影機、機器視覺、汽車後裝市場攝影機等。 在快速決策需求的推動下,目前將推理過程從雲端轉移到「網路終端」的訴求非常強烈,即在設備上收集資料然後根據AI決策採取行動。這將解決雲端不可避免的延遲問題。在地化推理還有兩個好處:第一個就是隱私安全。資料從雲端來回傳輸以及儲存在雲端,容易被入侵和盜取。但如果資料從未到達設備以外的地方,出現問題的機率就小得多。 另一個好處與網路頻寬有關。將視訊傳送到雲端進行即時處理會占用大量的頻寬。而在地做決策則能省下這部分頻寬,並將其用於其他要求較高的任務。此外,這類設備通常都是使用電池供電,如果是電源直接供電,兩者都有散熱限制,而對設備的持續使用造成限制。而與雲端通訊的設備則需要管理自身功耗的散熱問題。AI模型演化速度極快。在訓練始末,模型的大小會有極大差異,並且在進入開發階段以前,可能無法有效估算所需運算平台的大小。此外,訓練過程發生的細微改變都會對整個模型造成重大影響,增加了變數,這些也使得網路終端設備硬體大小的估計變得極為困難。 在為特定設備優化模型的過程中,始終伴隨著權衡。這意味著模型在不同的設備中可能以不同的方式運行。最後,網路終端中的設備通常非常小,也限制了AI推理設備的大小。 由此總結出以下關於網路終端推理的幾點重點要求: 用於網路終端AI推理的引擎必須: .功耗低 .靈活 .可擴展 .尺寸小 已有廠商開發出完全具備以上四個特徵的推理引擎。包含硬體平台、軟體IP、神經網路編譯器、開發模組和開發資源,能夠迅速開發理想中的設計。 推理引擎的選擇 將推理引擎構建到網路終端設備中涉及兩個方面:開發承載模型運行的硬體平台以及開發模型本身。理論上來說,模型可以在許多不同的架構上運行。但若要在網路終端,尤其是在即時線上的應用中運行模型,選擇就變少了,因為要考慮到之前提到的功耗、靈活性和擴充性等要求。 設計AI模型的最常見做法就是使用處理器,可能是GPU或者DSP,也有可能是微控制器。但是網路終端設備上的處理器可能就連實現簡單的模型也無法處理。這樣的設備可能只有低階的微控制器(MCU)。而使用較大的處理器可能會違反設備的功耗和成本要求,因此對於此類設備而言,AI似乎難以實現。 這正是低功耗FPGA發揮作用的地方。與強化處理器來處理演算法的方式不同,低功耗FPGA可以作為MCU的副處理器(圖1),處理MCU無法解決的複雜任務之餘,將功耗保持在要求範圍內。由於低功耗FPGA能夠進行DSP運算,並能提供低階MCU不具備的運算能力。 圖1 FPGA作為MCU的副處理器 ASICs和特定應用標準產品(ASSP)對於更為成熟、大批量銷售的AI模型而言,採用ASIC或ASSP或許是可行之道。但是由於工作負載較大,這些元件在即時線上應用中的功耗太大。在此情況下,低功耗FPGA可以充當副處理器(圖2),處理包括喚醒關鍵字的喚醒程序或粗略識別某些影片圖像(如識別與人形相似的物體),然後才喚醒ASIC或ASSP,識別更多語音或者確定影像中的目標確實是一個人(或甚至可以識別特定的人)。FPGA處理即時線上的部分,這部分的功耗至關重要。然而並非所有的FPGA都能勝任這一角色,因為絕大多數FPGA功耗仍然太高。 圖2 FPGA作為ASIC/ASSP的副處理器 低功耗FPGA可以作為單獨運行的、完整的AI引擎(圖3),FPGA中的DSP在這裡起了關鍵作用。即便網路終端設備沒有其他的運算資源,也可以在不超出功耗、成本或電路板尺寸預算的情況下添加AI功能。此外它們還擁有支援快速演進演算法所需的靈活性和可擴充性。 圖3 單獨使用FPGA的整合解決方案 低功耗FPGA構建推理引擎 設計AI推理模型的硬體需要不斷平衡所需資源數量與效能和功率要求,萊迪思的ECP5和UltraPlus產品系列能實現這類要求。ECP5系列有三種不同規格的元件,能夠運行一到八個推理引擎。其整合的的嵌入式記憶體從1Mb到3.7Mb不等。功耗最高僅為1W,尺寸也只有100mm2。相較之下,UltraPlus系列的功耗水準約為ECP5系列的千分之一,僅為1mW。占用的電路板面積為5.5mm2,包括最多八個乘法器和最多1Mb的嵌入式記憶體。 萊迪思還提供可在這些元件上運行的CNN IP以及可用於ECP5系列的CNN加速器(圖4),與可用於UltraPlus系列的輕量化CNN加速器(圖5)。 圖4 適用於ECP5系列的CNN加速器 圖5 適用於UltraPlus系列的輕量化CNN加速器 最後,還可以在開發模組(圖6)上運行並測試這些演示,兩個模組分別對應這兩種產品系列。Himax HM01B0 UPduino Shield採用了一片UltraPlus FPGA,尺寸為22×50mm2。嵌入式視覺開發套件採用了一片ECP5 FPGA,尺寸為80×80mm2。有了FPGA、軟IP和其他處理資料所需的硬體部分,就可以使用設計工具進行編譯,而生成位流,在每次上電後對目標設備中的FPGA進行配置。3 圖6 評估AI應用的開發模組 在FPGA上構建推理模型 創建推理模型與創建底層運行平台大不相同。它更抽象,涉及更多運算,且不涉及RTL設計。這一過程主要有兩個步驟:創建抽象模型,然後根據所選平台優化模型的實現。模型訓練在專門為此過程設計的框架(圖7)中進行。最流行的兩個框架是Caffe和TensorFlow,但不限於此。 圖7 可以對單個模型進行優化以適用於不同的設備 CNN由很多層構成—卷積層,還有池化層和全連接層,每一層都有由前一層的結果饋送的節點。每個結果都在每個節點處加權重,權重多少則由訓練過程決定。訓練框架輸出的權重通常是浮點數。這是權重最為精確的體現,然而大多數網路終端設備不具備浮點運算功能。這時需要針對特定平台對抽象模型進行優化,這項工作由神經網路編譯器負責。編譯器可以實現載入和查看從某個CNN框架下載的原始模型。可以運行效能分析,這對模型優化最關鍵的量化工作至關重要。 由於無法處理浮點數,因此需要將它們轉換為整數。對浮點數四捨五入也就意味著精度會降低。問題是,什麼樣的整數精度才能滿足想要的精度?通常使用的最高精度為16位元,但是權重和輸入可以表示為較小的整數。1位元的設計實際是在一位整數域中進行訓練以保持精度。顯然,更小的資料單元意味著效能更高、硬體尺寸更小以及功耗更低。但是,精度太低就無法準確地推斷視野中的物體。 神經網路編譯器能創建代表模型的指令流,然後可以類比或直接測試這些指令,而判斷在效能、功耗和精度之間是否達到了適度的平衡。測試的標準通常是看一組測試圖像(與訓練圖像不同)中正確處理的圖像百分比。通常可以透過優化模型來優化運行,包括去掉一些節點以減少資源消耗,然後重新訓練模型。這一設計環節可以微調精度,同時保證能在有限的資源下順利運行。 人臉辨識與人員偵測 在以下兩個不同的視覺案例中,將看到權衡是如何發揮作用的。第一個應用是人臉辨識;第二個是人員偵測。將指出不同FPGA之間存在的資源差異如何影響到相對應的應用效能和功耗。兩個示例的輸入都源自同一個攝影機,兩者都在相同的底層引擎架構中運行。在UltraPlus設計實例中(圖8),圖像的尺寸縮小後通過八個乘法器進行處理,利用了內部記億體並使用了LED指示燈。 圖8 UltraPlus平台用於人臉辨識和人員偵測應用 ECP5系列資源更多,提供了一個計算能力更強的平台(圖9)。攝影機捕捉的圖像在發送到CNN之前在圖像訊號處理器(ISP)中進行預處理。處理結果與原始圖像在標記引擎上比對,而將文本或注釋覆蓋在原始圖像上。並可以使用一系列圖表來衡量兩種應用的效能、功耗和占用面積情況。對於每個應用,兩組示例分別表示:一組輸入較少,一組輸入較多。圖10表示了人臉辨識應用的結果,兩組分別採用了32×32輸入和90×90輸入的情況。 圖9 ECP5平台用於人臉辨識和人員偵測應用 圖10 在UltraPlus和ECP5 FPGA上實現簡單和複雜的人臉辨識應用時的效能、功耗和占用面積。 左側的軸代表處理一張圖片需要的週期數量以及這些週期的分配情況。右側的軸代表在各元件(黑線)上實現的每秒幀數(fps)。最後,每種情況下還標注了功耗和占用面積。左側的32×32輸入示例中,最下方部分代表卷積層上運行的週期。在四個示例中,UltraPlus的乘法器數量最少;其他三片ECP5 FPGA的乘法器數量依次遞增。隨著乘法器數量的增加,卷積層所需的週期數減少。 90×90輸入的示例位於右側,得到的結果完全不同。在每個直條圖的底部有大面積的區域。這是由於設計更為複雜,使用了除元件內部儲存空間以外的更多記憶體。由於需要占用外部DRAM,效能就有所損失。需要注意的是,這種設計無法使用較小的UltraPlus元件。人員偵測應用的情況類似。兩組分別採用了64×64輸入和128×128輸入的情況(圖11)。 圖11 在UltraPlus和ECP5 FPGA上實現簡單和複雜的人員偵測應用時的效能、功耗和占用面積 同樣,較多的乘法器會減少卷積層的負擔,而依賴DRAM則會影響效能。表1總結了各類情形下的效能。它包括了對圖像中最小可識別物件或特徵的度量,用視野範圍的百分比表示。在這裡使用更多輸入能夠為較小的目標提供更多解析度。 低功耗FPGA可實現要求低功耗、具有靈活性和可擴充性的網路終端AI推理設計。並提供成功部署AI演算法所需的關鍵要素,包括:神經網路編譯器、神經引擎軟IP、Diamond設計軟體、開發板與參考設計等。
0

傳統SoC效能有瓶頸 MPSoC驅動AI多元應用

放眼未來,在面對更先進的神經網路時,能隨時進行調整的靈活性是我們關注的焦點。現今廣受歡迎的CNN正加速被新型的先進架構所取代。然而,傳統系統單晶片(SoC)的設計必須要使用當前的神經網路架構知識,而且從開發到部署通常需花費約三年的時間,像RNN或膠囊網路(Capsule Network)等新型神經網路,可能會使傳統SoC變得低效,且難以提供保持競爭力所需的效能。 因此,若嵌入式AI要滿足終端使用者的期望,特別是要跟上可預見未來裡不斷提升的需求,就必須採用更加靈活的自我調適運算平台。我們利用使用者可配置的多重處理系統晶片(MPSoC)元件,整合主應用處理器和可擴展的可編程邏輯結構,其包含可配置的記憶體架構與滿足可變精度推論所需的訊號處理技術,來滿足上述需求。 推論精度最佳化提升效能 在傳統的SoC中,決定效能特性的因素如記憶體架構和運算精度是固定的,透過核心CPU定義,最小值通常為8位元,即使針對特定的演算法最佳精度可能更低。而MPSoC因能夠支援可編程邏輯最佳化至電晶體層面,因此能根據需求讓推論精度降低至最低1位元。此外,這類元件還包含成千上萬可配置的DSP分割(Slice),能高效處理乘法累加(MAC)運算。 當能自由地最佳化推論精度時,就能根據平方定律提供剛好滿足需求的運算效率。也就是說,單一位元的運算當用1位元核心執行時,相對於用8位元核心完成時,所需的邏輯僅為1/64。此外,MPSoC能讓推論精度針對每層神經網路做出不同最佳化,進而以最大的效率提供所需的效能。 MPSoC晶載記憶體提升4倍 除了透過改變推論精度來提高運算效率之外,配置可編程晶載記憶體的頻寬和結構,能進一步提高嵌入式AI的效能和效率。當運行相同推論引擎時,客制化的MPSoC與傳統運算平台相比,晶載記憶體可能達到4倍以上,而記憶體介面頻寬可能達到6倍。記憶體的可配置性能幫助使用者降低瓶頸,並最佳化晶片資源的利用率。此外,典型的子系統僅具備有限的晶載整合快取記憶體,因此必須與外接儲存裝置頻繁互動,導致延遲與功耗的增加。在MPSoC中,大多數記憶體交換都在晶片上進行,因此可以大幅提高速度,且能省下超過99%因與外接記憶體互動所產生的功耗。 解決方案的尺寸大小也越來越重要,特別對採用行動AI的無人機、機器人或無人/自動駕駛汽車而言更是如此。在MPSoC的FPGA結構上運行的推論引擎可以僅占用傳統SoC八分之一的晶片面積,這能讓開發者在更小的元件中建構功能更強大的引擎。 此外,MPSoC元件系列為設計人員提供豐富選擇來建置推論引擎,能支援最節能、成本效率最高、面積占用最小的方案,進而滿足系統效能需求。一些通過汽車應用認證的零件具備硬體功能安全特性,達到業界標準的ISO 26262 ASIL-C安全規範,這對自動駕駛應用而言至關重要。例如賽靈思的Automotive XA Zynq UltraScale+系列採用64位元四核Arm Cortex-A53和雙核Arm Cortex-R5處理系統(圖1),以及可擴展的可編程邏輯結構,因此就能在單個晶片上整合控制處理、機器學習演算法和安全電路,同時具備故障容錯能力。 圖1 賽靈思的Automotive XA Zynq UltraScale+系列符合ISO 26262 ASIL-C安全規範。 現今嵌入式推論引擎可建置於單個MPSoC元件內,且功耗低至2瓦,這對行動機器人或自動駕駛汽車而言都是合適的功耗水準。傳統運算平台即便現在也無法以這麼低的功耗運行即時CNN應用,未來也不太可能在更嚴格的功耗限制條件下,滿足更快回應和更複雜功能的需求。採用可編程MPSoC的平台能夠提供更高的運算效能、更高的效率,並在15瓦以上的功率水準下減少面積和減輕重量。 若開發者不能在其專案中輕鬆應用這些優勢,那麼這些可配置型多平行運算架構的好處就僅限於學術領域。因此,若想要成功應用,需要有適當的工具來協助開發者最佳化其目標推論引擎的建置。為了滿足相關需求,賽靈思不斷擴展其開發工具和機器學習軟體堆疊的生態系統,並與專業夥伴合作,一起簡化與加速電腦視覺和視訊監控等應用的建置。 藉由SoC的可配置性能為目前應用創建最佳平台,也讓AI開發者能夠靈活地跟上神經網路架構快速發展演進的需求。業界遷移至新型神經網路的可能性,對於平台開發者來說是一個巨大的風險。然而,可重配置的MPSoC透過重配置能力,以及當前最先進的策略來建構最高效的處理引擎,能讓開發人員靈活地回應神經網路架構方式的變化。 工業控制、醫療設備、安全系統、機器人和自動駕駛汽車等越來越多的設備內已嵌入AI,利用可編程邏輯結構的MPSoC元件所具備的自行調適加速技術,是保持快速反應、高階功能及維持競爭力所需的關鍵。 (本文作者為賽靈思策略市場開發總監)
0

3D感測/機器視覺強強聯手 AI升級智慧製造商機無限

AI人工智慧讓智慧製造能力再上一層樓,而應用已久的機器視覺,亦從成熟的光學檢測AOI,蛻變為內含深度學習(Deep Learning)技術的電腦視覺,搖身一變成為智慧製造的核心技術,影像與視訊內容的自動擷取、處理、分析與應用更加迅速、普遍與成熟。這樣的轉變不僅展現在生產效率的提升上,更可以進一步精簡人力成本,未來AI系統甚至可以針對機台的問題進行自我檢測,分析問題與成因,然而這僅僅是十八般武藝的開端。 近來,許多新興技術發展並與機器視覺結合,進一步擴大了其功能與應用範疇,3D感測技術包括飛時測距(Time of Flight, ToF)、立體雙目視覺(Stereo Vision)、結構光(Structured Light)等技術可以建立三維感測資訊,尤其測距應用的延伸,將使電腦視覺的功力不斷提升,本活動介紹機器視覺技術架構與應用最新動態,加上多個感測技術的加持,並剖析其與AI結合的發展與應用趨勢。 機器視覺助智慧製造一臂之力 而製造業從工業4.0口號被打響以來,製造系統從自動化進入智慧化的另一個全新的發展境界,機器視覺(Machine Vision)/電腦視覺(Computer Vision)就是達成此目標非常關鍵的技術。倢恩科技研發部經理邱威堯(圖1)提到,導入機器視覺可以使傳統製造業產線的生產方法更具彈性與可變性,並改善作業人員工作環境,遠離危險惡劣的工作流程。使用機器視覺的生產線,讓產品從人工檢測進步到自動品質管理,可增進品管重現性/一致性,以達成高度品質管制,降低人員因疲勞或情緒不佳誤判所造成的損失,同時讓檢測數據數值化,自動產生統計報表以便於管理與決策分析。 圖1 倢恩科技研發部經理邱威堯提到,導入機器視覺可以使傳統製造業產線的生產方法更具彈性與可變性,並改善作業人員工作環境。 機器視覺的基本要點包括:檢測(Inspection)、物件識別(Object Recognition)、量測(Gauging)、機器導引與定位(Machine Guiding and Positioning)。 檢測Inspection 利用機器視覺技術自動檢驗製程中工業產品之瑕疵,例如印刷電路板上的線路是否短路、斷路,半導體晶圓之表面缺陷及LCD面板之缺陷等。 物件識別Object Recognition 用於確認物件的身分,例如車牌辨識、條碼辨識、IC元件之光學字元辨識(OCR)及鍵盤檢視、人臉辨識、指紋辨識、瑕疵分類等。 量測Gauging 以機器視覺技術進行非接觸式的量測,例如工件之尺寸、夾角、真圓度及印刷電路板之線寬等。 機器導引與定位Machine Guiding and Positioning 利用機器視覺引導自動化機器之路徑,例如引導銲接機器人之銲道,無人搬運車之行進軌跡;亦可用於決定目標物位置,如SMT、PCB自動裝配作業的定位與機器人的行走路徑等。 機器視覺影像處理要點 進入作業程序後,機器視覺系統針對擷取到的影像進行處理則是另外一個重點,邱威堯進一步說明,影像強化、影像分割、影像編碼、影像還原等為主要的技術。影像強化是使處理過的影像比原始影像更適合於某一特殊應用,方式包括空間域(Spatial Domain)與頻率域(Frequency Domain)。影像分割則是凸顯出影像中感興趣的部分。 影像編碼就是使用較少的位元來顯示一幅影像,壓縮是最常見的方法。影像還原則是改善或重建一幅遭到破壞的影像,邱威堯說,影像還原技術通常需要大量運算時間,且還原後的效果不見得可以接受,建議由取像環境、設備與技術來改善影像的品質。 機器視覺硬體選擇無唯一解 在機器視覺硬體部分,主要由打光、鏡頭與相機組成。邱威堯指出,打光是機器視覺中非常困難的一部分,需要許多直覺與實驗,而打光技術也無通則,但對於特定應用場合已有經驗可循,而打光的方法是根據待測物的光學特性來決定,打光的目的則包括,取得與強化待測物中有興趣之特徵,使前景與背景明顯不同,強化訊噪比,以得到更高品質的影像,凍結移動中物體的運動並去除鏡反射(Specular Refection)等。 而打光的方式則分為正向打光、背向打光與結構打光。並可再進一步細分為擴散式正向打光、直向式正向打光、低角度斜向打光、同軸打光、擴散式背向打光、遮背式背向打光等多種,端視需要的效果而定。光源部分則以人工光源最常用,種類包括白熾燈的鎢絲燈泡、鹵素燈;放電燈的螢光燈、水銀燈、高壓鈉氣燈、複金屬燈、氙氣燈;固態光源的LED與固體雷射。其中,近年在實務應用上LED燈儼然已是主流。 另一個重點就是鏡頭,邱威堯強調,這部分的選擇同樣沒有最佳解,端視需求與使用者掌握的資源而定,選擇的要素包括視野、焦距、工作距離、相機底座、相機格式(感光元件尺寸)、景深、光圈值、相機型式等。以景深為例,其代表聚焦清晰的範圍,長景深表示聚焦清楚範圍大,短景深表示聚焦清楚範圍小,一般景深可以透過縮小鏡頭光圈來增加,但是照明的亮度也要相對提升,原則上要避免出現短景深的情況,以追求長景深為目標。 3D感測加值機器視覺 3D感測技術並不是全新的技術,由於iPhone X的人臉辨識解鎖應用,讓市場大為驚艷,帶動的發展熱潮逐漸滲透到不同領域。目前主要技術為立體雙目視覺、結構光與飛時測距,艾邁斯半導體(ams)資深應用工程師湯治邦(圖2)表示,這三個技術都需要搭配光源,現階段主流光源是垂直腔體表面雷射(VCSEL),並使用不可見的紅外光,波長850nm與940nm為主,因有極少部分人可看見850nm的紅外光,所以近年940nm使用比例逐漸提升。 圖2 艾邁斯半導體資深應用工程師湯治邦表示,飛時測距、立體雙目視覺、結構光技術特性有些差異,造成不同應用與需求各有優勢。 發光源的部分,除了熱門的VCSEL之外,LED與邊射型雷射(Edge Emitters Laser, EEL)都是常見的光源,以技術特性來深入比較,湯治邦指出,VCSEL雷射光的光線集中,LED則呈現散射方式,因此VCSEL波長範圍穩定,可產生波長最精準的光線,操作溫度最高可達200℃,溫度特性比LED與EEL優異,製造成本與半導體製程的簡易度也有相對優勢,是該技術受到高度注目的原因。 此外,主流的三個3D感測技術,技術特性有些許差異,造成不同應用與需求下各有優勢,立體雙目是由兩個攝影機分別擷取影像,理論與人眼相似,透過三角函數可以測知物體的深度,與其他兩個技術相較由於感測元件技術成熟成本較低,但模組體積較大、耗電量較高,也易受環境變化影響,如天候昏暗就會影響感測品質與準確性。 因為iPhone...
0

新思助先進AI SoC實現

新思科技近日宣布推出結合符合先進架構需求、分析與設計的解決方案—Platform Architect Ultra,以因應人工智慧SoC所帶來的系統挑戰。設計具有神經網路(Neural Network)運算能力SoC的設計人員必須在卷積神經網路(Convolutional Neural Network, CNN)處理能力與資料中心或嵌入式裝置所能承載的效能和功耗限制之間維持平衡,Platform Architect Ultra能彈性地映射CNN演算與工作負載,以探索處理過程與記憶體架構的可能選項,讓設計人員能分析、選擇、優化與調整運算與架構,以滿足效能與功耗的要求。 電綜(Denso)公司基礎電子研發部經理安倍隆(Takashi Abe)表示,車用SoC與先進的AI晶片需仰賴具有高度效能與能源效率的架構。Platform Architect Ultra能快速地針對架構概念組合出精確的模型、利用實際的AI工作負載進行概念的測試,並有效率地與其他數百個架構和IP進行比較,如此可確保車用SoC帶來絕佳的效能與功耗表現。 新思科技與AI SoC領導廠商一同合作所開發的Platform Architect Ultra,是Platform Architect的新一代版本,其最新技術能有效率地執行多核心架構的動態模擬。Platform Architect Ultra引進了SMART Tables,作為對情境敏感(Context-Sensitive)資料輸入與錯誤檢查之用,而SMART Charts則用於預定架構的圖式根本原因(Root-Cause)敏感分析。此外,它也引入了層階設計的概念,以達到晶片設計的快速開發與封裝,其中包括映射就緒(Ready-to-Map)的工作負載、架構模型與包含CNN框架(諸如Caffe和TensorFlow)的AI參考系統,能讓設計人員快速分析、優化所提出的架構設計。
0

Kneron NPU運算效能提升3倍

終端人工智慧解決方案廠商耐能智慧(Kneron)近日參與在上海舉行的Arm人工智慧開發者全球峰會,以「可重組算法在AI晶片中的應用」為主題發表演說,會中同時發布Kneron新一代終端人工智慧處理器系列NPU IP - KDP Series。Kneron第二代NPU IP包括三大產品,分別為超低功耗版KDP 320、標準版KDP 520、以及高效能版KDP 720。全系列產品的功耗小於0.5瓦(W),採用新的架構設計讓運算更具彈性,整體運算效能相較上一代產品大幅提升達3倍,運算能力(Peak Throughput)最高可達5.8 TOPS(每秒萬億次運算)。 Kneron創辦人暨執行長劉峻誠表示,Kneron推出為終端裝置所設計的人工智慧處理器NPU IP後,其超低功耗的優勢受到市場高度關注。Kneron新一代NPU產品在諸多方面都有顯著的突破,基於第一代產品的優勢,我們改善資料運算流程、提升整體運算效能與儲存資源使用率,同時針對不同神經網路模型進行優化,讓NPU可以更廣泛地應用在各種終端裝置,並滿足更複雜的運算需求。 Kneron NPU IP可應用在智慧手機、智慧家居、智慧安防、以及各種物聯網設備上,讓終端裝置在離線環境下就能運行各種神經網路。Kneron第二代NPU IP採用新的交錯式運算架構(Interleaving Computation Architecture)設計,縮短運算流程和提升效率;深度壓縮(Deep Compression)技術讓壓縮功能從模型層級深入至資料和參數層級,使壓縮率再提升。動態儲存資源配置功能提升儲存資源利用率,卻不影響運算效能。此外,支援更廣泛的卷積神經網路(Convolutional Neural Networks, CNN)模型,並針對各種CNN模型分別進行優化,在不同神經網路模型下,可提升1.5倍~3倍不等的效能。
0
- Advertisement -
- Advertisement -

最新文章

- Advertisement -

熱門文章

- Advertisement -

編輯推薦

- Advertisement -