분류 전체보기(82)
-
[논문 리뷰] Not all images are worth 16x16 words
이번에 소개할 논문은 제목에서 알 수 있듯이, 모든 이미지를 똑같은 patch size로 나눌 필요가 없다!라는 주제를 가지고 있다. ViT는 patch size를 달리하였을 때 더 많은 tokens이 만들어졌을 때 더 높은 성능을 보여주나 computational cost가 급격하게 증가하는 단점을 가지고 있다. 저자는 이미지가 저마다 가지고 있는 특성이 다르기 때문에 각각에 대해서 token의 개수를 dynamic하게 정해줌으로써 위와 같은 문제점을 완화할 수 있다고 주장한다. 본 논문으로 들어가보자! https://arxiv.org/abs/2105.15075 Not All Images are Worth 16x16 Words: Dynamic Transformers for Efficient Image ..
2022.05.05 -
[논문리뷰] Attention Augmented Convolutional Networks
1. Introduction 1.1 Convolutional Neural Network(CNN) CNN은 computer vision에서 높은 성능을 보여주면서 dominant한 mechanism으로 자리잡았다. 이렇게 CNN이 이미지 task에최적화된 성능을 낼 수 있는 이유는 1) 일정 크기의 kernel을 통한 sliding 방식으로 receptive field를 제한하여 "locality"를 가지는 점과 2) weight sharing을 통한 translation equivariance 특성이 있다. 하지만 이러한 convolutional kernel의 locality로 인해서 이미지의 global contexts를 잡아내기 힘들다는 단점도 존재한다. >> locality가 좋은 이유는 어떠한 ..
2022.03.24 -
[Pytorch] Multi-gpu 사용하기
이번에 pytorch로 multi-gpu를 사용할 일이 생겨서 알아보게 되었다. 방법은 매우 간단하니 한번 살펴보자! ㅎㅎ NGPU = torch.cuda.device_count() device = torch.device("cuda" if torch.cuda.is_available() else "cpu") if NGPU > 1: self.model = torch.nn.DataParallel(self.model, device_ids=list(range(NGPU))) torch.multiprocessing.set_start_method('spawn') self.model.to(device) 간단하게 살펴보면 torch.cuda.device_count()는 현재 할당된 gpu 개수를 의미한다. 따라서 이 개수..
2022.03.23 -
[오류해결]RuntimeError: Cannot re-initialize CUDA in forked subprocess. To use CUDA with multiprocessing, you must use the 'spawn' start method
Multi-gpu를 사용하려고 할 때 나올 수 있는 오류문이다. 누구는 나오고 누구는 안나오는지 정확한 이유는 모르겠지만 다음과 같은 방법으로 해결이 가능하다. torch.multiprocessing.set_start_method('spawn') 위 문구를 집어넣으면 끝! 매우 간단하지만 필자는 위 방법으로 해결이 되었다. ㅎㅎ 다들 연구든 개발이든 화이팅이다!!
2022.03.23 -
[논문 리뷰] Matching Networks for one shot learning
1. Introduction 사람은 새로운 개념을 배울 때 아주 적은 수의 데이터로도 object에 대해 generalize하는 것이 가능하다. 하지만 CNN은 어떠한가? 위의 기린이라는 새로운 object를 학습하려면 많은 이미지를 필요로 한다. 이미지 데이터와 그 label을 만드는 것은 간단하게 생각해보아도 비용이 매우 비쌀 것이다. "few-shot learning"은 Neural Network도, 사람과 같이, 새로운 개념을 배울 때 아주 적은 데이터로도 잘 학습할 수 있도록 만드는 것을 목표로 한다. 출처: https://nanonets.com/blog/data-augmentation-how-to-use-deep-learning-when-you-have-limited-data-part-2/ l..
2022.03.15