作者:Jack OmniXRI, 2023/12/15
在現今專業分工的時代,很多事情不用透過自己動手作就能享受時代進步所帶來的便利。大家不用自己買布作衣服,不用買食材自己下廚,家裡燈不亮了,房子想重新裝潢一下,不用自己買電線、木材,都有專業人士可以幫忙。但是自己作手作,完成一項可以改變自己生活的事,從來就不是特定專業人士才享有的能力,只是隨著時代的演進,那些父母時代才有的動手作能力及樂趣已逐漸被人們淡忘。
早在1956年瑞典知名家俱商IKEA就推出組合式家俱,讓一般人也能自己 DIY (Do It Yourself) 看圖組裝家俱。2005年Make雜誌推出,2006年Maker Faire開始推動 Maker(自造者或稱創客) 運動,讓傳統手工製作的精神加入了電子、機械、資通訊(俗稱寫程式)等現代科技,同時許多廠商紛紛推出相應套件、工具及軟體、平台,也有許多樂於分享的人將相關技術無私開源,讓更多人能享受自己動手作的樂趣。2014年美國總統歐巴馬更在白宮主持了Maker活動,並規畫教育創新十年計畫,編列四億美金,培訓十萬名教師推動 STEM(科學Science、科技Technology、工程Engineering及數學 Mathematics) 來讓學生們更具動手作的能力。於是這股風潮引爆更多領域,如平價的3D印表機(3DP)、無人機(Drone)、自走車等,從此開啟跨域Maker新世代。
在這股風潮下台灣Maker也不落人後,尤其在擁有強大的電子硬體及資通訊軟體的能力下,2013年由中研院及LASS社群[1]共同推動下,一個螞蟻雄兵的計畫就此誕生,那就是「PM2.5空氣盒子」。大家利用很簡單的PM2.5空氣品質感測器加上平價的硬體、通訊模組、開源的軟體及簡單的外殼,最後再一起串接到共同網站就能監看全台灣的空氣品質,而其整體架構剛好就是「物聯網(Internet of Things, IoT)」最基本的核心技術。由於這項技入門容易,價格不高,具教育意義,更能讓老師、家長及學生一起動手作,不限是否具有電子或資通訊背景都能快速速上手,於是全民Maker的時代正式開啟,陸續引爆各種創意及手作風潮。
Fig. 1 Maker Faire Taipei [影像來源]
十年過去了,中間發生了很多事,包含知名Maker Faire差點倒掉又易主,很多Maker Space收起來,不禁讓很多人覺得Maker不再是熱點。但從去(2022)年及今年的Maker Faire Taipei活動來看,即便收費仍然有非常多人參加,會場中各種創意及交流,讓人覺得依舊活力十足。不過仔細觀察了一下,會發現熟面孔似乎越來越少,作品的內容和往年相比似乎也沒有太多變化,是大家創意疲乏了嗎?還是Maker精神已融入生活不再需要多說呢?難道已經沒有新的火花可以重新點燃大家的熱情嗎?
去年11月底OpenAI發表大型語言模型(Large Language Model,LLM) ChatGPT後,短短一年就讓生成式人工智慧(AIGC) 發生翻天覆地的變化,不僅是文字創作、自然對話、影音生成,甚至直接輸入影音而使用文字查詢也變成不再是困難的事。一般學生及大眾不需有太多操作知識,就能像面對真人一樣的對談、交辦工作,彷彿科幻電影情節降臨。這一年來有賴像NVIDIA、INTEL、Microsoft、Google等軟硬體公司的大力推動及各學研單位的努力,僅僅一年就讓遠在天邊(雲端)的技術,可以迅速落地(邊緣),讓高階手機(Mobile)、單板微電腦(SBC)甚至高階單晶片(MCU)也有機會玩AIGC相關應用,這也似乎意味著新一波的「AI Maker世代」即將到來,各種新的創意也將遍地開花。
接下來就幫大家整理了一下有哪些硬體、軟體相關技術資源可用,還有哪些創意、應用可能成為AI Maker的新寵。
1. 微型AI硬體及適用範圍
Fig. 2 微型AI常見硬體組合。(OmniXRI整理製作,2023/12/15)
目前依運行模型大小,需選用不同算力及記憶體大小的硬體,才能滿足不同的邊緣型AI應用,大致可分為筆電(AI PC)、手機(SoC)、單板微電腦(MPU)及單晶片(MCU),而為了順利運行通常這些硬體都會搭配神經網路加速單元(Neural Network Processing Unit, NPU, 俗稱AI晶片),否則很難滿足即時反應需求。
一般來說在邊緣端裝置要直接跑大型語言模型(LLM)還要馬上有反應且不能太胡言亂語,那就要使用較大模型(1300億或700億個參數, 130B或70B),透過網路連線到雲端,使用業者提供的API服務(部份免費),而邊緣裝置僅負責處理人機界面,輸入文字、語音、影像等資料,待收到回覆後再顯示文字、影像,播放聲音或影片,很適合用於各種文字、影像、音樂生成等應用。這樣的作法,對硬體要求不高,也不需要有NPU存在,甚至高階MCU也都有機會能完成。常見的API服務如下所示。
- OpenAI: GPT-3.5/4, DallE2/E3
- Google: Vertex AI
- Microsoft Azure: Cognitive Service(DialoGPT)
- Amzon Web Services(AWS): Lex
如果想要離線就能運行LLM,那模型就不能太大,通常是130億或70億或13億個參數(13B或7B或1.3B),以一個參數1 Byte(8 bit)來看,就要有13GB或7GB的記憶體及儲存空間才夠用,所以有時還要透過模型優化工具將其量化、剪枝、壓縮來縮小模型,才能放的進裝置中運行。但缺點就是模型越小,生成能力及正確性也會隨之下降,較適合特定場域中有限回答,如智慧家庭、智慧交通、智慧健康、電商客服等。以下列舉一些常見硬體。當然這些硬體算力較好,也很適合用於影像分類、物件偵測、影像分割等應用。
- AI PC: Intel Meteor Lake(14代CPU+iGPU+NPU), AMD Ryzen 8040(CPU+GPU+NPU), Apple M2(CPU+GPU+NPU), Qualcomm Snapdragon X Elite(CPU+GPU+DSP+NPU) …
- 手機平板(SoC): Qualcomm Snapdragon 8 Gen 3, 聯發科天磯9300 …
- 單板微電腦(MPU): Nvidia Jetson Orin(CPU+GPU), Raspberry Pi 5(CPU), Rockchip RK3588(CPU+NPU), ALIF Ensemble(MPU+MCU+NPU), NXP i.MX93 (MPU+MCU+NPU), TI AM6xA(MPU+MCU+DSP+NPU) …
常見7B LLM模型:
- Meta Llama2 7B
- Taiwan-LLM-7B
- Mistral 7B
- Intel Neural-Chat-7b
- Zepyr-7B-beta
- MosaicML MPT-7B
- TAIDE 7B (國科會,台灣可信任AI對話引擎,模型尚未正式開放,現僅提供特定單位內測中)
一般Maker常用的Arduino及PRO系列,前者多半為低階單晶片,算力及記憶體極少,較不適用微型AI,而PRO系列雖然沒有NPU加持,但Arm Cortex-M4/M7/M33的內核時脈頻率高,運算速度快,記憶體(Flash & SRAM)較多,已能完成簡單的語音,甚至低解析度的AI影像應用。而最近一年高階MCU+NPU已陸續亮相,雖然算力通常不到0.5TOPS,但對於較複雜的AI視覺模型及應用(如物件偵測、追蹤)還是沒問題的,以下就簡單列出一些已公開的產品。
- ST STM32N6(MCU+NPU)
- NXP MCX-N(MCU+NPU)
- Himax WE2(MCU+NPU)
- Espressif ESP32-S3(CPU+DSP)
- Realtek RTL8735B(MCU+NPU)
- Infineon PSoC Edge(MCU+NPU)
- SiFive X390(64bit RISC-V+VLEN)
2. 小型AI開發軟體及平台
有了這些硬體還不夠,因為大家對AI可能還不太懂,一下子難以跨越算法的鴻溝,因此就像開車一樣,大家只要到駕訓班學一些基本操作就能上路,不用懂汽車是如何被設計出來的,所以一個容易上手的AI開發軟體工具及平台就變得很重要。一般AI應用開發分為訓練(Training)及推論(Inference),在邊緣端只需推論就夠了。而很多常用的AI應用多半都已開源,不需重新訓練就能使用,只要適當將模型優化處理就能塞進邊緣裝置中。常見開發工具及平台簡單介紹如下。
- AI PC / 單板微電腦端工具
- Google: TensorFlow Lite, Teachable Machine, MediaPipe
- Nvidia: TensorRT
- Intel: OpenVINO
- Microsoft: Lobe
- 單晶片專用型AI函式庫及編譯器
- ST: CubeAI (local, cloud), NanoEdge
- NXP: eIQ
- Renesas: Reality AI
- Infineon: Imagimob
- Nordic: Atlazo
- TDK: Qeexo
- Google: TensorFlow Lite for Microcontroller
- Arm: CMSIS-NN, Android NN SDK, Compute Library, Vela Compiler
- Nuvoton: Skymizer ONNC Compiler
- 通用型單晶片TinyML開發平台
3. AI小幫手及創意發想
Fig.3 微型AI常見應用例。(OmniXRI整理製作,2023/12/15)
在Maker眼中,創意、靈感從不缺乏,只是在有沒有動手去作,而不是只存在嘴上和心中。當你又學習到一項新工具或新技術時,如何落實到生活中才是Maker精神。回到100年前,1920年代福特汽車開始大量生產上市時,大多數人想到的是好快的車速,人類真的有辦法操控嗎?馬車真的會被取代嗎?它會不會很危險,很容易撞傷人?這些問題是否和AI世代降臨很像呢?如今大家享受著自動化生產的成果及便捷的交通工具,都是前人努力的結果。只要大家善用工具,相信AI也能成為日常不可或缺的一部份。
為了讓大家更有想像空間,這裡簡單整理了聲音、影像、環境感測、視覺及生成五大領域,不同硬體平台,數十種微型AI應用的實作案例,希望大家能舉一反三,創作出更多有趣的案例並分享給大家,那麼一起成為「AI Maker」就不再是難事了。
- 【Intel DevCup 2021作品集】- 實作組、概念組
- 【Intel OpenVINO Notebooks】(含AIGC)
- 【Nvidia Jetson Community Projects】
- 【TinyML應用大全(30組案例分享)】
- 【Hackster.io LLM Projects】
從以上軟硬體技術及實作案例的介紹,大致可了解到完全離網,在裝置上獨立運行微型AI推論是沒有問題,以下就簡單列出幾項考慮的重點,方便大家未來設計時的參考。
- 感測器類型(聲音、振動、影像、環境…)
- 模型大小及複雜度(模型優化工具、Flash儲存參數量、SRAM計算過程變數量)
- 推論效能(精度、速度…)
- 資料傳輸方式(有線I2C/SPI/MIPI…,無線BLE/WiFi/5G…)
- 耗能(電池、充放電管理、睡眠…)
- 晶片及開發板價格
小結
2023年即將結束,各種「AI Maker世代」所需的軟硬體及開發工具也陸續到位,以上簡介只是拋磚引玉,相信這將可以再次點燃大家心中的Maker精神,重新把創意具現化,讓AI變成大家生活的小幫手,而不再是遙不可及的技術。
參考文獻
[1] LASS環境感測器網路系統
https://lass-net.org/
[2] 許哲豪,“TinyML應用大全(30組案例分享)”
https://hackmd.io/@OmniXRI-Jack/tinyML_30_porjects
[] 許哲豪,“如何結合Google Colab及Intel OpenVINO來玩轉AIGC”
https://omnixri.blogspot.com/2023/12/20231209devfest-taichunggoogle.html
本文同步發表在【台灣自造者 vMaker】
沒有留言:
張貼留言