1. 程式人生 > >AI - Google的機器學習速成課程

AI - Google的機器學習速成課程

Google的機器學習速成課程

練習環境

在本地執行程式設計練習

Colaboratory

前提條件和準備工作

https://developers.google.com/machine-learning/crash-course/prereqs-and-prework

前提條件

掌握入門級代數知識。 
    您應該瞭解變數和係數、線性方程式、函式圖和直方圖(熟悉對數和導數等更高階的數學概念會有幫助,但不是必需條件)。

熟練掌握程式設計基礎知識,並且具有一些使用 Python 進行編碼的經驗。
    機器學習速成課程中的程式設計練習是通過 TensorFlow 並使用 Python 進行編碼的。
    您無需擁有任何 TensorFlow經驗,但應該能夠熟練閱讀和編寫包含基礎程式設計結構(例如,函式定義/呼叫、列表和字典、迴圈和條件表示式)的 Python 程式碼。

準備工作

Pandas 使用入門
    機器學習速成課程中的程式設計練習使用 Pandas 庫來操控資料集。
    如果您不熟悉 Pandas,建議您先學習Pandas 簡介教程,該教程介紹了練習中使用的主要 Pandas 功能。

低階 TensorFlow 基礎知識
   機器學習速成課程中的程式設計練習使用 TensorFlow 的高階 tf.estimator API 來配置模型。
   如果您有興趣從頭開始構建 TensorFlow 模型,請學習以下教程:
     - TensorFlow Hello World:在低階 TensorFlow 中編碼的“Hello World”。
     - TensorFlow 程式設計概念:演示了 TensorFlow 應用中的基本元件:張量、指令、圖和會話。
     - 建立和操控張量:張量快速入門 - TensorFlow 程式設計中的核心概念。此外,還回顧了線性代數中的矩陣加法和乘法概念。

主要概念和工具

https://developers.google.com/machine-learning/crash-course/prereqs-and-prework#key-concepts

數學

代數
- 變數、係數和函式
- 線性方程式
- 對數和對數方程式
- S型函式

線性代數
- 張量和張量等級
- 矩陣乘法

三角學
- Tanh(作為啟用函式進行講解,無需提前掌握相關知識)

統計資訊
- 均值、中間值、離群值和標準偏差
- 能夠讀懂直方圖

微積分(可選,適合高階主題)
- 導數概念(您不必真正計算導數)
- 梯度或斜率
- 偏導數(與梯度緊密相關)
- 鏈式法則(帶您全面瞭解用於訓練神經網路的反向傳播演算法)

Python

The Python Tutorial:https://docs.python.org/3/tutorial/

基礎 Python
- 定義和呼叫函式:使用位置和關鍵字引數
- 字典、列表、集合(建立、訪問和迭代)
- for 迴圈:包含多個迭代器變數的 for 迴圈(例如 for a, b in [(1,2), (3,4)])
- if/else 條件塊和條件表示式
- 字串格式(例如 '%.2f' % 3.14)
- 變數、賦值、基本資料型別(int、float、bool、str)
- pass 語句

中級 Python
- 列表推導式
- Lambda 函式

第三方Python庫(無需提前熟悉,在需要時查詢相關內容)

Matplotlib(適合資料視覺化)
- pyplot 模組
- cm 模組
- gridspec 模組

Seaborn(適合熱圖)
- heatmap 函式

Pandas(適合資料處理)
- DataFrame 類

NumPy(適合低階數學運算)
- linspace 函式
- random 函式
- array 函式
- arange 函式

scikit-learn(適合評估指標)
- metrics 模組

Bash