在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

PyTorch入門-1

汽車電子技術 ? 來源:Python數據分析之旅 ? 作者: cauwfq ? 2023-02-23 16:32 ? 次閱讀

圖片

1.為什么選擇PyTorch
  1)簡潔:追求更少封裝,避免重復造輪子
  2)速度:靈活性不以速度為代價
  3)易用:語法優雅,簡單易學
  4)資源:社區豐富,維護及時
2.基礎入門
  1)安裝(pip install torch)
  2)創建tensor(PyTorch重要的數據結構)
  3)自動求導
  
import numpy as np  
import torch


#創建3行4列tensor,設置自動求導
x = torch.randn(3,4,requires_grad=True)
#輸出結構
x

圖片

#初始化b
b = torch.randn(3,4,requires_grad=True)
#計算t
t = x + b
#求和
y = t.sum()
#反向傳播計算
y.backward()
#輸出b梯度
b.grad

圖片

實戰一個例子(計算過程如下):

圖片

#計算流程
x = torch.rand(1)
b = torch.rand(1, requires_grad = True)
w = torch.rand(1, requires_grad = True)
y = w * x 
z = y + b 
#如果不清空會累加起來
z.backward(retain_graph=True)
#w梯度
w.grad

圖片

#b梯度
b.grad

圖片

3.搭建線性回歸模型
  1)構造數據
  2)初始化參數
  3)前向傳播
  4)模型訓練
  5)預測結果
  6)保存模型
#初始化x值
x_values = [i for i in range(11)]
#轉換為ndarray
x_train = np.array(x_values, dtype=np.float32)
#維度轉換
x_train = x_train.reshape(-1, 1)
#查看形狀,(11,1)
x_train.shape


#計算y值
y_values = [2*i + 1 for i in x_values]
#轉換為ndarray
y_train = np.array(y_values, dtype=np.float32)
#維度轉換
y_train = y_train.reshape(-1, 1)
#查看形狀,(11,1)
y_train.shape
import torch
import torch.nn as nn


#線性回歸模型(本質是一個不加激活函數的全連接層)
class LinearRegressionModel(nn.Module):
    #初始化參數
    def __init__(self, input_dim, output_dim):
        super(LinearRegressionModel, self).__init__()
        self.linear = nn.Linear(input_dim, output_dim)  
    #前向傳播
    def forward(self, x):
        out = self.linear(x)
        return out


#輸入維度
input_dim = 1
#輸出維度
output_dim = 1
#初始化模型
model = LinearRegressionModel(input_dim, output_dim)
#輪數
epochs = 1000
#學習率
learning_rate = 0.01
#隨機梯度下降算法
optimizer = torch.optim.SGD(model.parameters(), 
                            lr=learning_rate)
#定義均方損失函數
criterion = nn.MSELoss()


#遍歷每一輪(這里使用CPU進行訓練,建議使用GPU速度快)
for epoch in range(epochs):
    #計算輪數
    epoch += 1
    #注意轉換成tensor
    inputs = torch.from_numpy(x_train)
    labels = torch.from_numpy(y_train)
    #梯度要清零每一次迭代
    optimizer.zero_grad() 
    #前向傳播
    outputs = model(inputs)
    #計算損失
    loss = criterion(outputs, labels)
    #返向傳播
    loss.backward()
    #更新權重參數
    optimizer.step()
    #每50輪輸出損失值
    if epoch % 50 == 0:
        print('epoch {}, loss {}'.format(epoch, loss.item()))

圖片

#預測訓練數據集
predicted = model(torch.from_numpy(x_train).requires_grad_()).data.numpy()
#輸出結果,跟我們真實y值幾乎沒有差別
predicted

圖片

#保存模型
torch.save(model.state_dict(), 'model.pkl')
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 速度
    +關注

    關注

    1

    文章

    33

    瀏覽量

    15710
  • 資源
    +關注

    關注

    0

    文章

    59

    瀏覽量

    18120
  • pytorch
    +關注

    關注

    2

    文章

    809

    瀏覽量

    13770
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    Pytorch入門之的基本操作

    Pytorch入門之基本操作
    發表于 05-22 17:15

    PyTorch如何入門

    PyTorch 入門實戰(一)——Tensor
    發表于 06-01 09:58

    Pytorch AI語音助手

    想做一個Pytorch AI語音助手,有沒有好的思路呀?
    發表于 03-06 13:00

    如何安裝TensorFlow2 Pytorch

    如何安裝TensorFlow2 Pytorch
    發表于 03-07 07:32

    如何往星光2板子里裝pytorch

    如題,想先gpu版本的pytorch只安裝cpu版本的pytorch,pytorch官網提供了基于conda和pip兩種安裝方式。因為咱是risc架構沒對應的conda,而使用pip安裝提示也沒有
    發表于 09-12 06:30

    Pytorch入門教程與范例

    的深度學習框架。 對于系統學習 pytorch,官方提供了非常好的入門教程?,同時還提供了面向深度學習的示例,同時熱心網友分享了更簡潔的示例。 1. overview 不同于 theano
    發表于 11-15 17:50 ?5566次閱讀
    <b class='flag-5'>Pytorch</b><b class='flag-5'>入門</b>教程與范例

    PyTorch官網教程PyTorch深度學習:60分鐘快速入門中文翻譯版

    PyTorch 深度學習:60分鐘快速入門”為 PyTorch 官網教程,網上已經有部分翻譯作品,隨著PyTorch1.0 版本的公布,這個教程有較大的代碼改動,本人對教程進行重新翻
    的頭像 發表于 01-13 11:53 ?1w次閱讀

    基于PyTorch的深度學習入門教程之PyTorch的安裝和配置

    神經網絡結構,并且運用各種深度學習算法訓練網絡參數,進而解決各種任務。 本文從PyTorch環境配置開始。PyTorch是一種Python接口的深度學習框架,使用靈活,學習方便。還有其他主流的深度學習框架,例如Caffe,TensorFlow,CNTK等等,各有千秋。筆者
    的頭像 發表于 02-16 15:15 ?2818次閱讀

    基于PyTorch的深度學習入門教程之PyTorch簡單知識

    本文參考PyTorch官網的教程,分為五個基本模塊來介紹PyTorch。為了避免文章過長,這五個模塊分別在五篇博文中介紹。 Part1PyTorch簡單知識 Part2:
    的頭像 發表于 02-16 15:20 ?2466次閱讀

    基于PyTorch的深度學習入門教程之PyTorch的自動梯度計算

    本文參考PyTorch官網的教程,分為五個基本模塊來介紹PyTorch。為了避免文章過長,這五個模塊分別在五篇博文中介紹。 Part1PyTorch簡單知識 Part2:
    的頭像 發表于 02-16 15:26 ?2230次閱讀

    基于PyTorch的深度學習入門教程之使用PyTorch構建一個神經網絡

    ? ? ? ? 前言 本文參考PyTorch官網的教程,分為五個基本模塊來介紹PyTorch。為了避免文章過長,這五個模塊分別在五篇博文中介紹。 Part1PyTorch簡單知識 P
    的頭像 發表于 02-15 09:40 ?2287次閱讀

    基于PyTorch的深度學習入門教程之訓練一個神經網絡分類器

    前言 本文參考PyTorch官網的教程,分為五個基本模塊來介紹PyTorch。為了避免文章過長,這五個模塊分別在五篇博文中介紹。 Part1PyTorch簡單知識 Part2:
    的頭像 發表于 02-15 09:47 ?2272次閱讀

    基于PyTorch的深度學習入門教程之DataParallel使用多GPU

    前言 本文參考PyTorch官網的教程,分為五個基本模塊來介紹PyTorch。為了避免文章過長,這五個模塊分別在五篇博文中介紹。 Part1PyTorch簡單知識 Part2:
    的頭像 發表于 02-15 09:55 ?4345次閱讀

    基于PyTorch的深度學習入門教程之PyTorch重點綜合實踐

    前言 PyTorch提供了兩個主要特性: (1) 一個n維的Tensor,與numpy相似但是支持GPU運算。 (2) 搭建和訓練神經網絡的自動微分功能。 我們將會使用一個全連接的ReLU網絡作為
    的頭像 發表于 02-15 10:01 ?2039次閱讀

    深度學習框架pytorch入門與實踐

    深度學習框架pytorch入門與實踐 深度學習是機器學習中的一個分支,它使用多層神經網絡對大量數據進行學習,以實現人工智能的目標。在實現深度學習的過程中,選擇一個適用的開發框架是非常關鍵
    的頭像 發表于 08-17 16:03 ?1837次閱讀
    主站蜘蛛池模板: 99热色| 很黄很污小说 | 开心综合网 | 成年人www | 久色网| 国产无套视频在线观看香蕉 | 色性视频| 午夜不卡影院 | 性欧美videofree视频另类 | 色五丁香| 亚州色吧| 97午夜精品 | 性久久久久久久久 | 色婷婷视频在线观看 | 女同国产| 亚洲毛片网 | 人人免费人人专区 | 成年人一级毛片 | 日本免费网站观看 | 免费艹逼视频 | 国产成在线人视频免费视频 | 午夜肉伦伦影院在线观看 | 中文字幕在线看视频一区二区三区 | 天堂在线链接 | 伊人网站在线观看 | 日韩免费毛片 | 日本黄色网址视频 | 色综合天天射 | 五月婷婷丁香在线 | 99热色 | 免费看h的网站 | 日本三级hd高清电影 | 国产精品久久久久久久人热 | 老师我好爽再深一点好大 | 国产精品久久久久久久久久免费 | 天天躁夜夜躁狠狠躁 | 男女交性动态免费视频 | 韩国在线免费视频 | 国产亚洲情侣久久精品 | 性夜黄a爽爽免费视频国产 羞羞答答xxdd影院欧美 | xxxx日本69xxxxx |