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 技術 開源/試用
🎵 不聽可惜的 NotebookLM Podcast @ Google 🎵
Dynamic Routing Between Capsules YouTube
[網頁摘要版] 2018/07/06, Jiero Ho, Dynamic Routing Between Capsules
2018/07/06 Jiero Ho
區塊鏈智能合約安全現況與風險
從研究的視角來看,區塊鏈技術,特別是智能合約的普及,帶來了新的安全挑戰。資料顯示,僅在 2018 年上半年,全球區塊鏈行業因攻擊事件造成的損失就高達 11.5 億美元,這已經超過了 2016 年全年的總和,可見問題的嚴重性。對於初學者來說,了解這些風險是進入該領域研究的第一步。
主要的安全風險包含:
- 釣魚網站與詐騙:這是針對使用者或專案方常見的攻擊手法,例如仿冒交易所(如幣安)或知名人士(如 Vitalik 或 Elon Musk)的社群媒體頁面或網站,誘騙使用者洩漏敏感資訊或轉移資金。
- 程式碼層面的漏洞 (Code Vulnerabilities):智能合約本身就是一段運行在區塊鏈上的程式碼(bytecode)。如同所有軟體,智能合約也可能存在程式錯誤或邏輯缺陷。資料中提到,一個嚴重的漏洞可能導致「資料溢出」,讓攻擊者得以憑空創造代幣。
- 交易系統 API 故障或被利用:即使合約本身沒問題,底層的交易系統或其 API 也可能存在漏洞或故障,導致巨大損失。
- 大量智能合約存在問題:有研究(例如新加坡國立大學的研究)指出,大量部署在以太坊主鏈上的智能合約存在安全問題。
- ICO 專案的高失敗率:超過九成的首次代幣發行 (ICO) 專案最終失敗或不可靠,部分原因可能與其安全問題相關。這也說明了在追求創新同時,應謹慎評估項目的可靠性與安全性。
針對這些安全問題,學術界和業界都在積極探索審計(Audit)方法。審計就是對智能合約程式碼進行安全審查。傳統的方法可能包括靜態分析、符號執行或邏輯驗證。
資料中特別介紹了一種結合深度學習的方法,稱作 R2D2 方法,用於智能合約安全檢測。其核心思想是將智能合約的位元碼(bytecode,編譯後的機器碼形式)轉換成彩色圖片進行分析。具體做法是將位元碼中特定的數值對應到 RGB 顏色值(例如 606060 轉成 969696)。然後將整個位元碼掃描並生成一張彩色圖片。接著,利用訓練好的深度學習模型(基於 CNN)來識別圖片中的特徵模式,從而判斷合約是否存在已知的安全漏洞或問題。這種方法的優勢在於,被標記為有問題的合約通常確實存在問題,信任度較高,這與傳統防毒軟體識別的不確定性不同。
為了協助使用者評估 ICO 和智能合約的安全性,存在如 rating.io (ingpocket.net) 這樣的平台。該平台提供多方面的評估功能:
- ICO 評估:蒐集並分析 ICO 專案的多項公開指標,例如社群媒體(Facebook, Twitter, Telegram)熱度、GitHub 程式碼更新頻率、團隊資訊透明度等。這些資訊會被加權計算出一個綜合分數,作為可靠性的參考。
- 智能合約檢測:平台會同步監控以太坊主鏈上新增的合約,並利用包括 R2D2 在內的方法對合約位元碼進行掃描和分析,提供安全評分和解析。儘管智能合約的安全性評分可能不是平台整體分數的主要組成部分。
對於初入區塊鏈安全領域的研究者,了解這些基本概念、常見攻擊類型以及現有的檢測和評估工具,是開展進一步研究的基礎。
深度學習的挑戰與新探索:以膠囊網路為例
卷積神經網路(CNN)在圖像識別領域取得了巨大成功,甚至在 ImageNet 等比賽中超越了人類平均水平。然而,這項技術也面臨著一些瓶頸和挑戰,引發了學術界對其局限性的反思,甚至有人提出了「深度學習的冬天來了」的觀點。
CNN 主要的挑戰包括:
- 對訓練資料集的強烈依賴與泛化能力不足:CNN 模型高度依賴於訓練資料的特性。如果遇到與訓練資料集分佈差異較大、或經過變形的圖像(如 CIFAR-10 的變形數據集),模型的準確度會大幅下降。這表明模型可能過度擬合了特定資料集的細節,而未能真正學到物體的本質特徵,缺乏足夠的泛化能力。
- 處理物體變形(如旋轉、縮放、位置變化)的效率問題:傳統 CNN 主要利用池化層來實現對物體位置和角度變化的「等價性」(Invariance),即識別出物體是同一類別,而不關心其具體的姿態或位置。為了學習這種不變性,CNN 需要看到大量不同變形角度的訓練樣本。這需要龐大的資料集和計算資源。
Geoffrey Hinton,這位在深度學習領域舉足輕重的人物,也是 CNN 的批評者之一。他對 CNN 在處理空間層次關係和物體變形上的不足表示擔憂,並早在 2011 年就提出了「膠囊網路」(Capsule Network)的初步想法,包含 Autoencoder 的概念,旨在克服 CNN 的這些局限性。
膠囊網路 (Capsule Networks) 是一種新型的神經網路架構,其核心思想是用「膠囊」(Capsule)取代傳統神經網路中的標量神經元。一個膠囊的輸出不再是一個單一的數值,而是一個向量(Activation Vectors)。這個向量的「長度」代表了該向量所表示的實體(如物體或物體的一部分)存在的機率(通常被約束在 0 到 1 之間),而向量的「方向」則代表了實體的各種「屬性」(如位置、角度、大小、變形程度甚至顏色等)。
膠囊網路的關鍵組成部分和概念包括:
- Activation Vectors:膠囊的輸出向量,其長度代表實體存在機率,方向代表屬性。
- Affine Transform Function:用於轉換低級別膠囊到高級別膠囊的輸出。
- Squashing Function:一個非線性函數,用於將膠囊輸出向量的長度「壓縮」到 0 到 1 的範圍,以便其可以被解釋為機率,同時保持向量的方向不變。這類似於傳統神經元的活化函數,但作用於向量。
- Routing by Agreement (動態路由):這是膠囊網路的核心機制之一。它是一種迭代的路由演算法,用於確定低級別膠囊的輸出應該「發送」到哪些高級別膠囊。這個過程是基於「協議」或「一致性」的:如果低級別膠囊的輸出經過轉換後與某個高級別膠囊的「預測」或「姿態」向量對齊(agreement),那麼兩者之間的連接權重就會被加強,該低級別膠囊的輸出就更有可能被發送到該高級別膠囊。這使得網路能夠學到物體部分的空間層次關係,例如眼睛、鼻子、嘴巴如何組合成一張臉。這與 CNN 的最大池化(Max Pooling)不同,最大池化簡單地選擇最大值並丟棄其他資訊,而動態路由則通過協商過程保留了更多的空間資訊。
- Decoder (解碼器):在膠囊網路的訓練過程中,通常會包含一個解碼器,用於從最終的膠囊表示重建出原始輸入圖像。這有助於驗證膠囊是否成功捕捉到了物體的關鍵特徵和屬性。這也體現了其 Autoencoder 的設計理念。
膠囊網路的目標是實現對物體變形的等變性(Equivariance),而非 CNN 的等價性。這意味著當物體發生變形(如旋轉或平移)時,其膠囊表示的向量也會以一種可預測的方式隨之變動。這使得膠囊網路有望在看到少量不同變形的樣本後,就能理解該物體的各種變形姿態,從而可能只需要比 CNN 少得多的資料就能進行訓練。例如,理論上,膠囊網路可能只需看過少量種類的貓,就能識別全世界的貓,這比 CNN 需要大量不同毛色、姿態的貓圖像來學習不變性要高效。
然而,目前的膠囊網路仍面臨挑戰:
- 計算量大與訓練速度慢:特別是在處理大型圖像時,動態路由等機制需要迭代計算,導致訓練和推斷過程較慢。
- 在複雜圖像數據集上的效果仍需驗證和優化:目前膠囊網路在 MNIST 這類簡單圖像數據集上表現優異,但在 ImageNet 等大型、複雜數據集上的成功案例和與 CNN 競爭的能力還有待更多研究。
從研究生的角度來看,膠囊網路代表了後 CNN 時代,研究者探索新神經網路架構的一種方向。理解其動機、核心思想與工作原理,對於未來在機器學習領域進行創新和解決實際問題具有啟發意義。
其他相關技術活動與研究方向
除了區塊鏈安全和膠囊網路,資料中也提及了一些其他值得關注的技術活動和研究方向,這反映了當前技術領域的熱點:
- 技術交流與分享會:學術與業界社群會定期舉辦分享會,討論最新的研究成果。例如,資料中提到了關於「膠囊網路」的分享會,以及未來預計舉辦的「推薦系統」分享會(九月)和邀請老師進行演講的計畫(十一月後)。還有一次關於「圖像增強」(Image Enhancement)論文的分享會(八月十七日),這項技術也已被應用到如 Photogen 的 APP 中。
- 駭客松 (Hackathon):結合實際應用與技術挑戰的活動。資料中提到 PicCollage 舉辦的駭客松(八月十八至十九日),其題目涵蓋了物聯網(IoT,使用 Google Voice Kit 進行語音應用開發)和深度學習(使用 GAN 進行美食圖像生成)。這類活動常與業界或政府合作,提供真實世界的資料(如台北市政府提供的交通 Log 資料)和技術支援(如動見未來 SoundAI 提供的中文語音識別服務及 Workshop),為參賽者提供實踐和創新的平台。對於新手而言,參與駭客松是快速學習和將理論應用於實踐的好機會。
- R2D2 方法在資安領域的應用:除了智能合約,資料中也提到 R2D2 方法過去曾應用於 ASIACrypt 和澳洲某會議上發表的內容,暗示其在更廣泛資安領域(如病毒檢測)的潛力。
總體而言,這些活動和研究方向都指向了當前技術的前沿:智能合約安全、新型神經網路、語音識別、圖像生成、物聯網、推薦系統等。對於研究人員和初學者而言,了解這些領域的發展動態,積極參與社群交流和實踐活動,是拓展視野和提升能力的重要途徑。從提供的資料可以看出,台灣在這些領域也有活躍的研究和開發社群。