일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- python 문법
- Deep learning
- 파이썬
- python
- __init__
- DeepLearning
- rnn
- pytorch
- 가상환경구축
- CNN
- torch.nn
- 머신러닝
- 가상환경
- tensorflow
- torch.nn.Module
- ViT
- vision transformer
- pip install
- LSTM
- Anaconda
- 파이썬문법
- ubuntu
- __call__
- 딥러닝
- Torchvision
- pychram
- objectdetection
- docker
- AI
- wsl2
- Today
- Total
목록code_study/pytorch (8)
인공지능을 좋아하는 곧미남
device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')input.float().to(device)np.array(input[i].permute(1, 2, 0).cpu(), dtype=np.float32)이때 input에 .cpu()로 cpu연산 변환이 되지 않으면, 아래 Error가 발생함. TypeError: can't convert cuda:0 device type tensor to numpy. Use Tensor.cpu() to copy the tensor to host memory first.
오늘은 torchvision에서 제공하는 ImageFolder 클래스에 대해 알아보겠습니다.from torchvision.datasets import ImageFolder1. ImageFolder의 사용법1. ImageFolder의 사용법 - 하나의 폴더에 하위 폴더가 Class를 나누는 기준이 되어 Image Classification의 target 데이터를 얻을 때 정말 유용하다. 저는 이러한 tree 구조의 폴더로 구성된 데이터를 생성하여 테스트해보았습니다. 맨 마지막 하위 폴더에는 png 파일이 저장되어 있습니다. 즉, 상위 폴더 1개, 하위 폴더 여러개(Class 수 만큼), 맨 하위 폴더엔 각 Class별 이미지 파일이 저장되어 있습니다. 그 후 이렇게 ImageFolder은 세 가지 변..
오늘은 간단히 pytorch에서 제공하는 대표적인 모델 구현에 사용하는 nn.Module이나 기타 다른 모델에서 input data를 손 쉽게 전달할 수 있게 만든 def forward()에 관해 알아보겠습니다. 이건 앞전에 제가 python 문법인 "__call__" 설명 게시물을 한번 보고 오시면 도움이 되실겁니다. 오늘 내용은 아래 목차와 같습니다. 1. "def forward()"의 역할 2. 어떻게 pytorch에서 "def forward()"를 구현했는가?1. "def forward()"의 역할우선 def forward(self, x)의 메커니즘을 알기위해서는 python의 "__call__"과 클래스 상속에 관한 내용을 숙지해야합니다. 제 블로그 게시물에 "__call__"과 클래스 상속 ..
Image Feature를 학습하기 위해 BackBone으로 사용되는 많은 모델들이 있습니다. 그 중 ResNet50 구조에서 원하는 layer에서 feature map을 추출할 수 있는 코드를 pytorch를 이용해 구현해보겠습니다. 최종적인 목표는 Multi Layer의 Feature를 사용해서 Image Resolution(Scale)에 강건한 모델을 만들고 싶어 이런 방법을 생각해보았습니다. 오늘의 내용은 아래의 목차와 같습니다. 1. Multi-Scale를 사용하는 이유 및 장점 2. ResNet50 구조 3. ResNet50 구조에서 원하는 Layer의 Feature Map을 추출 4. 내용 고찰 정리1. Multi-Scale를 사용하는 이유 및 장점Feature pyramid networ..
오늘은 딥러닝 아키텍쳐를 구현할때 여러 Layer를 순서대로 층을 구성할 수 있는 방법인nn.Sequential 클래스에 관해 알아보겠습니다.제가 준비한 내용은 아래와 같습니다. 1. nn.Sequential의 목적 2. nn.Sequential의 사용방법 3. nn.Sequential에서 원하는 layer 불러오기. 4. 내용 고찰1. nn.Sequential의 목적 - Multi Layer 구성을 만들기 위해 사용2. nn.Sequential의 사용방법 - 코딩 시 표현법은 총 두 가지입니다. 1) layer마다 nn.Sequential Instance 부여하기 self.layer1 = nn.Sequential( ConvLSTM(in_channels=num..
pytorch의 패키지를 사용하여 Image Data를 Load하는 코드 설명과 과정에 대해서 알아보겠습니다. Data Augmentation과 os.listdir를 이용한 Window File folder에서 파일을 가져오는 방법도 있으니 참고하시면됩니다. 제가 pytorch에서 사용한 Dataloader관련 패키지는 "torch.utils.data.Dataset"과 "torch.utils.data.DataLoader"입니다. 오늘의 내용은 아래와 같이 간략히 정리됩니다. - INDEX - 1. import os를 이용한 image file명 불러와 list에 저장하기. 2. torch.utils.data.Dataset 클래스를 사용하여 저장된 image file명 list에서 file경로를 불러와 각..
오늘은 torch.nn.Module.parameters(), named_parameters()를 이용하여 Deep Neural Network의 convolution layer의 parameters인 weight, bias를 추출해보겠습니다. 오늘의 내용은 아래와 같습니다. 1. torch.nn.Module.parameters() 설명 2. torch.nn.Module.named_parameters() 설명 제가 구성한 model은 아래 코드와 같습니다. - 구현 코드 - import torch import torch.nn as nn class CNN(nn.Module): def __init__(self, img_size, num_class): super(CNN, self).__init_..
오늘은 torch.nn.Module 패키지를 활용한 Deep Neural Network를 구축해보고, 내가 얻은 인사이트를 공유하겠습니다. 1. 저는 torch.nn.Module 패키지로 보통 클래스를 생성하는데, nn.Module을 기반클래스로 상속하여 파생클래스인 Model(CNN)을 생성하여 구축합니다. (여기선 CNN이라는 Class 명을 사용했습니다.) import torch import torch.nn as nn class CNN(nn.Module): def __init__(self, img_size, num_class): super(CNN, self).__init__() self.conv = nn.Sequential( nn.Conv2d(3, 32, 3, 1, 1), nn.LeakyReLU(0..