AI World 2023 回顧
又來到一年一度的AI回顧了,今年是完整進入產業界的一年。進入業界後比較少接觸新穎的研究論文。而是花比較多時間探討模型的可解釋性(XAI),以及模型如何部署與落地。有興趣的讀者可以參考我在2023年的鐵人賽「揭開黑箱模型:探索可解釋人工智慧」系列文章。
回到本文的主題,每年的這個時候,我都會寫一篇關於過去一年中所見到的人工智慧新技術和所獲得的成果的分享文章。今年的內容主要圍繞在ChatGPT,這項技術和應用已經無所不在,並在各個行業中發揮著重要作用。有趣的是,AI溝通師這一職位也正在變得越來越流行。你現在正在看的影片、廣告、社交媒體的內容,可能都是由AI人工智慧所生成的。
如果想瞭解更多的ChatGPT Prompt的相關知識可以參考另一場線上演講「提問的藝術:用AI程式輔助工具加速開發效率」
- 影片
- 文章
何謂生成式AI?
生成式人工智慧(Generated AI)又稱為AIGC(AI Generated Content),是利用人工智慧來生成內容,創造出全新的成品,包括文字、圖像、音訊和影片等。而目前非常受歡迎的ChatGPT則是一種使用人工智慧來生成文字的技術。
生成式人工智慧的崛起帶動了許多公司的成長,從下游硬體端推動了人工智慧伺服器的發展。背後的一個原因是,顯卡教父黃仁勳Nvidia的加持帶動了所有下游相關產業。並在COMPUTEX 2023展覽會中推出了很多大型運算所需的硬體產品。有了硬體運算的支援作為後盾,接著是所謂的雲端服務,這些服務提供了運算資源,免去了構建資料中心的麻煩(因為這些硬體設備的成本可能高達數千萬甚至數億)。最終,對我們日常生活影響最大的是這些生成式的軟體人工智慧服務。軟體開發者可以透過應用程式介面建立服務型的應用程式,讓一般大眾都能夠使用。
GPT-3 語言模型花了多少計算資源?
OpenAI 開源的 ChatGPT 聊天機器人已經風靡一時,它具備寫作、計算、甚至寫程式等多項能力,被認為可能取代大量人類工作。其基礎語言模型是 GPT,截至 2024 年初,GPT4.5 已經被發佈了。
那麼,現在市面上免費使用的 ChatGPT 所採用的 GPT-3 語言模型需要多少計算資源呢?研究顯示,訓練一個月的成本將達到台幣 3.5 億元。GPT-3 是一個基於 Transformer 架構的自然語言模型,擁有 1,750 億個內部神經網路參數,訓練集的文章資訊量高達 45 TB。整個訓練過程需要龐大的硬體計算資源,據文獻指出,訓練需要 100,000 TOPS 的算力,其中 1 TOPS 代表處理器每秒可進行一萬億次運算操作。這樣的規模相當驚人,舉一個例子來說,即使在邊緣運算器 Nvidia Jetson Orin Nano 上處理一個 10fps 的影像辨識,也需要 30 TOPS 的計算資源。
目前市面上的免費版本 ChatGPT 是基於自然語言處理模型「GPT-3」延伸出的「GPT-3.5」製作的。它採用了人類反饋強化學習(RLHF)進行訓練,簡單來說就是人類提問機器答,機器提問人類答,不斷迭代。在此過程中,排除了不合適的答案,並透過人類的干預來增強機器學習的效果,獲得更為逼真的結果。
延伸閱讀:GPT系列的演進
生成式AI工具有哪些?
GPT 系列工具涵蓋通用、生產力和程式開發三個主要領域。這些工具涵蓋了廣泛的應用場景,從日常問答到生產力提升,再到程式開發協作,為使用者提供了多樣性的 AI 服務。
生成式AI技術不僅僅只侷限在文字,其中最為引人矚目的包括生成圖像和影音的能力,使得我們可以透過 AI 創造出栩栩如生的虛擬世界,像是Midjourney這類的圖像生成服務,讓圖像創作增添了趣味性與想像。
- Stable Diffusion: 基於 Diffusion model,透過機器學習訓練。能根據文字描述和指令生成圖像。免費,需要有程式背景。
- Midjourney: 付費服務,容易上手,文字生成圖像的生成式人工智慧。
此外,生成式 AI 在文書自動化方面的應用也顯得相當重要,它不僅提升了工作效率,同時也節省了我們篩選文件的時間。我最喜歡拿它協助我文獻閱讀並彙整摘要。
- ChatPDF: 上傳PDF檔案至,它能夠自動分析文件內容。
- SciSpace: 論文研究 AI 助手,中文文獻問答、摘要引用與報告改寫。
- YouTube Summary with ChatGPT: 免費的 Chrome 擴充程式,透過點擊影片字幕上的功能按鈕,快速存取正在觀看的 YouTube 影片的摘要。
在程式開發領域,生成式 AI 也為程式設計者提供了協助。例如,GitHub 的 Copilot 等工具能夠根據用戶的輸入提供程式碼建議,尤其對初學者而言具有重要價值。如果想試試免費版本不妨也可以試試 AWS codewhisperer。
AI 如何輔助程式開發?
AI 可以根據自然語言的提示生成程式碼,這大大提高了開發速度,特別是對於重複性工作和基本程式碼的生成。其次,AI 工具能夠檢測和修復程式碼中的錯誤,並提供更好的程式品質,包括找出潛在的錯誤、建議最佳實踐以及提供更有效的程式結構。此外,AI 還能分析現有的程式碼,提供性能優化建議,幫助開發人員改進程式效能,減少資源使用和提高應用程序速度。
幸運的是上述功能都可以在visual studio code擴充插件「Bito AI」免費的使用(同時也有網頁線上版本)。它的操作方式跟 ChatGPT 很像,使用方式很像在跟一位專家諮詢。同時也可以透過一些功能按鍵直接幫你程式進行弱點掃描、重構等。
👨💻寫程式
請幫我用[程式語言]
語言,幫我寫一個[功能]
的程式碼,其中須包含以下功能:
[功能1]
[功能2]
另外,需要幫我做到以下事情:
[額外描述1]
[額外描述2]
範例
請幫我用Python語言,幫我寫一個物件導向的程式碼,其中須包含以下功能:
- 產生加密且隨機token。
- 可以指定token長度。
另外,需要幫我做到以下事情:
- 遵循 Google Python 命名慣例與風格
- 採用 Google Python 註解風格
- 程式碼必須註解
更多好用的寫程式 Prompt 可以參考這份寶典
GPT偵測器具備語文上的偏見與歧視
在近期的一項研究中,使用這些生成式預訓練模型(GPT)偵測器來判斷英文文章是否來自 AI ,母語非英文的使用者在撰寫英文文章時,有超過一半的情況被誤認為是 AI 生成的文章。這引發了對 GPT 偵測器存在語文上的偏見和歧視的擔憂。在訓練 GPT 偵測器的過程中,研究人員使用了7款熱門的偵測器來檢查91篇源自中國論壇的托福寫作文章,以及88篇由美國8年級生所撰寫的英文作文。從實驗結果顯示,這些偵測器能較正確地分辨出由美國學生所撰寫的文章,但對於中國學生所撰寫的托福文章的識別率卻顯著下降,並誤判為是 AI 所生成的文章。
這一問題的根本在於訓練數據的不平衡和偏向性。當訓練數據不夠多樣化或存在偏向性時,模型就容易產生誤判和歧視性行為。因此為了建立更公正、無偏見的 AI 系統,需要謹慎挑選和處理訓練數據,並定期檢查和調整模型以減少偏見。這也反映了 AI 技術應該受到倫理和多元性的審視,以確保其應用不會對不同文化和語言的使用者產生不公平的影響。
生成式AI已經對我們日常產生了重大的影響,但是要演進出新的模式、流程、優點以及可能的風險還需要一些時間。在這個轉折點,我們應該以自己為實驗對象,與時俱進,尋找最佳的人機協作共創模式。