Pytorch基礎(四)—— 卷積層

一、概念

卷積從數學的角度講是一種矩陣的運算方法。我們可以用一個卷積核對一個矩陣進行卷積運算,具體運算過程圖示可以見pytorch官網。
在這里插入圖片描述
在這里插入圖片描述

卷積運算按輸入數據的通道數可分為單通道和多通道兩種。
單通道是指卷積核只有一個的情況。
多通道包括兩種。
分別是單個卷積核對應多通道輸入;多卷積核對應多通道輸入,這種最常見。
具體內容可見文章。
深度學習筆記(一):卷積層+池化層+激活函數+全連接層

二、Pytorch示例

在torch.nn下,卷積層按輸入數據維度可分為1維,2維,3維。最常用的就是2維Conv2d,參數解釋可以見官網。
下面用CIFAR10數據集做測試。

import torch
import torchvision
from torch import nn
from torch.nn import Conv2d
from torch.utils.data import DataLoader
from torch.utils.tensorboard import SummaryWriterdataset = torchvision.datasets.CIFAR10("../dataset", train=False, transform=torchvision.transforms.ToTensor(), download=False)dataloader = DataLoader(dataset, batch_size=64)class Wzh(nn.Module):def __init__(self):super(Wzh, self).__init__()self.conv1 = Conv2d(in_channels=3, out_channels=6, kernel_size=3)def forward(self, a):a = self.conv1(a)return awzh = Wzh()w = SummaryWriter("Conv2D")
i = 0
for data in dataloader:imgs, targets = dataoutput = wzh(imgs)    output = torch.reshape(output, (-1, 3, 30, 30))w.add_images("input", imgs, i)w.add_images("output", output, i)i = i + 1

卷積結果如下:
原圖原圖
在這里插入圖片描述卷積后
從圖的變化來看,卷積后的圖片保留了原始圖片的邊緣特征。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/256202.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/256202.shtml
英文地址,請注明出處:http://en.pswp.cn/news/256202.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【圖像處理】——創建一個新的圖片

方法一:直接復制一個已經存在的圖片 img.copy() 如果是想生成一個指定大小的圖片,則可以通過numpy數組進行創建 方法二:通過numpy創建(注意有坑) img = numpy.zeros((h,w))#h,w是指定的圖像的高和寬,這樣看似可以其實不然上述方法得到的圖像不是8位的,但是圖像數組的…

BUAA 更大公約數

題目鏈接 給一個n*m的矩陣, 刪除里面的一行一列, 使得剩下的數的最大公約數最大。 一個格子(x,y), 先預處理出(1,1)到這個格子的內所有數的最大公約數, 同理處理出(1, m), (n, m), (…

How to make a Logical Volume ON AIX5.3

本文轉自 xkdcc 51CTO博客,原文鏈接:http://blog.51cto.com/brantc/116431,如需轉載請自行聯系原作者1. 確定要建立的卷大小,比如700M 2. 檢查要建立邏輯卷的卷組上的PP大小(PP:物理分區,PP si…

啟動Tomcat 7一閃而過的問題

點擊bin目錄("D:\apache-tomcat-7.0.33\bin")下的startup.bat一閃而過,什么都沒發生... 解決:環境變量里配置一個JAVA_HOME,值為JDK的home目錄("D:\Java\jdk1.7.0_80")轉載…

Pytorch基礎(五)—— 池化層

一、概念 池化就是把數據壓縮的過程,屬于下采樣的一種方法,可以顯著降低神經網絡計算復雜度,減少訓練中的過擬合,同時可以使數據具有一定的不變性。 池化從方法上來講可以分為average Pooling、max Pooling、Overlapping Poolin…

【圖像處理】——鼠標點擊圖像的一處,獲得點擊點的坐標值

import cv2 import numpy as np# 圖片路徑 img = cv2.imread(5-.jpg) a = [] b = []def on_EVENT_LBUTTONDOWN(event, x, y, flags, param)::param event: 鼠標事件:param x: 點擊點的橫坐標:param y: #點擊點的縱坐標:param flags: :param param: :return: if event == cv2.EV…

解決sybase數據庫的死鎖問題

在使用數據庫操作時,由于多人同時使用,導致數據庫某些表無法訪問,原因可能是由于多個用戶操作同一個表,爭搶統一資源出現死鎖現象,現將解決死鎖的方法總結如下: 1、執行 sp_who 語句,觀察執行結…

揭開.NET 2.0配置之謎(一)

2010-03-20 15:33 by 吳秦, 4828 閱讀, 20 評論, 收藏, 編輯 此文是譯文,原文是Jon Rista,Unraveling the Mysteries of .NET 2.0 Configuration,由于這篇文章比較長,所以我就分為幾部分來翻譯。 以前沒有翻譯過外文,看…

Pytorch基礎(六)——激活函數

一、概念 激活函數顧名思義,就是一種可以給神經網絡注入靈魂的一種方法,也可以稱之為激活層。其計算就是將線性的函數轉變為非線性函數的過程,只有這樣,我們制作的深層神經網絡才能無限逼近真實值。 自神經網絡發展到目前為止&am…

android數據的五種存儲方式

Android提供了5種方式存儲數據1 使用SharedPreferences存儲數據它的本質是基于XML文件存儲key-value鍵值對數據&#xff0c;通常用來存儲一些簡單的配置信息。其存儲位置在/data/data/< >/shared_prefs目錄下。SharedPreferences對象本身只能獲取數據而不支持存儲和修改&…

【NOIP 模擬題】[T1] 等差數列(dp)

【題解】【dp】 【f[i][j]表示以i為結尾&#xff0c;j為公差的子序列個數】 【要注意有負數&#xff0c;所以將公差1000】 #include<cstdio> #include<cstring> #include<algorithm> using namespace std; int const p9901; int f[1010][2010],n,a[1010]; lo…

走在網頁游戲開發的路上(十)

頁游資源管理 現在頁游的規模越來越來大&#xff0c;游戲內容豐富&#xff0c;資源管理變得很重要。現在一款SNS頁游的所有資源可達50M&#xff0c;MMO頁游更高達幾百M&#xff0c;不可能把資源放到一個文件里面、也不可能一次性加載完所有資源。按200kb/s的下載速度來算&#…

Pytorch基礎(七)——線性層(全連接層)

一、概念 在神經網絡中&#xff0c;我們通常用線性層來完成兩層神經元間的線性變換。 按照官網的解釋&#xff0c;Linear.weight也即A&#xff0c; 我們可以稱之為權重矩陣&#xff0c;對其轉置后乘以輸入數據(一般都是一維張量)&#xff0c;加上Linear.bias即b偏置。 二、P…

跨線程取出控件的值的寫法(不是跨線程賦予控件值)

//這個方法是跨線程取出控件的值&#xff0c;不是跨線程賦予控件值private delegate void DelegateGetControl(各種參數);private void GetControl(各種參數&#xff0c;和委托的參數是一樣的){try{if (this.InvokeRequired){//如果是跨線程的控件&#xff0c;就調用委托去實現…

使系統生成50個0-9之間的隨機數,將每個數字出現的次數 存入一個一維數組中,統計出現次數最多和出現次數最少的數字,及出現次數 和出現頻率。...

int [] numsnew int[10]; for(int i0;i<50;i){ int num(int)(Math.random()*10);//隨機生成0-9 nums[num];//生成隨機數 對應下標位置 自增 } int maxIndex0;//存儲出現最多次數的下標 int minIndex0;//存儲出現最少次數的下標 //循環數組 for(int i1;i<nums.length;i){ …

PureMVC(AS3)剖析:吐槽

PureMVC&#xff08;AS3&#xff09;剖析&#xff1a;吐槽 寫在前面 世上沒有銀彈——不存在適用于所有情況的框架&#xff0c;只有適合的框架。再者任何一個好的東西&#xff08;語言、框架等&#xff09;最終還取決于用的人&#xff0c;語言和框架本身并不能保證用戶的代碼清…

Pytorch基礎(八)——正則化

一、概念 正則化在深度學習領域是為了防止訓練結果過擬合而采取的一種方法。 1.1 過擬合 過擬合表示模型的泛化能力較差&#xff0c;體現在實際訓練模型上就是在訓練集表現很好&#xff0c;但是在測試集的效果一般。 過擬合的原因&#xff1a;1&#xff0c;模型過于復雜。2&…

uva 11997 K Smallest Sums 優先隊列處理多路歸并問題

題意&#xff1a;K個數組每組K個值&#xff0c;每次從一組中選一個&#xff0c;共K^k種&#xff0c;問前K個小的。 思路&#xff1a;優先隊列處理多路歸并&#xff0c;每個狀態含有K個元素。詳見劉汝佳算法指南。 1 #include<iostream>2 #include<cstdio>3 #includ…

.net生成隨機字符串

生成隨機字符串的工具類&#xff1a; /// <summary>/// 隨機字符串工具類/// </summary>public class RandomTools{/// <summary>/// 隨機系數/// </summary>public static int _RandIndex 0;#region 獲取某個區間的一個隨機數/// <summary>///…