pytorch + sklearn

pytorch

PyTorch 動態神經網絡 (莫煩 Python 教學)
pytorch教程系列 | 莫煩Python

PyTorch 簡介

最大優點就是建立的神經網絡是動態的。另外,更容易理解底層代碼。
PyTorch 會安裝兩個模塊, 一個是 torch, 一個 torchvision。torch 是主模塊, 用來搭建神經網絡的;torchvision 是輔模塊, 有數據庫, 還有一些已經訓練好的神經網絡等着你直接用, 比如 (VGG, AlexNet, ResNet).

PyTorch 神經網絡基礎

  1. numpy.ndarray和torch.Tensor之間轉換:
torch_data = torch.from_numpy(np_data)
np_data = torch_data.numpy()
  1. 矩陣運算最重要!!
  2. 激勵函數。

建造第一個神經網絡

關係擬合(迴歸)

  1. 建立數據集
  2. 建立神經網絡 torch.nn.Module
  3. 訓練網絡 torch.optim. 和 torch.nn.MSELoss()
optimizer.zero_grad()   # 清空上一步的殘餘更新參數值
loss.backward()         # 誤差反向傳播, 計算參數更新值
optimizer.step()        # 將參數更新值施加到 net 的 parameters 上

區分類型(分類)

  1. 建立數據集
  2. 建立神經網絡
  3. 訓練網絡 torch.nn.CrossEntropyLoss()

快速搭建法

torch.nn.Sequential()

保存和提取

def save():
def restore_net(): 提取整個神經網絡, 網絡大的時候可能會比較慢
def restore_params(): 提取所有的參數

批訓練

torch.utils.data
TensorDataset(x , y)
DataLoader()

優化器:加速神經網絡訓練

SGD Momentum AdaGrad RMSProp Adam等

高級神經網絡結構

CNN

Conv2d() —— ReLU() —— MaxPool2d()

RNN:序列數據

分類
迴歸

LSTM

輸入控制
輸出控制
忘記控制

AutoEncoder

壓縮與解壓

DQN 強化學習

神經網絡 + Q learning

GAN

Generator:由隨機數生成有意義的數據
Discriminator:判斷真實數據和虛擬數據

高階內容

pytorch

動態
GPU加速

過擬合

增加數據量
正則化 L1 L2 dropout

批標準化

mini-batch

sklearn

Scikit-learn (sklearn) 優雅地學會機器學習 (莫煩 Python 教程))
sklearn 通用機器學習 教程系列 | 莫煩Python

一般使用

四類算法:分類,迴歸,聚類,降維
學習模式
數據庫
常用屬性和功能

高級使用

正則化 scale
交叉驗證 cross-validation
保存模型

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章