20251027筆記 內容可能有錯誤,請參考原始影片 [李宏毅【生成式AI導論 2024】](https://www.youtube.com/playlist?list=PLJV_el3uVTsPz6CTopeRp2L2t4aL_KgiI) [【生成式AI導論 2024】第0講:課程說明 (17:15 有芙莉蓮雷)](https://youtu.be/AVIKFXLCPY8?si=Y8tIPHnGKGwnZExq) [【生成式AI導論 2024】第1講:生成式AI是什麼?](https://youtu.be/JGtqpQXfJis?si=OEoQOSFFFvBQW1Um) [【生成式AI導論 2024】第2講:今日的生成式人工智慧厲害在哪裡?從「工具」變為「工具人」](https://youtu.be/glBhOQ1_RkE?si=eyHWtcygzA71jsEL) ### 【生成式AI導論 2024】第0講:課程說明 (17:15 有芙莉蓮雷) 大綱 1. **開課動機與時代變遷** * 目的:應對人工智慧應用模式的轉變,從自建模型轉向直接使用生成式 AI 工具(如 ChatGPT)。 * 目標:教導學生判斷何時應開發模型,何時應使用現有工具。 2. **課程目標與教學定位** * 核心:**教授生成式 AI 的全貌、背後概念與原理**,而非僅教導 ChatGPT 的使用方法。 * 受眾:已使用過生成式 AI,並希望深入了解其原理、訓練方式及未來發展潛力的學生。 * 先修:無需任何人工智慧、數學或程式設計背景。 3. **課程限制與技術現況** * 限制:課程時間有限(兩學分),無法深度探討所有技術細節。 * 技術快速變革:AI 技術進步極快,今日的巨型模型(70 億參數)已成為課程作業。 * 資源:建議透過 **ArXiv** 網站追蹤最新的論文和技術發展。 4. **作業規劃與評量方式** * 數量與時程:共 10 個作業,通常截止期為兩週後。 * 目標:體驗應用生成式 AI 及訓練(微調)自己的模型。 * 資源:使用 Colab 或 Kaggle 執行,不需自備 GPU。 * 政策:允許學生使用生成式 AI 寫作業,老師也會使用 AI 批改作業。 *** ### 1. 開課動機與時代變革 * **開課背景**:老師從 2014 年開始在台大任教,自 2015 年每年都開設機器學習相關課程。 * **啟發事件**:2023年機器學習春季班,有學生詢問如何讓機器自動對文章分類(一個標準的機器學習分類問題)。 * **思維轉變**:老師意識到時代已經改變,如果是直接新創應用的話,應該**直接使用 ChatGPT** 來完成文章分類任務。 * **操作示範**:老師展示了如何使用免費的 **GPT-3.5** 版本,直接給予指令(定義類別如政治、社會、財經等)和新聞內容,ChatGPT 即可輕鬆完成新聞分類。 * **核心觀點**:過去開發 AI 應用需要自建和訓練模型,好比決鬥時要**自己鑄劍**;而現在可以直接**掏出一把槍**,瞬間完成 AI 應用。 * **課程目的**:開設此課是為了讓大家了解現今生成式 AI 的趨勢和技術發展程度,幫助學生更精確地判斷**何時應該自己開發模型,以及何時使用現成的工具**。 ### 2. 課程目標、受眾與教學理念 * **課程範圍**:本課程並非教導如何使用 ChatGPT。ChatGPT 只是最具代表性的應用例子,但本課程旨在帶給大家**生成式 AI 的全貌**。 * **使用門檻低**:使用 ChatGPT 非常容易,只要能與人溝通、會打字,就能與之交流,不需要花一整個學期的時間學習使用方法。網路上已有大量的 ChatGPT 教學資源。 * **預期受眾**:本課預設目標受眾是**已經使用過生成式 AI**,了解其厲害之處,但想進一步了解其**背後的原理、訓練方法以及未來的發展可能性**的人。 * **教學核心**:由於應用技術日新月異(如 GPT 的介面和能力可能在數月甚至數週內改變),本課希望傳授的概念和原理是往後數年甚至**一輩子都可用的東西**。 * **了解原理的重要性**:了解生成式 AI 的原理,就像了解**魔術背後的手法**。這樣可以更深入地欣賞 AI 的能力,並且避免對其能力產生錯誤的誤解或錯誤的期待。 * **先修要求**:本課程**沒有任何預設的先修課程**。不要求具備人工智慧、數學或程式設計背景。它可以作為學生人生中**第一堂**人工智慧相關課程。 * **與機器學習課程的關係**:本課程與傳統的機器學習課程重疊的部分極少。 ### 3. 課程限制與技術現況 * **課程程度**:本課是入門課程。用魔術比喻,本課可以帶領學生了解一個魔術,但**不足以訓練你成為魔術師,也沒辦法帶你創造新的魔術**。 * **時間限制**:本課程是兩學分的課,上課時間只有兩小時,因此無法深入提到所有的技術細節。 * **深入研究資源**:如果學生想要深入研究課堂中提到技術背後的原理,可以參考投影片上引用的論文。 * **ArXiv 平台**:投影片上引用的多數論文來自ArXiv網站。 * AI 領域技術變化太快,國際會議或期刊審查常需一年,新想法會先直接放在 ArXiv 上搶先公開。 * ArXiv 論文編號的前兩位數字代表年份,後兩位代表月份(例如 2205 代表 2022 年 5 月)。 * **技術變革速度**:課程作業將要求學生訓練(實質上是微調)一個有 **70 億參數**的模型。 * 今天 70 億參數的模型已是普通的作業,甚至可以用免費的運算資源來訓練。 * 但若穿越回 2019 年,當時被譽為「史上最強」的 **GPT-2 只有 15 億參數**,約為今天作業模型的四分之一。 * 就像《葬送的芙莉蓮》中,80 年前的「殺人魔法」在現今被視為「普通攻擊」。這說明生成式 AI 的變化速度非常快,有時五個月甚至五個星期都會有很大的變化。 ### 4. 作業規劃與評量方式 * **作業總數**:課程總共有 **10 個作業**。如果沒有特別說明,預設截止期為**兩週後**。 * **作業目標**:體驗如何應用生成式 AI 來打造應用,以及體驗如何訓練(微調)自己的生成式 AI 模型。 * **訓練體驗(負面體驗)**:作業中保留了訓練模型的「負面體驗」作為「疫苗」,以幫助學生面對未來的挑戰。 * **耗時**:作業中訓練模型可能需要兩三個小時,相較於真實大型模型訓練需要數週,這已經很快了。 * **結果不可預測性**:即便完全按照指示操作,結果仍可能與預期不符。訓練模型像「養小動物」或「施展咒語」,結果往往無法預測。 * **運算資源**:執行程式和訓練模型都會使用 **Colab** 或者 **Kaggle**,學生不需要準備任何東西,例如不需要購買自己的 GPU。 * **作業難度標示**: * 一個三角形(△):充分送分(例如作業一和作業二,開局即送 20 分)。 * 兩個三角形(△△):若不在乎分數可以很快完成,但想要拿滿分仍需花時間努力。 * 三個三角形(△△△):需要訓練模型,至少需要好幾個小時才能完成。 * **作業分量說明**:雖然本課名為「討論課」(兩學分),整體負擔並不難;但若當作通識課,它可能是一個非常充實的通識課。 * **使用 AI 輔助**:本課程是生成式 AI 導論課,**允許**學生使用生成式 AI(例如 GPT)來寫作業。 * **AI 批改**:老師也會使用人工智慧來批改作業。 * **致謝與客座講者**: * 特別感謝 **MTK 的達哥團隊**提供達哥平台來批改作業,即便本課程有超過 1000 人選修,他們也願意無條件大力支持。 * **3 月 15 號**:MTK 團隊將分享業界如何使用生成式 AI 的實戰模式。 * **5 月 24 號**:MTK 團隊將分享開發大型模型的心得。 ### 【生成式AI導論 2024】第1講:生成式AI是什麼? 大綱 1. **人工智慧 (AI) 的定義與本質** * AI 是機器展現的智慧,由人所創造。 * 「智慧」本身缺乏標準定義,每個人對 AI 的想像皆不相同。 * AI 是一個想達到的**目標**,而非單一的技術。 2. **生成式人工智慧 (Generative AI) 的明確定義** * 要求機器產生**複雜且有結構的物件**(如文章、圖像、語音)。 * 「複雜」意指其可能性**大到無法求取**(例如 100 字文章有 $10^{300}$ 種可能性)。 * **非生成式 AI** 是「分類」問題,即從**有限的選項中**做出選擇。 3. **機器學習 (ML) 與深度學習 (DL) 的關係** * **機器學習**:一種技術手段,讓機器從資料中自動找出一個帶有未知數(**參數**)的**函式(模型)**。 * **深度學習**:當這個帶有大量參數的函式被表示成**類神經網路**時,即為深度學習。 * ML 是手段,生成式 AI 是目標;現代生成式 AI 通常是以深度學習技術來達成。 4. **生成式 AI 的核心機制:從無限到有限** * 挑戰:生成式 AI 需具備**創造力**,產生訓練資料中從未出現過的答案。 * 解決方案:將生成複雜物件(如完整文章)的問題,拆解成一系列「文字接龍」(Word Continuation)的子問題。 * 機制:文字接龍的答案選項是**有限的**(例如常用中文字只有三四千),將難題轉化為一系列**分類問題**,從而變得可解。 * 概念推廣:這種按順序產生較小單位的策略稱為**自迴歸生成 (Autoregressive Generation)**,可應用於圖片等其他結構化物件。 *** ### 1. 人工智慧 (AI) 的本質與困境 * **人工智慧 (AI) 的定義**:從字面上看,AI 是指**人所創造出來的智慧**,即**機器所展現的智慧**,而非人本身的智慧。 * **定義的模糊性**:然而,關於「智慧」的定義本身是模糊且非標準的。每個人心中對智慧的想像都不一樣。例如,有人認為 ChatGPT 是 AI,但也有人認為只有會跑來跑去的機器人才算 AI,或是電腦要會下棋才算 AI。 * **學術用法**:由於缺乏清晰定義,人工智慧相關的學術論文中,幾乎**不會提及**「人工智慧」這個詞彙。 * **AI 的定位**:人工智慧可以被視為一個**目標**,是人類想要達到的目標,**它不是一項單一的技術**。 ### 2. 生成式人工智慧 (Generative AI) 的定義與區分 * **定義明確性**:相較於 AI,生成式人工智慧(Generative AI)的定義相對明確。 * **核心要求**:生成式 AI 要求機器能夠產生**複雜且有結構的物件**。 * **複雜且有結構的物件**包括: * **文章**(由一連串文字構成)。 * **圖像**(由一堆像素所組成)。 * **語音**(由一堆取樣點所組成)。 * **「複雜」的程度**:所謂的複雜物件,必須要複雜到**無法求取**其所有可能性。 * **極端例子**:假設中文常用字有 1000 個,要寫一篇 100 字的文章,其可能性是 $1000^{100}$ 次方,即 $10^{300}$。這是一個大到不可思議的數,遠遠超過原子數目(約 $10^{80}$)。機器需要從 $10^{300}$ 這麼多可能性中找一個合理的答案。 * **與分類問題的區別**: * **分類 (Classification)** 問題**不是**生成式 AI 的問題。 * 分類是讓機器從**有限的選項中**做選擇。 * 例如:Gmail 垃圾郵件偵測(只有「是垃圾郵件」或「不是垃圾郵件」兩個選項)。或者圖像辨識系統只判斷圖片中有貓還是有狗(只有兩個可能答案)。 * 當答案選項有限時,該問題被歸類為分類問題,而非生成式問題。 * **定位**:生成式人工智慧是人工智慧眾多可能的目標之一。 ### 3. 機制與深度學習的基礎概念 * **機器學習 (Machine Learning, ML)**:是一種技術,讓機器可以自動**從資料裡面找一個函式**。 * **參數 (Parameters)**:在機器學習中,函式中的未知數(例如 $F(x)=Ax+B$ 中的 A 和 B)稱為參數。 * **函式與模型**:用於解決複雜問題的函式(例如判斷圖片是貓還是狗的 $F(\text{圖片})$),通常非常複雜,可能需要上萬個參數。這個帶有大量未知參數的函式,在機器學習領域中稱為**模型 (Model)**。 * **訓練 (Training/Learning)**:將上萬個參數找出來的過程,就是機器學習的「學習」。這需要依賴**訓練資料**(給定輸入和輸出的限制關係)來完成。 * **類神經網路 (Artificial Neural Network)**:在機器學習領域中,通常將這個有上萬個參數的函式表示成**類神經網路**。 * **深度學習 (Deep Learning, DL)**:當使用類神經網路來描述這個帶有大量參數的函式,並將這些參數解出來時,這種技術就稱為深度學習。深度學習是機器學習的一個分支。 * **現代關係**:雖然機器學習(手段)和生成式 AI(目標)有交集,但由於生成式 AI 是非常困難的問題,今天的生成式 AI 通常都是利用**深度學習技術**來達成的。 ### 4. ChatGPT 的實現原理:文字接龍 * **ChatGPT 作為模型**:像 ChatGPT 這樣厲害的 AI,也可以被想像成一個函式,輸入是文字,輸出是 ChatGPT 的回答。這個函式非常複雜,可能有**上億個參數**。 * **Transformer 模型**:ChatGPT 背後使用的模型稱為 **Transformer**,它是類神經網路的一種。 * **創造力與挑戰**:生成式 AI 的核心挑戰在於,在測試時,它需要產生**訓練資料中從來沒有見過**的答案(例如寫一篇關於「空隙的聯想」的全新作文),這被認為是一種**創造力**。 * **核心精髓:文字接龍**:ChatGPT 背後的解決核心精神可以概括為「文字接龍」。 * 生成一個完整的複雜答案,被拆解成**一連串的文字接龍問題**。 * 例如,當給出「臺灣最高的山?」,模型不會直接輸出「玉山」,而是先預測句尾第一個合理的字,比如「是」。然後將「是」貼回輸入,再預測下一個字,直到輸出結束符號。 * **語言模型 (Language Model)**:能夠執行文字接龍的模型稱為**語言模型**。 * **從無限到有限**:文字接龍的優勢在於,機器的任務變成了**猜測下一個字**,而中文常用字是**有限的**(例如只有三四千個)。因此,原本生成一整篇複雜文章的難題,被轉化為**一系列的分類問題**(從有限選項中選出下一個字),從而變得可解。 ### 5. 生成概念的推廣與歷史 * **自迴歸生成 (Autoregressive Generation)**:將複雜物件拆解成較小的單元,並按照某種固定的順序生成出來的策略,被稱為自迴歸生成。語言模型(如 GPT)即採用了此策略。 * **圖像生成**:類似文字接龍,圖像也可以被拆解成像素,理論上可用「像素接龍」的方式來生成圖片。雖然過去有人嘗試過圖像版的 GPT,但這個方法後來並未流行起來。 * **歷史沿革**: * 生成式 AI 的概念並非今天才有。 * 老師在 2015 年開課時,相關主題被稱為「機器學習與**結構化學習**」,而結構化學習指的就是今天的生成式 AI。 * 儘管技術在短短 10 年內發生了翻天覆地的變化,但生成式 AI 的概念是延續至今的。 * **Google 翻譯**(2006 年上線)就是生成式 AI 的一個應用,因為翻譯要求機器產生新的、可能未出現在訓練資料中的合理文字。 * **今日的爆紅**:生成式 AI 一直存在,但為何它在今天突然爆紅,將會在後續課程中討論。 ### 【生成式AI導論 2024】第2講:今日的生成式人工智慧厲害在哪裡?從「工具」變為「工具人」 大綱 1. **生成式 AI 的進化:從「工具」到「工具人」** * 過去的 AI 屬於專才(如翻譯),功能單一,類似**工具**。 * 現在的 AI(如 ChatGPT)沒有特定功能,需要明確指令,更接近**多才多藝**的「工具人」。 * ChatGPT 是最具代表性的「工具人」。 2. **GPT-4 的全面能力與應用思維轉變** * GPT-4 功能遠超 GPT-3.5(如讀取檔案、寫程式、自訂 GPTs)。 * GPT-4 可**自行撰寫並執行**程式碼,表現得像一位工程師。 * **互動新思維**:不應問 AI 能為你做什麼,而應問「你想讓它做什麼」。 3. **生成式 AI 帶來的學術與倫理挑戰** * **內部運作研究**:研究 AI 如何理解世界(例如 LLaMA 對地理位置的內化認知)。 * **能力評估困境**:因其能力全面且使用者要求多變,評估模型優劣非常複雜,沒有標準答案。 * **安全與倫理**:生成式 AI 需面臨髒話、抄襲、歧視等問題,以及過度政治正確的風險。 4. **人類面對「工具人」的應對策略** * **策略一:改變自己 (Prompt Engineering)**:透過巧妙設計輸入(Prompt)來引導固定模型的輸出。 * **策略二:訓練自己的模型**:利用開源模型(如 LLaMA)進行參數調整(微調),以滿足特定需求。 *** ### 1. 生成式 AI 的進化:從「工具」到「工具人」 * **過去的 AI:專才與工具**:過去的生成式 AI,例如翻譯系統,通常被視為**專才**,它只做單一工作。例如,翻譯系統唯一的任務就是完成翻譯功能。這類過去的生成式 AI 比較像是一個**工具**。 * **今日的 AI:多才多藝的「工具人」**:像 ChatGPT 這樣的生成式 AI,沒有一個特定的功能。它雖然也可以做翻譯,但如果你直接給它一段中文,它不會立刻翻譯,因為它不知道你要求它做什麼。你必須明確下達指令,例如「我要把以下文句做翻譯」,它才知道你的要求是翻譯。 * **應用普及**:現在即使不是資訊工程背景的人,也都有「工具人」幫忙做課業報告。 * **代表性模型**:多才多藝的生成式 AI 不只 ChatGPT,還有 Google 的 Gemini、Microsoft 的 Copilot 等。但因為 **GPT 是最知名的,能力最全面**,因此在課堂上常以它來舉例。 ### 2. GPT-4 的全面能力與應用思維轉變 * **GPT-3.5 與 GPT-4 的區別**:GPT-3.5 是免費版本,GPT-4 則需要付費才能使用。GPT-4 的功能與 GPT-3.5 相比,有**不可同日而語**的提升。 * **GPT-4 獨有功能**:它可以讀取檔案、讀取圖片、進行網路搜尋、畫圖、使用其他工具,並支援客制化(即 **GPTs**)。 * **程式碼能力**:雖然 GPT-3.5 也可以寫程式,但 GPT-4 的厲害之處在於它可以**自行執行自己寫的程式**,表現得就像一位**工程師**。 * **實際應用範例(文字雲)**:老師示範如何指示 GPT-4 列出它能做的至少 30 件事項,並要求它將結果製作成**文字雲**。 * **自我修正**:GPT-4 在寫完程式後會執行,但第一次執行輸出結果顯示中文部分都是方框。 * **診斷問題**:當被提問「為什麼中文沒有顯示出來?」時,GPT-4 能解釋原因,指出可能是**字體不支援中文**。 * **解決方案**:GPT-4 建議在系統中安裝或指定一個包含中文字符支持的字體檔案。老師直接給予 GPT-4 一個中文的字體檔案,它隨後重寫程式並將字體放在正確位置呼叫,最終成功生成文字雲。 * **使用心法**:面對已進化成「工具人」的 AI,新的使用心法是:**不要問 ChatGPT 能為你做什麼,而是要問你想要它幫你做什麼**。只要你問對了問題、下對了指令,ChatGPT 就有機會(當然不是萬能)可以幫助你。 ### 3. 生成式 AI 帶來的學術與倫理挑戰 * **挑戰一:探究 AI 的內心世界**:由於這些 AI 具有強大且全面的能力,帶來了全新的研究議題:它們到底在想些什麼?它們眼中的世界是什麼樣子?。 * **地理位置實驗**:研究人員分析開源模型 **LLaMA**(Meta 開發)對世界各地地名的內化認知。結果顯示 LLaMA 心中地名與地球上的實際位置有相當程度的關係。 * **台灣地名實驗**:學生在 LLaMA 上進行類似實驗,只提供台灣區和里的名稱,不提供縣市名,測試其對台灣地理的理解。結果顯示 LLaMA 對於台灣地名的位置掌握度**相當有限**,點位分佈混亂。 * **TAIDE模型**:另一個名為 **TAIDE** 的模型,因為讀了較多繁體中文資料,對台灣的理解更深入,能夠提供更精確的回答。 * **挑戰二:能力評估的複雜性**: * **評估難題**:過去評估單一功能的工具很容易(例如只評估翻譯系統翻譯得好不好)。但對於能力全面的生成式 AI,很難評估,因為使用者可能提出**無限多種要求**,且即便是相同的要求,也可能有截然不同的解決方法。 * **「哈哈哈」測試**:老師提出一個無厘頭的要求:「請說哈 100 次」。 * **Gemini**:雖然做了,但笑到停不下來,超過 100 次。 * **TAIDE**:解釋自己是 AI 無法大笑,但可說 100 次,但隨後停止,認為沒有意義。 * **GPT-3.5**:直接拒絕,表示無法執行重複性的任務。 * **結論**:對於哪個模型做得最好,**沒有客觀答案**,每個人心裡的想法都不同。如果問老師,他會認為 LLaMA 做得最好,因為它至少努力嘗試了。 * **幻覺與犯錯**:模型會犯錯或出現幻覺,是因為它**努力嘗試想幫你**。如果模型想完全不犯錯,只需要拒絕回答所有問題即可。 * **挑戰三:安全與倫理**: * **開放式生成**:生成式 AI 的答案不是從既定選項中選擇,而是可以是任何答案。這導致我們必須擔心其輸出內容可能包含髒話、抄襲或歧視性內容。 * **防禦機制與破解**:雖然模型對髒話、抄襲、歧視等有一定程度的防禦能力(如 GPT-3.5 會拒絕直接說髒話),但很容易被**角色扮演**等方式騙過。 * **政治正確**:AI 為了避免價值判斷,會盡量讓答案「政治正確」,導致結果過度保守。例如,最近 Google Gemini 產圖事件,就是因為政治正確過頭而受到批評。 ### 4. 人類面對「工具人」的應對策略 面對 AI 已進化成「工具人」的現實,人類有兩個主要方向可以繼續有所作為: 1. **策略一:改變自己來強化模型 (Prompt Engineering)** * **原理**:對於線上模型(如 ChatGPT),我們無法更動其內部固定的函式或參數。 * **方法**:我們可以改變問問題的方式、提供更清楚的指令,或提供額外的資訊,讓固定的模型給出更好的輸出。 * **Prompt Engineering**:這是指給語言模型輸入的「**Prompt**」。如果輸出不如預期,可以透過**巧妙的設計**(Engineering 源自拉丁文,意為巧妙與設計)來改善 Prompt,引導模型給出想要的答案。這也被稱為「人類與人工智慧的溝通」。 2. **策略二:訓練自己的模型** * **目的**:當主流模型無法滿足需求時,可以打造自己的生成式 AI 模型。 * **方法**:利用開源模型(如 Meta 的 LLaMA),調整其內部的**參數**,得到一個調整後的模型,使其對於相同的輸入能產生想要的輸出。 * **挑戰**:調整參數並不容易,需要技術。這過程就像對機器動腦部手術,雖然可以解決一個問題,但也可能產生更多意想不到的副作用和問題。 --- 其他課程: [【生成式AI導論 2024】00~02 生成式AI介紹](https://hackmd.io/@JuitingChen/ByiS0S_Aex) [【生成式AI導論 2024】03~05 訓練不了人工智慧?你可以訓練你自己](https://hackmd.io/@JuitingChen/SJZdX5KAlx) [【生成式AI導論 2024】06~08 大型語言模型修練史](https://hackmd.io/@JuitingChen/H1vfEqYCee) [【生成式AI導論 2024】09~11 AI Agent、Transfoermer、可解釋性](https://hackmd.io/@JuitingChen/BybEB9KRxx) [【生成式AI導論 2024】12~14 淺談檢定大型語言模型能力和大型語言模型相關的安全性議題](https://hackmd.io/@JuitingChen/ByyxUcY0le) [【生成式AI導論 2024】15~16 生成式人工智慧的生成策略 和 Speculative Decoding](https://hackmd.io/@JuitingChen/H1sW_mfJZg) [【生成式AI導論 2024】17~18 有關影像的生成式AI 和 GPT-4o 可能的語音技術](https://hackmd.io/@JuitingChen/S1uFKmG1Zx)
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up