亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

pytorch實現線性回歸的方法

發布時間:2021-04-09 18:37:45 來源:億速云 閱讀:207 作者:啵贊 欄目:開發技術

這篇文章主要介紹“pytorch實現線性回歸的方法”,在日常操作中,相信很多人在pytorch實現線性回歸的方法問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”pytorch實現線性回歸的方法”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

線性回歸都是包括以下幾個步驟:定義模型、選擇損失函數、選擇優化函數、 訓練數據、測試

import torch
import matplotlib.pyplot as plt
# 構建數據集
x_data= torch.Tensor([[1.0],[2.0],[3.0],[4.0],[5.0],[6.0]])
y_data= torch.Tensor([[2.0],[4.0],[6.0],[8.0],[10.0],[12.0]])
#定義模型
class LinearModel(torch.nn.Module):
    def __init__(self):
        super(LinearModel, self).__init__()
        self.linear= torch.nn.Linear(1,1) #表示輸入輸出都只有一層,相當于前向傳播中的函數模型,因為我們一般都不知道函數是什么形式的
 
    def forward(self, x):
        y_pred= self.linear(x)
        return y_pred
model= LinearModel()
# 使用均方誤差作為損失函數
criterion= torch.nn.MSELoss(size_average= False)
#使用梯度下降作為優化SGD
# 從下面幾種優化器的生成結果圖像可以看出,SGD和ASGD效果最好,因為他們的圖像收斂速度最快
optimizer= torch.optim.SGD(model.parameters(),lr=0.01)
# ASGD
# optimizer= torch.optim.ASGD(model.parameters(),lr=0.01)
# optimizer= torch.optim.Adagrad(model.parameters(), lr= 0.01)
# optimizer= torch.optim.RMSprop(model.parameters(), lr= 0.01)
# optimizer= torch.optim.Adamax(model.parameters(),lr= 0.01)
# 訓練
epoch_list=[]
loss_list=[]
for epoch in range(100):
    y_pred= model(x_data)
    loss= criterion(y_pred, y_data)
    epoch_list.append(epoch)
    loss_list.append(loss.item())
    print(epoch, loss.item())
 
    optimizer.zero_grad() #梯度歸零
    loss.backward()  #反向傳播
    optimizer.step() #更新參數
 
print("w= ", model.linear.weight.item())
print("b= ",model.linear.bias.item())
 
x_test= torch.Tensor([[7.0]])
y_test= model(x_test)
print("y_pred= ",y_test.data)
 
plt.plot(epoch_list, loss_list)
plt.xlabel("epoch")
plt.ylabel("loss_val")
plt.show()

使用SGD優化器圖像:                                                      

pytorch實現線性回歸的方法

使用ASGD優化器圖像:

pytorch實現線性回歸的方法

使用Adagrad優化器圖像:                                                 

pytorch實現線性回歸的方法

使用Adamax優化器圖像:

pytorch實現線性回歸的方法

到此,關于“pytorch實現線性回歸的方法”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

始兴县| 营口市| 民和| 太谷县| 松阳县| 沽源县| 浑源县| 沈阳市| 綦江县| 呼和浩特市| 洛南县| 新建县| 荃湾区| 汾西县| 新泰市| 驻马店市| 江城| 大厂| 平定县| 桂阳县| 林芝县| 达日县| 兴隆县| 额济纳旗| 白山市| 缙云县| 河间市| 宽甸| 卫辉市| 石景山区| 家居| 安乡县| 辽阳市| 定日县| 金坛市| 和硕县| 莱阳市| 房产| 太仆寺旗| 罗城| 大石桥市|