【Pytorch】nn.Module 자주 사용하는 모듈
7177 단어 Pytorch
4
ReflectionPad2d는paddingLayer입니다.padding의 방식은 여러 가지가 있는데 하나의 값을 지정할 수도 있고 불규칙한 방식일 수도 있습니다. 즉, 4원조를 제시할 수도 있습니다.
input = torch.randn(64, 3, 220, 220) # input size
# 4-tuple
pad = nn.ReflectionPad2d((3, 3, 5, 5)) # laft, right, top, bottom
output = pad(input) # size(64, 3, 230, 226)
# int
pad = nn.ReflectionPad2d(3)
output = pad(input) # size(64, 3, 226, 226)
출력 크기는 다음과 같이 계산됩니다.
H o = H i + p a d d i n g T o p + p a d d i n g B o t t o m , W o = W i + p a d d i n g L e f t + p a d d i n g R i g h t Ho = Hi + paddingTop + paddingBottom, Wo = Wi + paddingLeft + paddingRight Ho=Hi+paddingTop+paddingBottom,Wo=Wi+paddingLeft+paddingRight
nn.Conv2d()
2차원 볼륨은 2차원 데이터를 처리할 수 있다
nn.Conv2d(self, in_channels, out_channels, kernel_size, stride=1, padding=0, dilation=1, groups=1, bias=True))
매개 변수:\inchannel: 데이터를 입력하는 채널 수, 예를 들어 RGB 이미지 채널 수, 3; out_channel: 출력 데이터의 채널 수, 이것은 모델에 따라 조정됩니다. kennel_size: 볼륨 핵 크기로 int 또는tuple일 수 있습니다.kennel_size=2, 볼륨 크기 의미(2,2),kennelsize=(2,3), 볼륨 크기(2,3)를 의미하는 비정사각형 볼륨크기 유사,stride=2는 보폭의 상하좌우 스캐닝이 모두 2,stride=(2,3), 좌우 스캐닝의 보폭은 2,상하는 3임을 의미한다.\padding: 0 채우기import torch
import torch.nn as nn
x = torch.randn(10, 16, 30, 32) # batch, channel , height , width
print(x.shape)
m = nn.Conv2d(16, 33, (3, 2), (2,1)) # in_channel, out_channel ,kennel_size,stride
print(m)
y = m(x)
print(y.shape)
결과 출력:
torch.Size([10, 16, 30, 32])
Conv2d(16, 33, kernel_size=(3, 2), stride=(2, 1))
torch.Size([10, 33, 14, 31])
권적 계산 과정:
h/w = (h/w - kennel_size + 2padding) / stride + 1
x=([10,16,30,32]), 그 중에서 h=30, w=32, 권적핵의 길이는 각각 h:3, w:2이다.보폭에 대해서는 각각 h:2, w:1이다.padding 기본 0;h = (30 - 3 + 20) / 2 + 1 = 27 / 2 + 1 = 13 + 1 = 14
w = (32 - 2 + 2 * 0) / 1 + 1 = 30 / 1 + 1 = 30 + 1 = 31
batch = 10, out_channel=33 고: y=([10, 33, 14, 31])참조 블로그
nn.ReflectionPad2d() nn.Conv2d 볼륨
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Pytorch는 cpu와 gpu의 사용을 어떻게 전환하는지 상세히 설명합니다.앞에서 말했듯이pytorch에서 서버에 있는 gpu가 점용될 때 우리는 먼저 cpu로 코드를 디버깅하고 싶을 때가 많다. 그러면 gpu와 cpu의 전환이 필요하다. 장치를 가변 매개 변수로 사용하려면argparse를...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.