Hands-on Machine Learning with Scikit-Learn and TensorFlow


前言

         機器學習海嘯

         在你的項目中使用機器學習

         目標和方法

         預備知識

         路線圖

         其他資源

         使用本書的規則

         代碼使用范例

         O’Reilly Safari

         How to Contact Us

         鳴謝

第一部分 機器學習的基本原理

         第一章 機器學習的風景

                   什么是機器學習

                   為什么使用機器學習

                   機器學習系統的種類

                            有監督和無監督學習

                                     有監督學習

                                     無監督學習

                                     半監督學習(Semisupervised learning)

                                     強化學習

                            批量和在線學習

                                     批量學習

                                     在線學習

                            基於實例的學習 vs 基於模型的學習

                                     基於實例的學習

                                     基於模型的學習

                                               Example 1-1. Training and running a linear model using Scikit-Learn

                   機器學習的主要挑戰

                            缺少訓練數據

                            缺少代表性的訓練數據

                                     一個關於抽樣偏差的著名例子

                            低質量數據

                            不相關的特征

                            訓練集數據過擬合

                            訓練集數據欠擬合

                            Stepping Back(重點回顧)

                            測試和驗證

                                     沒有免費午餐定理

                            練習

         第二章 端到端的機器學習項目

                   使用真實數據

                   全局概覽

                            問題框架

                                     流程(piplines)

                            性能度量

                                     符號

                            假設檢驗

                   獲取數據

                            創建工作空間

                                     創建一個獨立的環境

                            下載數據

                            數據概覽

                            創建一個測試集

                   數據分析與可視化

                            可視化地理數據

                            尋找相關性

                            特征組合的實驗

                   為機器學習算法准備數據

                            數據清洗

                            處理文本和類別特征

                            自定義變換

                            特征縮放

                            變換流程

                   模型選擇和模型訓練

                            在數據集上訓練和評估

                            使用交叉驗證實現更好的評估

                   模型調優

                            網格搜索

                            隨機搜索

                            方法集成

                            分析最好模型的誤差

                            在測試集上評估你的系統

                   啟動,監控和維護機器學習系統

                   試試看!

                   練習

         第三章 分類

                   MNIST數據集

                            from sklearn.datasets import fetch_mldata

                   訓練一個二分類器

                            from sklearn.linear_model import SGDClassifier

                   性能測量

                            使用交叉驗證測量准確度

                                     實現交叉驗證

                                               from sklearn.model_selection import StratifiedKFold

                                               from sklearn.base import clone

                                               from sklearn.model_selection import cross_val_score

                                               from sklearn.base import BaseEstimator

                            混淆矩陣

                                     from sklearn.model_selection import cross_val_predict

                                     from sklearn.metrics import confusion_matrix

                            准確率和召回率

                                     from sklearn.metrics import precision_score, recall_score

                                     from sklearn.metrics import f1_score

                            精度和召回的權衡

                                     from sklearn.metrics import precision_recall_curve

                            ROC曲線

                                     from sklearn.metrics import roc_curve

                                     from sklearn.metrics import roc_auc_score

                                     from sklearn.ensemble import RandomForestClassifier

                   多分類

                            from sklearn.multiclass import OneVsOneClassifier

                            from sklearn.preprocessing import StandardScaler

                  誤差分析

                   多標簽分類

                            from sklearn.neighbors import KNeighborsClassifier

                   多輸出分類

                   練習

         第四章 訓練模型

                   線性回歸

                            正規方程

                                     from sklearn.linear_model import LinearRegression

                            計算復雜度

                   梯度下降

                            批量梯度下降

                                     收斂速度

                            隨機梯度下降

                                     from sklearn.linear_model import SGDRegressor

                            Mini-batch梯度下降

                   多項式回歸

                            from sklearn.preprocessing import PolynomialFeatures

                   學習曲線

                            from sklearn.metrics import mean_squared_error

                            from sklearn.model_selection import train_test_split

                            from sklearn.pipeline import Pipeline

                            偏差和方差的平衡

                   線性模型的正則化

                            嶺回歸

                                     from sklearn.linear_model import Ridge

                            Lasso回歸

                            彈性網絡

                                     from sklearn.linear_model import ElasticNet

                            早停

                                     from sklearn.base import clone

                   邏輯回歸

                            概率估計

                            模型訓練和損失函數

                            決策邊界

                                     from sklearn import datasets

                                     from sklearn.linear_model import LogisticRegression

                            Softmax回歸

                                     交叉熵損失

                   練習

         第五章 支持向量機

                   線性可分支持向量機

                            軟間隔分類

                                     from sklearn.svm import LinearSVC

                   非線性支持向量機

                            多項式核函數

                                     from sklearn.svm import SVC

                            添加相似度特征

                            高斯核函數

                            計算復雜度

                   支持向量回歸

                            from sklearn.svm import LinearSVR

                   高級選項

                            決策函數和預測

                            訓練目標

                            二次規划

                            拉格朗日對偶

                            核化的支持向量機

                            在線的支持向量機

                                     Hinge Loss

                   練習

         第六章 決策樹

                   訓練和可視化決策樹

                            from sklearn.tree import DecisionTreeClassifier

                            from sklearn.tree import export_graphviz

                   預測

                            模型的可解釋性:白盒和黑盒

                   評估類別概率

                   CART訓練算法

                   計算復雜度

                   基尼系數還是信息熵

                   正則化參數

                   決策樹回歸

                            from sklearn.tree import DecisionTreeRegressor

                   不穩定性

                   練習

         第七章 集成學習和隨機森林

                   投票分類器

                            from sklearn.ensemble import RandomForestClassifier

                            from sklearn.ensemble import VotingClassifier

                            from sklearn.linear_model import LogisticRegression

                            from sklearn.svm import SVC

                            from sklearn.metrics import accuracy_score

                   Bagging and Pasting

                            Bagging and Pasting in Scikit-Learn

                                     from sklearn.ensemble import BaggingClassifier

                            Out-of-Bag評估

                                     from sklearn.metrics import accuracy_score

                   隨機補丁和隨機子空間

                   隨機森林

                            Extra-Trees

                            特征重要度

                                     from sklearn.ensemble import RandomForestClassifier

                   Boosting

                            AdaBoost

                                     from sklearn.ensemble import AdaBoostClassifier

                            Gradient Boosting

                                     from sklearn.tree import DecisionTreeRegressor

                                     from sklearn.ensemble import GradientBoostingRegressor

                   Stacking

                   練習

         第八章 降維

                   維數災難

                   降維的主要方法

                            投射

                            流形學習

                   PCA

                            保存方差

                            主成分

                            投射到d維

                            Using Scikit-Learn

                                     from sklearn.decomposition import PCA

                            解釋方差比

                            選擇正確的維數

                            PCA壓縮

                            增量PCA

                                     from sklearn.decomposition import IncrementalPCA

                            隨機PCA

                            核化PCA

                                     from sklearn.decomposition import KernelPCA

                                     選擇核函數和超參數調優

                            局部線性嵌入

                                     from sklearn.manifold import LocallyLinearEmbedding

                            其他的降維技術

                            練習

第二部分 神經網絡和深度學習

         第九章 TensorFlow的安裝與使用

                   安裝

                   創建你的第一個計算圖並在會話里運行

                            import tensorflow as tf

                   管理計算圖

                   節點值的生命周期

                   使用TensorFlow實現線性回歸

                   使用TensorFlow實現梯度下降

                            手工計算梯度

                            使用自動求導

                            使用優化器

                   使用數據訓練算法

                   模型的保存與重用

                   使用TensorBaord可視化計算圖和訓練曲線

                   命名空間

                   模塊化

                   共享變量

                   練習

         第十章 人工神經網絡

                   從生物學到人工神經元

                            生物學的神經元

                            用神經元進行邏輯運算

                            感知機

                                     from sklearn.linear_model import Perceptron

                            多層感知機和反向傳播

                   用TensorFlow的高級API訓練一個多層感知機

                   使用普通的TensorFlow訓練一個DNN

                            開發階段

                                     from tensorflow.contrib.layers import fully_connected

                            執行階段

                                     from tensorflow.examples.tutorials.mnist import input_data

                            使用神經網絡

                   調優神經網絡的超參數

                            隱藏層的數量

                            每個隱藏層神經元的個數

                            激活函數

                   練習

         第十章 訓練深度神經網絡

                   梯度消失和梯度爆炸

                            Xavier and He Initialization

                            非飽和激活函數

                            Batch Normalization

                                     使用TensorFlow實現Batch Normalization

                                               from tensorflow.contrib.layers import batch_norm

                            梯度截斷

                   重用預訓練層

                            重用TensorFlow模型

                            重用其他框架的模型

                            凍結低級層

                            緩存凍結層

                            調整,丟棄,替換高級別層

                            Model Zoos

                            無監督預訓練

                            在一個輔助任務上預訓練

                   更快的優化器

                            動量優化

                            Nesterov Accelerated Gradient

                            AdaGrad

                            RMSProp

                            Adam Optimization

                                     訓練一個稀疏模型

                            學習速率調度

                   通過正則化避免過擬合

                            Early Stopping

                            ℓ1 and ℓ2 Regularization

                            Dropout

                                     from tensorflow.contrib.layers import dropout

                            Max-Norm Regularization

                            數據增強

                   實踐指導

                   練習

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM