Deep Learning 101, Taiwan’s pioneering and highest deep learning meetup, launched on 2016/11/11 @ 83F, Taipei 101
AI是一條孤獨且充滿惶恐及未知的旅程,花俏絢麗的收費課程或活動絕非通往成功的捷徑。
衷心感謝當時來自不同單位的AI同好參與者實名分享的寶貴經驗;如欲移除資訊還請告知。
由 TonTon Huang Ph.D. 發起,及其當時任職公司(台灣雪豹科技)無償贊助場地及茶水點心。
去 YouTube 訂閱 | Facebook | 回 GitHub Pages | 到 GitHub 點星 | 網站 | 到 Hugging Face Space 按愛心
大語言模型 | 語音處理 | 自然語言處理 | 電腦視覺 |
Large Language Model | Speech Processing | Natural Language Processing, NLP | Computer Vision |
用 AI 懂 AI
AI 技術 體驗/分享
手把手帶你一起踩 AI 坑:https://www.twman.org/AI
- 白話文手把手帶你科普 GenAI:淺顯介紹生成式人工智慧核心概念,強調硬體資源和數據的重要性。
- 大型語言模型直接就打完收工?:回顧 LLM 領域探索歷程,討論硬體升級對 AI 開發的重要性。
- 檢索增強生成(RAG)不是萬靈丹之優化挑戰技巧:探討 RAG 技術應用與挑戰,提供實用經驗分享和工具建議。
- 大型語言模型 (LLM) 入門完整指南:原理、應用與未來:探討多種 LLM 工具的應用與挑戰,強調硬體資源的重要性。
- 解析探索大型語言模型:模型發展歷史、訓練及微調技術的 VRAM 估算:探討 LLM 的發展與應用,硬體資源在開發中的作用。
- Diffusion Model 完全解析:從原理、應用到實作 (AI 圖像生成);深入探討影像生成與分割技術的應用,強調硬體資源的重要性。
- ASR/TTS 開發避坑指南:語音辨識與合成的常見挑戰與對策:探討 ASR 和 TTS 技術應用中的問題,強調數據質量的重要性。
- 那些 NLP 踩的坑:分享 NLP 領域的實踐經驗,強調數據質量對模型效果的影響。
- 那些語音處理踩的坑:分享語音處理領域的實務經驗,強調資料品質對模型效果的影響。
- 手把手學深度學習安裝環境:詳細介紹在 Ubuntu 上安裝深度學習環境的步驟,分享實際操作經驗。
AI 技術 開源/試用
High-Dimensional Continuous Control Using Generalized Advantage Estimation YouTube
2019/10/04 Cecile Liu
台灣人工智慧社團 第34次聚會重點匯整與強化學習 (GAE) 論文分享
本次針對「台灣人工智慧社團」第 34 次聚會的相關資料進行匯整,旨在以研究人員的視角,梳理社群活動的現況與重點技術分享的內容,並適時加入對新手入門有益的關鍵概念解釋。
社群現況與重要資訊
根據資料,社群的名稱已有所變更 [1-3]。雖然部分資料在提及時仍使用「台灣人工智慧社團」或簡稱「台灣人工智慧」 [1, 3, 4],但根據測試問題與答案的明確指出,新的社群名稱為「台灣人工智慧實驗室」 [2]。社群成立至今已有三年,本次是第 34 次的聚會 [3-5]。
社群鼓勵成員積極分享技術與商業相關的內容,例如學術文章討論、比賽資訊、甚至是商業產品介紹 [1-3]。這樣的開放氛圍有助於促進交流與合作,也是新手快速了解產業動態與應用方向的好機會 [1, 3]. 然而,社群也明訂了規範,嚴禁針對個人的攻擊性發言,以及過度洗版式的商業宣傳,強調維護良好的交流環境至關重要 [1-3]。
過往的聚會影片多數可在 YouTube 上找到 [3],部分早期影片則在 Facebook 上 [3]。整理後的完整清單可以在 101.tw 上找到 [3]。這為新手提供了豐富的學習資源,可以回顧過去的分享內容,快速補足背景知識。
社群設有五位負責人 [3, 4],其中一位被稱為「魔鬼」,有事可以找他 [3, 4, 6]。其他四位負責人的身份或稱謂在資料中未明確提及 [6]。
社群成果與展示
在本次聚會中,社群展示了一些具體的技術成果,這對於新手理解 AI 技術的實際應用非常有幫助:
- 開發中的機器人:現場展示了一台正在開發中的機器人 [3, 4]。這台機器人已具備基礎的避障功能 [3, 4]。未來的開發方向包括人臉辨識、自動回充以及導引使用者到指定位置等功能 [2-4]。這顯示了社群成員在硬體與軟體整合方面的努力。資料中提及了「秀東」可能與此機器人的展示有關 [3, 6]。
- 自然語言處理 (NLP) 工具:由「蠻牛小隊」團隊在過去一年多來開發了多項 NLP 相關工具 [3, 4, 6]。這個團隊隸屬於(或與)「台灣學報科技」有關 [3, 6, 7]。開發的工具相當廣泛,包括自動摘要、機器閱讀理解、情感分析、文本分類、NER(命名實體辨識)以及電話助理等 [3, 4, 7]。這顯示了社群在特定技術領域的深度耕耘 [1]。對於新手來說,了解這些是 NLP 領域的基礎任務與常見應用是很好的入門點。
- 資料標註工具:蠻牛小隊也開發了數據標註工具,這對於訓練 AI 模型至關重要 [7]。這些工具支援閱讀理解、情感分析、語音辨識以及填寫草稿等任務的資料標註 [7]。新手應了解,高品質的數據是訓練有效 AI 模型(特別是深度學習模型)的基石 [7]。
- 語音技術:聚會中也展示了開發中的語音辨識 (ASR) 和語音合成 (TTS) 工具 [4, 7]。資料中提到語音辨識可能會受到發音標準的影響 [7]。語音技術是人機互動的關鍵技術之一。
此外,資料中也提及社群將在 11 月 8 日舉辦三週年慶祝活動 [4, 5, 8]。據說會有具備製作飲料功能的機器人提供服務 [4, 5, 8, 9]。這是一個將技術與趣味結合的範例。
強化學習 (RL) 技術分享:Generalized Advantage Estimation (GAE)
本次聚會的一大核心內容是針對一篇關於 Generalized Advantage Estimation (GAE) 的強化學習論文進行深入分享 [1, 2, 4, 7]。分享者首先提到 GAE 在 RL 課程中通常是較後面的主題 [7],暗示它建立在 RL 的基礎概念之上。對於新手來說,理解這些基礎概念是掌握 GAE 的前提。
強化學習基礎概念回顧 (為新手補充)
RL 的目標是訓練一個 Agent 在環境中採取行動以最大化累積獎勵 [7, 10]。根據 Agent 是否學習環境的模型,RL 可分為兩大類 [2, 7]:
- Model-based RL:Agent 試圖學習環境的動態模型 (即狀態轉換和獎勵函數),然後利用這個模型來規劃或優化策略 [2, 7]。
- Model-free RL:Agent 不試圖學習完整的環境模型,而是直接學習一個策略 (Policy) 來決定在特定狀態下應該採取什麼行動,或者學習一個價值函數來評估狀態或行動的價值 [2, 7]. GAE 屬於 Model-free RL 的範疇 [7]。
Policy Gradient 是一種常用的 Model-free RL 方法,它直接學習一個參數化的策略 π(a | s; θ),並通過計算策略參數 θ 的梯度來更新策略,使其能夠選擇更有可能獲得高獎勵的行動 [1, 2, 4, 10, 11]。其基本思想是通過增加高獎勵軌跡的機率,降低低獎勵軌跡的機率 [11]。 |
在 Policy Gradient 的推導中,為了便於計算梯度,常會將策略機率的連乘形式通過取 log 轉換為 log 機率的連加形式 [2, 10, 12]. 這是一個數學上的技巧,將複雜的連乘變成更容易處理的連加 [2, 10]。
另一個重要概念是 Discount Factor (γ,折扣因子) [2, 12, 13]. 在計算累積獎勵時,我們通常會對未來較遠時間點的獎勵給予較低的權重 [2, 12, 13]. 這是因為當前行動對遙遠未來的影響較小,且有助於降低累積獎勵估計的方差 [2, 13]. γ 的值介於 0 到 1 之間,越接近 0 表示越只關注短期獎勵,越接近 1 表示越關注長期獎勵 [來源未明確指出範圍,但這是標準概念].
GAE 要解決的問題與核心思想
分享者指出,GAE 主要針對 Policy Gradient 中 Variance (方差) 過大的問題 [2, 14, 15]。方差過大會導致訓練過程不穩定,難以收斂 [14, 16]。這種高方差可能源於獎勵延遲 (Reward Delay) 或稀疏獎勵 (Sparse Reward) [2, 12, 14, 15]。例如,在某些任務中,Agent 必須完成一系列動作後才能獲得獎勵 (獎勵延遲) [15],或者在大部分時間都沒有獎勵,只有在達成特定目標時才有獎勵 (稀疏獎勵) [2, 12, 14, 17]。
** Advantage Function (優勢函數)** A(s, a) 是一個核心概念 [1, 2, 4, 14, 18]。它的定義是 Q(s, a) - V(s),其中 Q(s, a) 是在狀態 s 下採取行動 a 後所能獲得的累積期望獎勵 (包括當前步驟的獎勵),而 V(s) 則是在狀態 s 下遵循當前策略所能獲得的平均累積期望獎勵 (與具體行動無關,可以視為所有可能行動的 Q 值的期望) [2, 13, 14, 18]. 優勢函數衡量了在狀態 s 下採取特定行動 a 比按平均策略行動能夠多獲得多少累積獎勵 [2, 13, 14, 18]. 在 Policy Gradient 中使用 Advantage Function 作為獎勵項,可以有效降低方差 [13, 14].
GAE (Generalized Advantage Estimation) 的目的正是為了更有效地 估計 這個 Advantage Function [1, 2, 14]. GAE 的設計思想是結合了兩種 RL 中常用的價值估計方法:
- Monte Carlo 方法:通過完成一個完整的 Episode (從開始到結束),累計所有獎勵來估計軌跡的總價值 [1, 4, 12, 14, 19, 20]. 優點是無偏,缺點是方差大,且需要完整的 Episode,不適用於連續任務或獎勵延遲很大的情況 [12, 19, 20].
- Temporal Difference (TD) 方法:通過利用連續時間步之間的關係來更新價值估計 [1, 4, 12, 14, 19, 20]. 最簡單的 TD 學習 (TD(0)) 使用下一步驟的價值估計來更新當前步驟的價值估計 (TD error = R + γV(s’) - V(s)) [4, 12, 20]. 優點是方差較小,且可以進行步步更新,適用於連續任務;缺點是存在偏差,因為使用了估計值來更新估計值 [1, 14, 16].
GAE 通過引入一個參數 Lambda (λ) 來平衡單步 TD error 和蒙地卡羅估計 (可以視為多步 TD error 的加權和) 之間的權重 [2, 14, 20]. λ 的值介於 0 到 1 之間 [來源未明確指出範圍,但這是標準概念].
- 當 λ=0 時,GAE 的估計退化為單步 TD error [2, 14, 20].
- 當 λ=1 時,GAE 的估計接近於蒙地卡羅方法 (在無限 Horizon 的情況下) [2, 14, 20].
通過調整 λ,GAE 可以在 Bias (偏差) 和 Variance (方差) 之間取得一個權衡 (Trade-off) [1, 2, 4, 14, 16],目標是找到一個平衡點,使訓練過程更穩定且收斂更快 [14, 16].
GAE 與 Reward Shaping 的潛在聯繫
一個有趣且在分享中被強調的點是 GAE 的數學形式與 Reward Shaping (獎勵塑形) 在概念上存在意外的相似性 [1, 14, 16, 21]. Reward Shaping 是由著名學者吳恩達 (Andrew Ng) 提出的概念 [4, 14, 16]。它是一種解決稀疏獎勵問題的方法,通過人工設計額外的獎勵函數來引導 Agent 的學習過程,提供更密集、更有指導性的獎勵信號 [2, 12, 14, 16, 17]. 例如,在自動駕駛中,除了最終到達目標的獎勵,可以給予「保持在車道內」、「安全轉彎」等中間獎勵 [12, 17].
分享者展示了 GAE 的數學推導結果,發現其形式與 Reward Shaping 在處理獎勵延遲問題上的方法驚人地相似 [14, 16, 21]。這暗示了 GAE 某種程度上可以視為 Reward Shaping 的一種形式或一種理論上的佐證 [14, 16]. 這個相似性被描述為「詭異」 [14, 21],顯示了在理論研究中發現不同方法之間的深層聯繫是令人興奮的。
實務上的挑戰與相關技術
儘管 GAE 提供了改進 Advantage Function 估計的方法,但在實際應用中仍然存在挑戰 [1, 2, 14, 21, 22]。其中最主要的困難點在於 Value Function 的估計 (Value Function Estimation) [2, 14, 21, 22]。準確估計從一個狀態開始到結束的所有未來累積獎勵通常是未知或難以直接計算的 [2, 21]. 這通常需要藉助其他的 RL 算法或技術,例如使用神經網絡 (Value Network) 來逼近價值函數 [2, 14, 22].
分享者提到 TRPO (Trust Region Policy Optimization) 是一種常用的 Policy Gradient 算法,它常常與 GAE 結合使用 [1, 4, 14, 22]. TRPO 的核心思想是在每次更新策略時,限制新舊策略之間的差異在一個「信任區域」內 (通過 KL 散度衡量),以確保訓練過程的穩定性,避免策略更新過大導致性能崩潰 [14, 22]. 這也是解決 Policy Gradient 不穩定性的一種重要方法。
實驗結果與計算資源的討論
論文中的實驗展示了 GAE 結合 TRPO 在複雜控制任務上的表現,例如機器人學習站立和行走 (包括兩隻腳和四隻腳的機器人) [4, 14, 16]. 實驗結果圖顯示,通過選擇合適的 λ 值,可以實現較快的收斂速度 [14, 16]. 收斂速度快意味著 Agent 能更快學會執行任務 [14, 16].
然而,關於實驗的計算資源和訓練時間引發了一些討論 [5, 14, 22, 23]. 論文提到訓練一個複雜任務可能需要數天的計算時間 (例如,資料中提及 5.8 天來完成 1000 次迭代 [14, 22, 23])。儘管使用了 GPU [14],但具體配置和計算量級的描述引發了聽眾的疑問,尤其是在考慮到論文發表年份時 [5, 14, 22, 23]. 有聽眾分享了他們在 NLP 任務中使用 CPU 和 GPU 的經驗,對比了計算效率 [23]。這段討論提醒我們,理論算法的有效性最終需要通過實際的計算實現和實驗來驗證,且計算資源是影響研究進展和應用落地的實際考量 [1, 5, 14, 22, 23].
總結與展望
本次「台灣人工智慧實驗室」的聚會,不僅提供了社群近期發展和實際專案成果的概覽,更深入探討了強化學習領域中 GAE 這一重要的算法 [1, 3, 4]. 透過分享者對基礎概念的梳理以及對 GAE 核心思想、數學推導、與相關技術 (如 Reward Shaping, TRPO) 的講解,參與者得以一窺 RL 研究前沿如何解決實際問題 [1, 2, 4, 7, 10, 11, 13-18, 21, 22].
對於新手入門者而言,這次分享強調了幾個關鍵點:
- 掌握 RL 的基礎概念 (Policy Gradient, Value Function, TD, Monte Carlo 等) 是理解進階算法的基石 [7, 19].
- RL 的研究與應用常常需要面對如高方差、稀疏獎勵等實際挑戰 [2, 14, 15, 17].
- Gize Advantage Estimation (GAE) 是一種用於改善 Policy Gradient 穩定性與效率的重要技術,它巧妙地平衡了不同估計方法的優缺點 [1, 2, 14].
- 理論研究與實務實現相輔相成,算法的有效性需要在實際環境或模擬器中通過實驗驗證 [14, 22].
社群持續舉辦技術分享活動,為台灣 AI 領域的研究人員和工程師提供了寶貴的交流平台 [1, 14]. 透過成員的貢獻與分享,不僅能促進個人成長,也能推動整個社群在 AI 技術領域的發展 [1]. 社群鼓勵新成員的加入與參與 [3, 5, 8],一同邁向 AI 領域的下一個里程碑。