人工智慧(AI)已經在各個領域的應用中展現出巨大的潛力,例如工業自動化和機器人、智慧醫療保健、智慧城市和交通、智慧金融服務,都有廣泛的應用。機器學習和深度學習是人工智慧的核心技術,用於實現從數據中學習和提取模式的能力。它們被廣泛應用於圖像識別、語音識別、自然語言處理、推薦系統等各種應用場景中。例如,圖像識別技術被用於自動駕駛汽車的環境感知,醫療影像分析等。
深度學習推理硬體加速可以通過多種方式來實現,這些方式通常旨在提高深度學習模型的推理速度和效率。以下是一些常見的深度學習推理硬體加速方案:
這些硬體加速方案中,GPU 因為功耗大,需要搭配散熱裝置。ASIC的開發成本高,開發時程長,對於快速變化的AI應用,較缺乏彈性。NPU因為是定製化,對於多樣化的AI應用也缺乏彈性。相較之下,FPGA具有下列優點:1.靈活性和可定製性,2.快速原型設計和開發,3.低成本,4.可重用性。
FPGA硬體電路設計,大多使用Verilog或VHDL硬體描述語言撰寫電路代碼,再以專用的EDA軟體合成、實現,產生可以燒錄的FPGA晶片的檔案,撰寫電路代碼對不具硬體知識的人士而言,是一項高門檻的工作。
FPGA-based DPU(Deep Learning Processing Unit, 深度學習處理器單元)是專用於卷積神經網路的可程式IP,可以透過參數化設定,燒錄到FPGA晶片,實現深度學習推理運算的硬體加速。DPU內部包含暫存器配置模組、資料控制器模組和卷積計算模組,Xilinx 公司的DPU中部署的卷積神經網路模型包括VGG、ResNet、GoogLeNet、YOLO、SSD、MobileNet、FPN等,也可以自行訓練其他深度學習模型。
透過DPU與Vitis AI整合式開發平台,使得深度學習推理硬體加速的設計複雜度得以明顯簡化。這對專精於人工智慧應用開發的人員,在沒有厚實硬體設計能力的背景下,可以有效降低學習門檻。而對於已熟悉Vitis AI流程的人員,在面對多樣化的人工智慧應用需求,DPU有助於快速實現深度學習推理硬體加速的設計。
文 / 資訊工程學系 林浩仁老師
圖 / 以FPGA晶片實現深度學習推理硬體加速的人工智慧應用示意圖,由 DALL·E 3 提供
出版 / 2024年5月14日