电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

PyTorch如何搭建一個簡單的網絡

瀏覽:6日期:2022-07-13 10:55:53

1 任務

首先說下我們要搭建的網絡要完成的學習任務: 讓我們的神經網絡學會邏輯異或運算,異或運算也就是俗稱的“相同取0,不同取1” 。再把我們的需求說的簡單一點,也就是我們需要搭建這樣一個神經網絡,讓我們在輸入(1,1)時輸出0,輸入(1,0)時輸出1(相同取0,不同取1),以此類推。

2 實現思路

因為我們的需求需要有兩個輸入,一個輸出,所以我們需要在輸入層設置兩個輸入節點,輸出層設置一個輸出節點。因為問題比較簡單,所以隱含層我們只需要設置10個節點就可以達到不錯的效果了,隱含層的激活函數我們采用ReLU函數,輸出層我們用Sigmoid函數,讓輸出保持在0到1的一個范圍,如果輸出大于0.5,即可讓輸出結果為1,小于0.5,讓輸出結果為0.

3 實現過程

我們使用的簡單的快速搭建法。

3.1 引入必要庫

import torchimport torch.nn as nnimport numpy as np

用pytorch當然要引入torch包,然后為了寫代碼方便將torch包里的nn用nn來代替,nn這個包就是neural network的縮寫,專門用來搭神經網絡的一個包。引入numpy是為了創建矩陣作為輸入。

3.2 創建訓練集

# 構建輸入集x = np.mat(’0 0;’ ’0 1;’ ’1 0;’ ’1 1’)x = torch.tensor(x).float()y = np.mat(’1;’ ’0;’ ’0;’ ’1’)y = torch.tensor(y).float()

我個人比較喜歡用np.mat這種方式構建矩陣,感覺寫法比較簡單,當然你也可以用其他的方法。但是構建完矩陣一定要有這一步 torch.tensor(x).float() ,必須要把你所創建的輸入轉換成tensor變量。

什么是tensor呢?你可以簡單地理解他就是pytorch中用的一種變量,你想用pytorch這個框架就必須先把你的變量轉換成tensor變量。而我們這個神經網絡會要求你的輸入和輸出必須是float浮點型的,指的是tensor變量中的浮點型,而你用np.mat創建的輸入是int型的,轉換成tensor也會自動地轉換成tensor的int型,所以要在后面加個.float()轉換成浮點型。

這樣我們就構建完成了輸入和輸出(分別是x矩陣和y矩陣),x是四行二列的一個矩陣,他的每一行是一個輸入,一次輸入兩個值,這里我們把所有的輸入情況都列了出來。輸出y是一個四行一列的矩陣,每一行都是一個輸出,對應x矩陣每一行的輸入。

3.3 搭建網絡

myNet = nn.Sequential( nn.Linear(2,10), nn.ReLU(), nn.Linear(10,1), nn.Sigmoid() )print(myNet)

輸出結果:

PyTorch如何搭建一個簡單的網絡

我們使用nn包中的Sequential搭建網絡,這個函數就是那個可以讓我們像搭積木一樣搭神經網絡的一個東西。

nn.Linear(2,10)的意思搭建輸入層,里面的2代表輸入節點個數,10代表輸出節點個數。Linear也就是英文的線性,意思也就是這層不包括任何其它的激活函數,你輸入了啥他就給你輸出了啥。nn.ReLU()這個就代表把一個激活函數層,把你剛才的輸入扔到了ReLU函數中去。 接著又來了一個Linear,最后再扔到Sigmoid函數中去。 2,10,1就分別代表了三個層的個數,簡單明了。

3.4 設置優化器

optimzer = torch.optim.SGD(myNet.parameters(),lr=0.05)loss_func = nn.MSELoss()

對這一步的理解就是,你需要有一個優化的方法來訓練你的網絡,所以這步設置了我們所要采用的優化方法。

torch.optim.SGD的意思就是采用SGD(隨機梯度下降)方法訓練,你只需要把你網絡的參數和學習率傳進去就可以了,分別是 myNet.paramets 和 lr 。 loss_func 這句設置了代價函數,因為我們的這個問題比較簡單,所以采用了MSE,也就是均方誤差代價函數。

3.5 訓練網絡

for epoch in range(5000): out = myNet(x) loss = loss_func(out,y) optimzer.zero_grad() loss.backward() optimzer.step()

我這里設置了一個5000次的循環(可能不需要這么多次),讓這個訓練的動作迭代5000次。每一次的輸出直接用myNet(x),把輸入扔進你的網絡就得到了輸出out(就是這么簡單粗暴!),然后用代價函數和你的標準輸出y求誤差。 清除梯度的那一步是為了每一次重新迭代時清除上一次所求出的梯度,你就把這一步記住就行,初學不用理解太深。 loss.backward() 當然就是讓誤差反向傳播,接著 optimzer.step() 也就是讓我們剛剛設置的優化器開始工作。

3.6 測試

print(myNet(x).data)

運行結果:

PyTorch如何搭建一個簡單的網絡

可以看到這個結果已經非常接近我們期待的結果了,當然你也可以換個數據測試,結果也會是相似的。這里簡單解釋下為什么我們的代碼末尾加上了一個.data,因為我們的tensor變量其實是包含兩個部分的,一部分是tensor數據,另一部分是tensor的自動求導參數,我們加上.data意思是輸出取tensor中的數據,如果不加的話會輸出下面這樣:

PyTorch如何搭建一個簡單的網絡

以上就是PyTorch如何搭建一個簡單的網絡的詳細內容,更多關于PyTorch搭建網絡的資料請關注好吧啦網其它相關文章!

標簽: PyTorch
相關文章:
主站蜘蛛池模板: 磁粉制动器|张力控制器|气胀轴|伺服纠偏控制器整套厂家--台灵机电官网 | 衬氟止回阀_衬氟闸阀_衬氟三通球阀_衬四氟阀门_衬氟阀门厂-浙江利尔多阀门有限公司 | 盘古网络技术有限公司| 长城人品牌官网 | 海鲜池-专注海鲜鱼缸、移动海鲜缸、饭店鱼缸设计定做-日晟水族厂家 | 油液红外光谱仪-油液监测系统-燃油嗅探仪-上海冉超光电科技有限公司 | 非小号行情 - 专业的区块链、数字藏品行情APP、金色财经官网 | 北京燃气公司 用户服务中心| 废气处理设备-工业除尘器-RTO-RCO-蓄热式焚烧炉厂家-江苏天达环保设备有限公司 | 南京试剂|化学试剂|分析试剂|实验试剂|cas号查询-专业60年试剂销售企业 | 校园文化空间设计-数字化|中医文化空间设计-党建|法治廉政主题文化空间施工-山东锐尚文化传播公司 | 南京租车,南京汽车租赁,南京包车,南京会议租车-南京七熹租车 | 插针变压器-家用电器变压器-工业空调变压器-CD型电抗器-余姚市中驰电器有限公司 | 硬质合金模具_硬质合金非标定制_硬面加工「生产厂家」-西迪技术股份有限公司 | 储能预警-储能消防系统-电池舱自动灭火装置-四川千页科技股份有限公司官网 | 北京中航时代-耐电压击穿试验仪厂家-电压击穿试验机 | 砂石生产线_石料生产线设备_制砂生产线设备价格_生产厂家-河南中誉鼎力智能装备有限公司 | 福州时代广告制作装饰有限公司-福州广告公司广告牌制作,福州展厅文化墙广告设计, | 合肥白癜风医院_[治疗白癜风]哪家好_合肥北大白癜风医院 | 杭州月嫂技术培训服务公司-催乳师培训中心报名费用-产后康复师培训机构-杭州优贝姆健康管理有限公司 | 太阳能发电系统-太阳能逆变器,控制器-河北沐天太阳能科技首页 | 安全,主动,被动,柔性,山体滑坡,sns,钢丝绳,边坡,防护网,护栏网,围栏,栏杆,栅栏,厂家 - 护栏网防护网生产厂家 | 软瓷_柔性面砖_软瓷砖_柔性石材_MCM软瓷厂家_湖北博悦佳软瓷 | 找培训机构_找学习课程_励普教育 | 石英陶瓷,石英坩埚,二氧化硅陶瓷-淄博百特高新材料有限公司 | 铝板冲孔网,不锈钢冲孔网,圆孔冲孔网板,鳄鱼嘴-鱼眼防滑板,盾构走道板-江拓数控冲孔网厂-河北江拓丝网有限公司 | 胶水,胶粘剂,AB胶,环氧胶,UV胶水,高温胶,快干胶,密封胶,结构胶,电子胶,厌氧胶,高温胶水,电子胶水-东莞聚力-聚厉胶粘 | TPE塑胶原料-PPA|杜邦pom工程塑料、PPSU|PCTG材料、PC/PBT价格-悦诚塑胶 | 宁夏活性炭_防护活性炭_催化剂载体炭-宁夏恒辉活性炭有限公司 | 代写标书-专业代做标书-商业计划书代写「深圳卓越创兴公司」 | 双相钢_双相不锈钢_双相钢圆钢棒_双相不锈钢报价「海新双相钢」 双能x射线骨密度检测仪_dxa骨密度仪_双能x线骨密度仪_品牌厂家【品源医疗】 | 餐饮小吃技术培训-火锅串串香培训「何小胖培训」_成都点石成金[官网] | 锌合金压铸-铝合金压铸厂-压铸模具-冷挤压-誉格精密压铸 | 欧盟ce检测认证_reach检测报告_第三方检测中心-深圳市威腾检验技术有限公司 | 动物解剖台-成蚊接触筒-标本工具箱-负压实验台-北京哲成科技有限公司 | 在线PH计-氧化锆分析仪-在线浊度仪-在线溶氧仪- 无锡朝达 | 制氮设备_PSA制氮机_激光切割制氮机_氮气机生产厂家-苏州西斯气体设备有限公司 | 蓝鹏测控平台 - 智慧车间系统 - 车间生产数据采集与分析系统 | 河北凯普威医疗器材有限公司,高档轮椅系列,推车系列,座厕椅系列,协步椅系列,拐扙系列,卫浴系列 | 无刷电机_直流无刷电机_行星减速机-佛山市藤尺机电设备有限公司 无菌检查集菌仪,微生物限度仪器-苏州长留仪器百科 | 北京中创汇安科贸有限公司|