倉頡TensorBoost學習之旅——人工智能與深度學習實戰

董昱

  • 出版商: 清華大學
  • 出版日期: 2024-09-01
  • 售價: $534
  • 貴賓價: 9.5$507
  • 語言: 簡體中文
  • ISBN: 7302642311
  • ISBN-13: 9787302642312
  • 相關分類: DeepLearning
  • 立即出貨 (庫存 < 3)

  • 倉頡TensorBoost學習之旅——人工智能與深度學習實戰-preview-1
  • 倉頡TensorBoost學習之旅——人工智能與深度學習實戰-preview-2
  • 倉頡TensorBoost學習之旅——人工智能與深度學習實戰-preview-3
倉頡TensorBoost學習之旅——人工智能與深度學習實戰-preview-1

相關主題

商品描述

"本書以基礎知識和實例相結合的方式,詳細介紹倉頡TenserBoost的基本使用方法和常見技術,從最基本的神經元開始,講述神經網絡的發展歷程,以及深度神經網絡、捲積神經網絡和循環神經網絡的基本用法。 全書共分為11章,第1~4章介紹了倉頡TenserBoost的底層邏輯,探尋神經網絡的原理;第5~9章介紹了常用的算子,以及如何通過倉頡TenserBoost構建深度神經網絡;第10章和第11章分別介紹捲積神經網絡和循環神經網絡,並實現圖像識別和序列預測。 本書面向倉頡語言初學者,以及神經網絡、深度學習的初學者,無論您是否有倉頡語言的編程基礎,也無論您是否對深度學習是否瞭解都可以打開本書,一覽究竟。 "

作者簡介

董昱,華為開發者專家(HUAWEI Developer Experts)、倉頡社區講師(Cangjie Community Speaker)、倉頡庫開發者(Cangjie Library Developer),首批倉頡語言開發者,在軟件和算法設計等方面具有豐富的經驗。

目錄大綱

 

目錄

 

 

教學課件(PPT)

 

 

 

 

本書源碼

 

 

 

第1章初探深度學習

 

1.1人工智能的基本概念

 

1.2神經網絡的3次浪潮

 

1.2.1第1次浪潮: 感知機的誕生和應用

 

1.2.2第2次浪潮: 神經網絡的大發展

 

1.2.3第3次浪潮: 深度學習

 

1.3深度學習框架

 

1.3.1主流深度學習框架的對比

 

1.3.2昇思(MindSpore)

 

1.4本章小結

 

1.5習題

 

第2章倉頡語言快速入門

 

2.1倉頡語言的開發環境搭建

 

2.1.1安裝和配置倉頡語言編譯器

 

2.1.2第1個倉頡程序

 

2.2倉頡語言的基本語法

 

2.2.1變量和數據類型

 

2.2.2字符和字符串

 

2.2.3操作符和表達式

 

2.2.4條件結構和循環結構

 

2.2.5函數的定義和調用

 

2.3類和結構體

 

2.3.1類與對象

 

2.3.2繼承和多態

 

2.3.3接口

 

2.3.4結構體及其構造函數

 

2.4泛型和集合類型

 

2.4.1泛型類型

 

2.4.2泛型函數

 

2.4.3集合類型

 

2.5包管理工具

 

2.5.1包

 

2.5.2模塊

 

2.5.3庫

 

2.6本章小結

 

2.7習題

 

第3章自製多層感知機

 

3.1準備工作: 實現矩陣運算和讀取MNIST數據集

 

3.1.1矩陣和矩陣運算

 

3.1.2MNIST數據集

 

3.2自製多層感知機的實現

 

3.2.1多層感知機的構建

 

3.2.2多層感知機的訓練

 

3.2.3多層感知機的核心: 反向傳播算法

 

3.2.4隨機梯度下降和超參數的設置

 

3.2.5讓代碼運行起來

 

3.3本章小結

 

3.4習題

 

第4章自動微分

 

4.1自動微分的原理和實現

 

4.1.1微分類型

 

4.1.2自動微分的原理

 

4.1.3自動微分的實現

 

4.2倉頡的可微編程

 

4.2.1初探可微編程

 

4.2.2可微類型

 

4.2.3可微函數

 

4.2.4伴隨函數

 

4.2.5高階微分

 

4.3本章小結

 

4.4習題

 

第5章倉頡TensorBoost的環境搭建

 

5.1準備工作

 

5.2搭建MindSpore編譯環境

 

5.2.1顯卡驅動與CUDA的安裝

 

5.2.2編譯工具的安裝

 

5.2.3編譯依賴的安裝

 

5.3編譯並安裝MindSpore

 

5.4倉頡TensorBoost的環境配置

 

5.4.1倉頡TensorBoost的安裝

 

5.4.2檢查倉頡TensorBoost是否安裝成功

 

5.5環境配置中的常見問題

 

5.5.1更新Python版本後終端無法正常打開

 

5.5.2編譯MindSpore時出現OpenMPI編譯錯誤

 

5.5.3eigen包下載失敗

 

5.5.4通過SSH和Samba服務在Windows環境中開發倉頡TensorBoost

程序

 

5.6本章小結

 

5.7習題

 

第6章張量的基本用法

 

6.1張量

 

6.1.1張量的定義

 

6.1.2張量和數組的轉換

 

6.1.3張量的屬性

 

6.1.4張量的復制

 

6.2張量的基本運算

 

6.2.1加、減、乘、除、取餘

 

6.2.2無窮與非數

 

6.2.3矩陣運算

 

6.2.4張量的維度交換和矩陣轉置

 

6.3張量是可微類型

 

6.3.1動態圖和靜態圖

 

6.3.2張量的自動微分

 

6.4張量元組與參數

 

6.4.1張量元組

 

6.4.2參數

 

6.5本章小結

 

6.6習題

 

第7章構建神經網絡

 

7.1單層感知機實現線性回歸

 

7.1.1MindRecord數據集的讀取

 

7.1.2定義感知機

 

7.1.3計算代價函數並反向傳播求解梯度

 

7.1.4應用隨機梯度下降優化器更新感知機參數

 

7.1.5訓練感知機

 

7.2多層感知機實現數字識別

 

7.2.1MNIST數據集的讀取

 

7.2.2定義多層感知機

 

7.2.3計算代價函數並反向傳播求解梯度

 

7.2.4創建隨機梯度下降優化器更新網絡參數

 

7.2.5訓練多層感知機

 

7.3神經網絡的持久化

 

7.3.1運行環境管理和靜態圖的保存

 

7.3.2張量的持久化

 

7.3.3神經網絡模型的持久化

 

7.4本章小結

 

7.5習題

 

第8章張量的高級用法

 

8.1數學運算算子

 

8.1.1基礎數學運算算子

 

8.1.2統計運算

 

8.1.3稀疏算法

 

8.1.4邏輯運算

 

8.1.5張量的內存設置

 

8.2張量比較

 

8.2.1維度內的比較

 

8.2.2元素級的比較

 

8.2.3廣播機制

 

8.3張量的維度操作

 

8.3.1基本維度變換

 

8.3.2張量的切片和取值

 

8.3.3張量的合並與分割

 

8.3.4反轉元素

 

8.4本章小結

 

8.5習題

 

第9章深度神經網絡

 

9.1選擇合適的損失函數

 

9.1.1L1、L2範數損失函數

 

9.1.2熵和交叉熵

 

9.1.3交叉熵損失函數

 

9.1.4Softmax激活函數

 

9.2選擇合適的激活函數

 

9.2.1梯度消失和梯度爆炸

 

9.2.2Sigmoid及其衍生激活函數

 

9.2.3線性整流函數(ReLU)

 

9.2.4常用的激活函數

 

9.3選擇合適的優化器

 

9.3.1動量梯度下降

 

9.3.2自適應學習率

 

9.3.3Adam算法

 

9.4正則化與過擬合問題

 

9.4.1過擬合和欠擬合

 

9.4.2L1和L2正則化

 

9.4.3DropOut

 

9.5改進深度神經網絡

 

9.5.1採樣器、訓練數據集和驗證數據集的加載

 

9.5.2改進激活函數和損失函數

 

9.5.3改進優化器

 

9.6本章小結

 

9.7習題

 

第10章捲積神經網絡

 

10.1捲積神經網絡與圖像識別

 

10.1.1捲積和圖像捲積

 

10.1.2初識捲積神經網絡

 

10.2LeNet神經網絡

 

10.2.1LeNet5神經網絡結構

 

10.2.2手寫數字識別的實現

 

10.3VGG神經網絡

 

10.3.1CIFAR10數據集

 

10.3.2批標準化

 

10.3.3VGG16神經網絡結構

 

10.3.4圖片分類的實現

 

10.4本章小結

 

10.5習題

 

第11章循環神經網絡

 

11.1循環神經網絡基本原理

 

11.1.1初識循環神經網絡

 

11.1.2長短期記憶網絡

 

11.2用LSTM解決序列問題

 

11.2.1堆疊LSTM

 

11.2.2序列數據的表示方法

 

11.2.3預測航班載客量的實現

 

11.3本章小結

 

11.4習題

 

附錄A張量的操作符重載