91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

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

大同市| 铁力市| 龙川县| 盐边县| 姜堰市| 瑞丽市| 延长县| 什邡市| 汝南县| 吴江市| 英超| 资阳市| 绵阳市| 邳州市| 秦皇岛市| 张家口市| 米泉市| 蕲春县| 通渭县| 新宁县| 彩票| 浏阳市| 桃园市| 邵武市| 梓潼县| 新竹市| 莎车县| 左权县| 敖汉旗| 闽清县| 商都县| 外汇| 夏河县| 靖边县| 乌鲁木齐县| 略阳县| 陆良县| 孟津县| 红安县| 合肥市| 鹤庆县|