描述
內容簡介
深度學習擅長處理結構規則的多維資料(歐氏空間),但現實生活中,很多不規則的資料如:社群、電子商務、交通領域,多是之間的關聯資料。彼此間以龐大的節點基礎與複雜的互動關係形成了特有的圖結構(或稱拓撲結構資料),這些資料稱為「非歐氏空間資料」,並不適合用深度學習的模型去分析。
圖神經網路(Graph Neural Networks, GNN)是為了處理結構不規則資料而產生的,主要利用圖結構的資料,透過機器學習的方法進行擬合、預測等。 〇 在結構化場景中,GNN 被廣泛應用在社群網站、推薦系統、物理系統、化學分子預測、知識圖譜等領域。 市面上充滿 NN 的書,但卻沒有一本完整說明 GNN,倘若不快點學這個新一代的神經網路,你會用的普通神經網路馬上就會落伍了!非歐氏空間才是最貼近人類生活的世界,而要真正掌握非歐氏空間的問題解決,GNN 是你一定要學的技術,就由本書一步步帶領你完全攻略!
〇 使用 Graph 概念取代傳統的歐氏空間神經元
本書特色 ~GNN 最強入門參考書~ ● 以初學者角度從零開始講解,消除讀者學習過程跳躍感 |
作者簡介
李金洪
精通 C、Python、Java 語言,擅長神經網路、演算、協定分析、移動互聯網安全架構等技術,先後擔任過 CAD 演算工程師、架構師、專案經理、部門經理等職位。參與過深度學習領域某移動互聯網後臺的 OCR 項目,某娛樂節目機器人的語音辨識、聲紋識別專案,金融領域的若干分類專案。 |
目錄
【第一篇 入門 – PyTorch 基礎】
第 1 章 快速了解人工智慧與 PyTorch 1.1 圖神經網路與深度學習 1.2 PyTorch 是做什麼的 1.3 PyTorch 的特點 1.4 PyTorch 與 TensorFlow 各有所長 1.5 如何使用本書學好深度學習
第 2 章 架設開發環境 2.1 下載及安裝 Anaconda 2.2 安裝 PyTorch 2.3 熟悉 Anaconda 3 的開發工具 2.4 測試開發環境
第 3 章 PyTorch 基本開發步驟 -- 用邏輯回歸擬合二維資料 3.1 實例 1:從一組看似混亂的資料中找出規律 3.2 模型是如何訓練出來的 3.3 複習
第 4 章 快速上手 PyTorch 4.1 神經網路中的幾個基底資料型態 4.2 張量類別的基 4.3 張量與 NumPy 4.4 在 CPU 和 GPU 控制的記憶體中定義張量 4.5 生成隨機值張 4.6 張量間的數學運算 4.7 張量間的資料操作 4.8 Variable 類型與自動微分模組 4.9 定義模型結構的步驟與方法 4.10 模型的網路層
第 5 章 神經網路的基本原理與實現 5.1 了解深度學習中的神經網路與神經元 5.2 深度學習中的基礎神經網路模型 5.3 什麼是全連接神經網路 5.4 啟動函數--加入非線性因素,彌補線性模型缺陷 5.5 啟動函數複習 5.6 訓練模型的步驟與方法 5.7 神經網路模組 (nn) 中的損失函數 5.8 Softmax 演算法 -- 處理分類問題 5.9 最佳化器模組 5.10 學習率衰減 -- 在訓練的速度與精度之間找到平衡 5.11 實例 4:預測鐵達尼號船上的生存乘客
【第二篇 基礎 -- 神經網路的監督訓練與無監督訓練】 第 6 章 實例 5:辨識黑白圖中的服裝圖案 6.1 熟悉樣本:了解 Fashion-MNIST 資料集 6.2 製作批次資料集 6.3 建構並訓練模型 6.4 載入模型,並用其進行預測 6.5 評估模型 6.6 擴充:多顯示卡平行訓練
第 7 章 監督學習中的神經網路 7.1 從視覺的角度了解卷積神經網路 7.2 卷積神經網路的結構 7.3 卷積神經網路的實現 7.4 深層卷積神經網路 7.5 循環神經網路結構 7.6 常見的循環神經網路單元及結構 7.7 實例 11:用循環神經網路訓練語言模型 7.8 過擬合問題及最佳化技巧 7.9 神經網路中的注意力機制 7.10 實例 18:利用注意力循環神經網路對圖片分類
第 8 章 無監督學習中的神經網路 8.1 快速了解資訊熵 8.2 通用的無監督模型 -- 自編碼神經網路與對抗神經網路 8.3 自編碼神經網路 8.4 實例 19:用變分自編碼神經網路模型生成模擬資料 8.5 實例 20:用條件變分自編碼神經網路生成可控模擬資料 8.6 對抗神經網路 8.7 實例 21:用 WGAN-gp 模型生成模擬資料 8.8 實例 22:用條件 GAN 生成可控模擬資料 8.9 實例 23:實現帶有 W 散度的 GAN -- WGAN-div 模型 8.10 散度在神經網路中的應用 8.11 實例 25:用最大化深度相互資訊模型執行圖片搜索器
第 9 章 快速了解圖神經網路 -- 少量樣本也可以訓練模型 9.1 圖神經網路的相關基礎知識 9.2 矩陣的基礎 9.3 鄰接矩陣的幾種操作 9.4 實例 26:用圖卷積神經網路為論文分類 9.5 圖卷積神經網路 9.6 擴充實例:用 Multi-sample Dropout 最佳化模型的訓練速度 9.7 從圖神經網路的角度看待深度學習 9.8 圖神經網路使用拉普拉斯矩陣的原因
第 10 章 基於空間域的圖神經網路實現 10.1 重新認識圖卷積神經網路 10.2 實例 27:用圖注意力神經網路為論文分類 10.3 圖神經網路常用函數庫 – DGL 函數庫 10.4 DGLGraph 圖的基本操作 10.5 實例 28:用帶有殘差結構的多層 GAT 模型實現論文分類 10.6 圖卷積模型的缺陷 10.7 實例 29:用簡化圖卷積模型實現論文分類 10.8 實例 30:用圖濾波神經網路模型實現論文分類 10.9 實例 31:用深度圖相互資訊模型實現論文分類 10.10 實例 32:用圖同構網路模型實現論文分類 10.11 實例 33:用APPNP模型實現論文分類 10.12 實例 34:用JKNet模型實現論文分類 10.13 複習 |
序
在深度神經網路技術剛剛興起的那幾年,圖型、語音、文字等形式的資料已經可以在深度學習中被極佳地應用,並獲得了很好的效果,這促使大量的相關應用進入實用階段,如人臉辨識、語音幫手和機器翻譯等。儘管如此,深度學習一直無法極佳地對其他形式的資料 (如圖資料) 進行有效處理。圖資料在業界有更多的應用場景,如社群網站場景中,可以找到圖資料的應用。圖神經網路的出現極佳地填補了上述技術空白,實現了圖資料與深度學習技術的有效結合。圖神經網路是一類基於深度學習處理圖域資訊的方法。它是圖型分析方法與深度神經網路的融合,涉及神經網路和圖型分析的知識。
本書特色 (1) 知識系統,逐層遞進
(2) 內容貼近技術趨勢
(3) 圖文結合,化繁為簡
(4) 理論和實踐相結合,便於讀者學以致用 本書在撰寫時採用了兩種介紹知識的方式: 為了不讓讀者閱讀時感到枯燥,本書將上述兩種方式穿插使用。 在重要的基礎知識後面,本書用特殊格式的文字列出提示,這些提示是作者多年的經驗累積,希望可以幫助讀者在學習過程中掃除障礙,消除困惑,抓住重點。
(5) 在基礎原理之上,注重通用規律
(6) 站在初學者的角度講解,內容系統,更易學習
由於撰寫過程倉促,書中難免存在不足之處,希望讀者們閱讀後給予回饋,以便我們對本書進行修訂和完善。本書編輯的聯繫電子郵件為 zhangtao@ptpress.com.cn。本書由大蛇智慧網站提供有關內容的技術支援。在閱讀過程中,如有不了解之處,可到討論區 https://bbs.aianaconda.com 提問。 作者 |