Deep Learning 101

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. 發起,及其當時任職公司(台灣雪豹科技)無償贊助場地及茶水點心。

Deep Learning 101 Buy Me A Coffee

去 YouTube 訂閱 | Facebook | 回 GitHub Pages | 到 GitHub 點星 | 網站 | 到 Hugging Face Space 按愛心

2018/07/06, Jiero Ho, Dynamic Routing Between Capsules

膠囊網路中的動態路由機制 (Dynamic Routing Between Capsules)

分享者:Jiero Ho | 日期:2018/07/06

🎵 不聽可惜的 NotebookLM Podcast @ Google 🎵

區塊鏈智能合約安全現況與風險 Blockchain Smart Contract Security

從研究的視角來看,區塊鏈技術,特別是智能合約的普及,帶來了新的安全挑戰。資料顯示,僅在 2018 年上半年,全球區塊鏈行業因攻擊事件造成的損失就高達 11.5 億美元,這已經超過了 2016 年全年的總和,可見問題的嚴重性。對於初學者來說,了解這些風險是進入該領域研究的第一步。

主要的安全風險 Key Security Risks

  • 釣魚網站與詐騙:針對使用者或專案方常見的攻擊手法,例如仿冒交易所(如幣安)或知名人士(如 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 在内的方法對合約位元碼進行掃描和分析,提供安全評分和解析。儘管智能合約的安全性評分可能不是平台整體分數的主要組成部分。

對於初入區塊鏈安全領域的研究者,了解這些基本概念、常見攻擊類型以及現有的檢測和評估工具,是開展進一步研究的基礎。

深度學習的挑戰與新探索:以膠囊網路為例 Deep Learning Challenges & Capsule Networks

卷積神經網路(CNN)在圖像識別領域取得了巨大成功,甚至在 ImageNet 等比賽中超越了人類平均水平。然而,這項技術也面臨著一些瓶頸和挑戰,引發了學術界對其局限性的反思,甚至有人提出了「深度學習的冬天來了」的觀點。

CNN 主要的挑戰 Key CNN Challenges

  • 對訓練資料集的強烈依賴與泛化能力不足:CNN 模型高度依賴於訓練資料的特性。如果遇到與訓練資料集分佈差異較大、或經過變形的圖像(如 CIFAR-10 的變形數據集),模型的準確度會大幅下降。這表明模型可能過度擬合了特定資料集的細節,而未能真正學到物體的本質特徵,缺乏足夠的泛化能力。
  • 處理物體變形(如旋轉、縮放、位置變化)的效率問題:傳統 CNN 主要利用池化層來實現對物體位置和角度變化的「等價性」(Invariance),即識別出物體是同一類別,而不關心其具體的姿態或位置。為了學習這種不變性,CNN 需要看到大量不同變形角度的訓練樣本。這需要龐大的資料集和計算資源。

Geoffrey Hinton,這位在深度學習領域舉足輕重的人物,也是 CNN 的批評者之一。他對 CNN 在處理空間層次關係和物體變形上的不足表示擔憂,並早在 2011 年就提出了「膠囊網路」(Capsule Network)的初步想法,包含 Autoencoder 的概念,旨在克服 CNN 的這些局限性。

膠囊網路 (Capsule Networks) Introduction to Capsule Networks

膠囊網路是一種新型的神經網路架構,其核心思想是用「膠囊」(Capsule)取代傳統神經網路中的標量神經元。一個膠囊的輸出不再是一個單一的數值,而是一個向量(Activation Vectors)。這個向量的「長度」代表了該向量所表示的實體(如物體或物體的一部分)存在的機率(通常被約束在 0 到 1 之間),而向量的「方向」則代表了實體的各種「屬性」(如位置、角度、大小、變形程度甚至顏色等)。

關鍵組成部分與概念 Key Components & Concepts

  • Activation Vectors:膠囊的輸出向量,其長度代表實體存在機率,方向代表屬性。
  • Affine Transform Function:用於轉換低級別膠囊到高級別膠囊的輸出。
  • Squashing Function:一個非線性函數,用於將膠囊輸出向量的長度「壓縮」到 0 到 1 的範圍,以便其可以被解釋為機率,同時保持向量的方向不變。
  • Routing by Agreement (動態路由):核心機制之一。它是一種迭代的路由演算法,用於確定低級別膠囊的輸出應該「發送」到哪些高級別膠囊。基於「協議」或「一致性」:如果低級別膠囊的輸出轉換後與某個高級別膠囊的「預測」向量對齊,兩者間連接權重加強。這使網路能學到物體部分的空間層次關係,與 CNN 的最大池化不同。
  • Decoder (解碼器):訓練過程中包含,用於從最終膠囊表示重建原始輸入圖像,驗證膠囊是否成功捕捉關鍵特徵和屬性,體現 Autoencoder 設計理念。

膠囊網路的目標是實現對物體變形的「等變性」(Equivariance),而非 CNN 的等價性。這意味著當物體發生變形時,其膠囊表示的向量也會以可預測的方式隨之變動。這使得膠囊網路有望在看到少量不同變形的樣本後,就能理解該物體的各種變形姿態,從而可能只需要比 CNN 少得多的資料就能進行訓練。

目前挑戰 Current Challenges

  • 計算量大與訓練速度慢:尤其在處理大型圖像時,動態路由等機制需要迭代計算。
  • 在複雜圖像數據集上的效果仍需驗證和優化:目前在 MNIST 等簡單數據集上表現優異,但在 ImageNet 等複雜數據集上的競爭力有待更多研究。

從研究生的角度來看,膠囊網路代表了後 CNN 時代,研究者探索新神經網路架構的一種方向。理解其動機、核心思想與工作原理,對於未來在機器學習領域進行創新和解決實際問題具有啟發意義。

其他相關技術活動與研究方向 Other Related Activities & Research

除了區塊鏈安全和膠囊網路,資料中也提及了一些其他值得關注的技術活動和研究方向,這反映了當前技術領域的熱點:

  • 技術交流與分享會:學術與業界社群會定期舉辦分享會。例如關於「膠囊網路」的分享,預計的「推薦系統」分享會(九月)和邀請老師演講計畫(十一月後)。還有關於「圖像增強」(Image Enhancement)論文的分享會(八月十七日),技術已應用到 Photogen APP。
  • 駭客松 (Hackathon):結合實際應用與技術挑戰。例如 PicCollage 舉辦的駭客松(八月十八至十九日),題目涵蓋物聯網(IoT,使用 Google Voice Kit)和深度學習(GAN 美食圖像生成)。常與業界或政府合作,提供真實資料(如台北市政府交通 Log)和技術支援(如動見未來 SoundAI 中文語音識別)。
  • R2D2 方法在資安領域的應用:除了智能合約,R2D2 方法過去曾應用於 ASIACrypt 和澳洲某會議發表內容,暗示其在更廣泛資安領域(如病毒檢測)的潛力。

總體而言,這些活動和研究方向都指向了當前技術的前沿:智能合約安全、新型神經網路、語音識別、圖像生成、物聯網、推薦系統等。對於研究人員和初學者而言,了解這些領域的發展動態,積極參與社群交流和實踐活動,是拓展視野和提升能力的重要途徑。