日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

[Pytorch系列-24]:神经网络基础 - 单个无激活函数的神经元实现简单线性回归 - 1

發布時間:2023/12/16 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [Pytorch系列-24]:神经网络基础 - 单个无激活函数的神经元实现简单线性回归 - 1 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

作者主頁(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客

本文網址:https://blog.csdn.net/HiWangWenBing/article/details/120597547


目錄

前言 深度學習模型框架

第1章 業務領域分析

1.1? 步驟1-1:業務領域分析

1.2 步驟1-2:業務建模

1.3 代碼實例前置條件

第2章 前向運算模型定義

2.1?步驟2-1:數據集選擇

2.2?步驟2-2:數據預處理

2.3 步驟2-3:神經網絡建模

2.4 步驟2-4:神經網絡輸出

第3章 后向運算模型定義

3.1 步驟3-1:定義loss函數

3.2? 步驟3-2:定義優化器

3.3 步驟3-3:模型訓練

3.4 步驟3-4:模型驗證

3.5 步驟3-5:模型可視化

第4章 模型部署

4.1 步驟4-1:模型部署



前言 深度學習模型框架

[人工智能-深度學習-8]:神經網絡基礎 - 機器學習、深度學習模型、模型訓練_文火冰糖(王文兵)的博客-CSDN博客_神經網絡與深度學習第1章 白話機器學習[人工智能-綜述-4]:白話深度學習-- 無基礎小白都能理解機器學習的核心概念_文火冰糖(王文兵)的博客-CSDN博客[人工智能-深度學習-7]:神經網絡基礎 - 人工神經網絡ANN_文火冰糖(王文兵)的博客-CSDN博客第2章 機器學習的模型與步驟2.1深度學習與機器學習上述三個概念中:人工智能的概念最廣泛,所以有能機器具有類”人“一樣智能的技術、非技術(如倫理)的領域,都是人工智能。機器獲取“智能”的一個重要手段是,機器具備“自我學習”的能力,...https://blog.csdn.net/HiWangWenBing/article/details/120462734

第1章 業務領域分析

1.1? 步驟1-1:業務領域分析

1.2 步驟1-2:業務建模

1.3 代碼實例前置條件

#環境準備 import numpy as np # numpy數組庫 import math # 數學運算庫 import matplotlib.pyplot as plt # 畫圖庫import torch # torch基礎庫 import torch.nn as nn # torch神經網絡庫print("Hello World") print(torch.__version__) print(torch.cuda.is_available()) Hello World 1.8.0 False

第2章 前向運算模型定義

2.1?步驟2-1:數據集選擇

這里不需要采用已有的開源數據集,只需要自己構建數據集即可。

#2-1 準備數據集 x_sample = np.linspace(0, 5, 64)noise = np.random.randn(64) y_sample = 2 * x_sample + 1 + noisey_line = 2 * x_sample + 1#可視化數據 plt.scatter(x_sample, y_sample) plt.plot(x_sample, y_line,'red')

2.2?步驟2-2:數據預處理

(1)把numpy一維數據轉換成二維樣本數據

(2)把numpy樣本數據轉換成torch樣本數據

# 2-2 對數據預處理 print("Numpy原始樣本的形狀") print(x_sample.shape) print(y_sample.shape)# 把一維線性數據轉換成二維樣本數據,每個樣本數據為一維 print("\nNumpy訓練樣本的形狀") x_numpy = x_sample.reshape(-1, 1).astype('float32') y_numpy = y_sample.reshape(-1, 1).astype('float32') print(x_numpy.shape) print(y_numpy.shape)# numpy樣本數據轉換成pytorch樣本數據 print("\ntorch訓練樣本的形狀") x_train = torch.from_numpy(x_numpy) y_train = torch.from_numpy(y_numpy)print(x_train.shape) print(y_train.shape)plt.scatter(x_train, y_train)

Numpy原始樣本的形狀 (64,) (64,)Numpy訓練樣本的形狀 (64, 1) (64, 1)torch訓練樣本的形狀 torch.Size([64, 1]) torch.Size([64, 1])

Out[3]:

<matplotlib.collections.PathCollection at 0x1fdc56524f0>

2.3 步驟2-3:神經網絡建模

這里的神經網絡模型是單輸入(size=1)、單輸出(size=1)、無激活函數的線性神經元。

# 2-3 定義網絡模型 # in_features: 輸入數據的size = 1 # out_features: 輸處數據的size = 1 # bias = True: 打開偏置參數B print("定義并初始化模型") model = nn.Linear(in_features=1, out_features=1) print(model)print("\n獲取W,B參數的初始化值(隨機產生)") w,b = model.parameters() print(w) print(b) 定義并初始化模型 Linear(in_features=1, out_features=1, bias=True)獲取W,B參數的初始化值(隨機產生) Parameter containing: tensor([[-0.3860]], requires_grad=True) Parameter containing: tensor([-0.7404], requires_grad=True)

備注:

神經網絡中w,b參數的初始值是隨機初始,每次調用nn.Linear創建神經網絡,W, B參數都不一樣。

2.4 步驟2-4:神經網絡輸出

# 2-4 定義網絡預測輸出 y_pred = model.forward(x_train) print(y_pred.shape) torch.Size([64, 1])

備注:輸出是64個樣本的一維數據

第3章 后向運算模型定義

3.1 步驟3-1:定義loss函數

這里采用的MSE loss函數

# 3-1 定義loss函數: # loss_fn= MSE loss loss_fn = nn.MSELoss() print(loss_fn) MSELoss()

3.2? 步驟3-2:定義優化器

# 3-2 定義優化器 Learning_rate = 0.01 #學習率# optimizer = SGD: 基本梯度下降法 # parameters:指明要優化的參數列表 # lr:指明學習率 optimizer = torch.optim.SGD(model.parameters(), lr = Learning_rate) print(optimizer) SGD ( Parameter Group 0dampening: 0lr: 0.01momentum: 0nesterov: Falseweight_decay: 0 )

備注:優化器需要指明優化的參數列表和學習率

3.3 步驟3-3:模型訓練

# 3-3 模型訓練 # 定義迭代次數 epochs = 500loss_history = [] #訓練過程中的loss數據 w_history = [] #訓練過程中的w參數值 b_history = [] #訓練過程中的b參數值for i in range(0, epochs):#(1) 前向計算y_pred = model(x_train)#(2) 計算lossloss = loss_fn(y_pred, y_train)#(3) 反向求導loss.backward()#(4) 反向迭代optimizer.step()#(5) 復位優化器的梯度optimizer.zero_grad() w, b = model.parameters() loss_history.append(loss.item()) w_history.append(w.item())b_history.append(b.item())if(i % 100 == 0):print('epoch {} loss {:.4f}'.format(i, loss.item())) print("\n迭代完成") w, b = model.parameters() #parameters()返回的是一個迭代器指向的對象 print("\n訓練后w參數值:", w, w.item()) print("\n訓練后b參數值:", b, b.item()) print("\n最小損失數值 :", loss, loss.item()) print(len(loss_history)) print(len(w_history)) print(len(b_history)) epoch 0 loss 42.0689 epoch 100 loss 1.0441 epoch 200 loss 1.0440 epoch 300 loss 1.0439 epoch 400 loss 1.0439迭代完成訓練后w參數值: Parameter containing: tensor([[1.8530]], requires_grad=True) 1.8529784679412842訓練后b參數值: Parameter containing: tensor([1.2702], requires_grad=True) 1.2701895236968994最小損失數值 : tensor(1.0439, grad_fn=<MseLossBackward>) 1.0438624620437622 500 500 500

3.4 步驟3-4:模型驗證

NA

3.5 步驟3-5:模型可視化

# 3-4 可視化模型數據 #model返回的是總tensor,包含grad_fn,用data提取出的tensor是純tensor y_pred = model.forward(x_train).data.numpy().squeeze() print(x_train.shape) print(y_pred.shape) print(y_line.shape)plt.scatter(x_train, y_train, label='SampleLabel') plt.plot(x_train, y_pred, label='Predicted') plt.plot(x_train, y_line, label='Line')plt.legend() plt.show() torch.Size([64, 1]) (64,) (64,)

#顯示loss的歷史數據 plt.plot(loss_history, "r+") plt.title("loss value")

#顯示w參數的歷史數據 plt.plot(w_history, "r+") plt.title("w value")

#顯示b參數的歷史數據 plt.plot(b_history, "r+") plt.title("b value")

第4章 模型部署

4.1 步驟4-1:模型部署

NA


作者主頁(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客

本文網址:https://blog.csdn.net/HiWangWenBing/article/details/120597547

總結

以上是生活随笔為你收集整理的[Pytorch系列-24]:神经网络基础 - 单个无激活函数的神经元实现简单线性回归 - 1的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 欧美一级一级 | 国产资源第一页 | 欧美一区高清 | 日韩啊啊啊 | 尤物精品 | 日韩中文字幕免费在线观看 | 国产在线一级片 | 日本色偷偷 | 国产在线中文 | 伊人久久久久久久久久 | 草草影院ccyycom | 美日韩免费 | 国产91丝袜在线播放0 | 国产又粗又猛又爽又黄的网站 | 天堂av2021| 亚洲色域网 | 日韩欧美视频一区 | 黄色片视频播放 | 美女的奶胸大爽爽大片 | 国产精品91一区二区 | 国产一区二区在线不卡 | 欧美另类激情 | 色综合免费视频 | 日本一区二区三区精品视频 | 欧美激情不卡 | 物业福利视频 | 国产欧美日韩视频 | 他趴在我两腿中间添得好爽在线看 | 精品国产乱码久久久久久婷婷 | 亚洲精品无码久久久久久久 | 精品h| 妞干网这里只有精品 | 风韵少妇性饥渴推油按摩视频 | 黄色肉肉视频 | 亚洲午夜av在线 | 丝袜美女av | 男人的天堂日韩 | 中文日韩字幕 | 公侵犯人妻中文字慕一区二区 | 国内精品视频在线观看 | 日韩免费在线播放 | 青青青草视频 | 日本性猛交 | www国产亚洲精品久久麻豆 | 国产在线一区二区视频 | 国产激情视频一区二区三区 | 男女考妣视频 | 国产精品无码专区av在线播放 | 黄色三级三级三级三级 | 在线观看免费观看在线 | 熟女人妻一区二区三区免费看 | av在线片 | 最好看十大无码av | 日韩av在线播 | 欧美日韩一区二区三区69堂 | 亚洲国产av一区二区三区 | 国产精品视频不卡 | 黑人巨大精品一区二区在线 | 免费国产高清 | 亚洲操 | 五月婷婷欧美 | 亚洲精品高清在线观看 | 理论片中文 | 精品少妇人妻AV无码专区在线 | 超碰人人人人人人人 | 亚洲午夜精品视频 | 蜜色视频| 高清一区二区三区视频 | 中文字幕国产一区二区 | 超碰人人爱 | 四虎一级片| 国产亚洲精品久久久久丝瓜 | 日韩av二区 | 人人做人人爱人人爽 | 一区二区在线视频播放 | 成人黄色a级片 | 少妇一级淫免费观看 | 久艹在线观看 | 欧美日韩视频无码一区二区三 | 欧美20p | 色中色av| 在线无码va中文字幕无码 | 中文字幕女优 | 亚洲精品国产无码 | 精品国产18久久久久久二百 | www.欧美一区二区三区 | 蜜桃麻豆视频 | 中文字幕你懂的 | 天天综合人人 | 精品国产伦一区二区三 | 午夜中出| 爱爱免费视频 | 亚洲日本激情 | 中国黄色一级大片 | www.男人的天堂.com | 欧美精品一级在线观看 | 在线国产福利 | 成年人视频网站 | 五月婷婷爱爱 |