Pytorch 二 梯度下降

2021-09-26 01:18:47 字數 1277 閱讀 7266

一、梯度下降的作用:

乙個神經網路的典型訓練過程如下:

定義包含一些可學習引數(或者叫權重)的神經網路

在輸入資料集上迭代

通過網路處理輸入

計算損失(輸出和正確答案的距離)

梯度反向傳播給網路的引數

更新網路的權重,一般使用乙個簡單的規則:weight = weight - learning_rate * gradient

梯度下降是用於選擇選擇網路權重的一種方法

二、什麼是梯度下降:

三、實現梯度下降演算法的基本步驟

1、設定初始值

2、求取梯度

3、在梯度方向上進行引數的更新

四、梯度下降**

pytorch超級容易入門的**:

numpy三種方法的解釋和實現

線性回歸:

#最小二乘法 擬合y=3x+1

n=100

x=torch.rand(

(n))

y=x*3+

1+torch.rand(n)/5

#y=3x+1 加上隨機雜訊

k=variable(torch.tensor([1

]),requires_grad=

true

)b=variable(torch.tensor([0

]),requires_grad=

true

)loss=torch.nn.mseloss(

)for epoch in

range

(100):

l=loss(k*x+b,y)

#mse 最小二乘法

l.backward(

) k.data-=k.grad.data*

0.3 b.data-=b.grad.data*

0.3print

("k=,b=,l="

.format

(k.data[0]

,b.data[0]

,l.data)

) k.grad.data.zero_(

) b.grad.data.zero_(

)

筆記

其他較好的未細看的資料:

梯度下降:

神經網路搭建:

線性回歸:

二 梯度下降

第二講正式開始介紹機器學習中的監督學習,首先宣告了以下約定 對於m組訓練樣本,x表示其輸入 input feature y表示其輸出 target variable m是乙個正整數 表示個數的嘛 x和y可是是向量也可以是標量,不過入門而言一般y為標量,x i y i 表示訓練樣本,表示訓練集 我們的...

090001 梯度下降

本講ng大牛講解了梯度下降 gradient descent 方法 首先以波特蘭奧勒岡的房屋面積和售價關係為例,講解了監督學習的一般模式,通過乙個訓練集,利用學習演算法,得到乙個假設 歷史原因造成的叫法,就是乙個 模型 當輸入值x進入,通過假設,得到乙個 值y,如圖所示 當只有乙個變數即面積時,其關...

17 梯度下降

import numpy as np import matplotlib.pyplot as plt 構造一元二次方程 x np.linspace 1,6,141 y x 2.5 2 1 繪圖 目標函式 def j theta try return theta 2.5 2 1 except retu...