autograd——自動求導系統
torch.autograd.backward
torch.autograd.backward(tensor,
grad_tensors=None,
retain_graph=None,
create_graph=False)
功能:自動求梯度
tensor:用於求導的張量,如loss
retain_graph:保存計算圖
create_graph:創建導數計算圖,用於高階求導
grad_tensors:多梯度權重
torch.autograd.grad
torch.autograd.grad(outputs,
inputs,
grad_tensors=None,
retain_graph=None,
create_graph=False)
功能:求取梯度
outputs:用於求導的張量,如loss
inputs:需要梯度的張量
retain_graph:保存計算圖
create_graph:創建導數計算圖,用於高階求導
grad_tensors:多梯度權重
注意
- 梯度不自動清零
- 依賴於葉子結點的結點,requires_grad默認爲True
- 葉子結點不能執行in-place操作
邏輯迴歸
邏輯迴歸是線性的二分類模型
模型的表達式:
其中稱爲Sigmod函數,也稱爲Logistic函數,圖像如圖所示:
線性迴歸是分析自變量x與因變量y(標量)之間關係的方法
邏輯迴歸是分析自變量x與因變量y(概率)之間關係的方法
邏輯迴歸也叫對數機率迴歸:
此外還有對數迴歸:
機器學習模型訓練的要素:
- 數據
- 模型
- 損失函數
- 優化器
- 迭代訓練