일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- remixmatch paper
- 딥러닝손실함수
- CGAN
- Pix2Pix
- semi supervised learnin 가정
- GAN
- Entropy Minimization
- mme paper
- SSL
- WGAN
- CycleGAN
- 컴퓨터구조
- simclrv2
- UnderstandingDeepLearning
- Pseudo Label
- shrinkmatch paper
- adamatch paper
- cifar100-c
- dcgan
- Meta Pseudo Labels
- shrinkmatch
- CoMatch
- 최린컴퓨터구조
- 백준 알고리즘
- BYOL
- mocov3
- conjugate pseudo label paper
- ConMatch
- tent paper
- dann paper
- Today
- Total
목록분류 전체보기 (247)
Hello Data
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/0N2iA/btsgludFHfq/OzAyT0EaRxnlVmHQdTWL50/img.png)
지난번 Simsiam 에 이어 Facebook에서 2021 년에 발표된 SSL논문 DINO입니다. DINO는 self-distilation with no labels 을 줄인말입니다. https://arxiv.org/pdf/2104.14294.pdf Introduction 이 논문에서 저자들은 vision 분야에서의 ViT의 성공이 과연 SSL에서도 성공할 수 있을지에 대한 물음에서 시작되었다고 합니다. 기존 supervised learning 방법으로는 이미지의 visual information이 줄어들었는데 CNN을 이용한 SSL에서는 이러한 정보가 증대되었기 때문에 ViT를 이용한 SSL에서도 과연 이러한 것이 똑같이 적용되는지 궁금했다고 합니다. 저자들이 생각하는 ViT를 이용한 SSL의 주요 특..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/cxDnch/btsftIcZ5F5/8dScyV3aF7kyYVikEwJ7s0/img.png)
논문의 제목은 Exploring Simple Siamese representation Learning이다. https://arxiv.org/pdf/2011.10566.pdf Introduction siamse network는 가중치를 공유하는데 이러한 방법은 두 개체간의 comparing 을 하는데에 효과적이라고 합니다(contrastive를 제외하고도). 일반적으로 Siamse 구조는 collapsing문제를 안고 있는데, SimCLR에서는 negative pair를 이용하고, SwAV에서는 clustering 방법을 사용하고, BYOL에서는 momentum update를 사용해 이러한 문제를 해결하려고 하였다. 그러나 이 논문에서는 이러한 방법들을 다 사용하지 않고 오직 stop gradient만을 ..
한번도 모델에 추가해본적 없는데 한번 직접 해보려고 한다. import torchvision.models as models import torch.nn as nn import torch model = models.resnet18(pretrained = True) num_features = model.fc.out_features new_fc = nn.Linear(num_features, 10) model.fc = nn.Sequential( model.fc, new_fc ) print(model.fc) Sequential( (0): Linear(in_features=512, out_features=1000, bias=True) (1): Linear(in_features=1000, out_features=10..
cross entropy이 놈은 공부해도 공부해도 계속 알쏭달쏭하다. 그래서 지금 나름 정리했다고 생각했는데 또 나중에 궁금해 할 수도 있긴한데 일단 지금 기준으로 내가 정리한 걸 적어보려고 한다.y = torch.FloatTensor([0, 0, 0, 0, 1, 0, 0, 0, 0, 0])x = torch.Tensor([0.1, 0.03, 0.05, 0.2, 0.9, 0.0, ..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/olblv/btsdZMbdLtx/Y5krqE8S9TbLWnMXBFaCi1/img.png)
논문의 풀 제목은 Unsupervised Learning of Visual features by contrasting cluster assignments이다. 지난번에 BYOL을 리뷰했었는데 SwAV또한 성능이 좋아 많은 논문에서 비교대상으로 삼고있고, Clustering 방법을 사용하고 있어 흥미로워 읽어보았다. Introduction 현재 많은 self supervised learning 방법들이 supvervised learning 과의 차이가 점점 들어들고 있다. 그리고 이러한 SSL 의 두가지 중요한 요소는 1) constrastive loss 2) set of image transformation이다. 이 두가지 요소는 성능에 필수적이지만 각각을 pairwise로 비교를 해야하므로 practi..
다른 사람들의 코드들을 살펴보던 중 getattr을 발견했다. 예전부터 몇번 본 거 같은데 코드짜는데 있어 알고 있으면 나쁠 거는 없다고 생각해서 기록해두려고 한다. 우선 파이썬 내장된 함수이며 따로 import 해서 불러올 필요가 없다. 다른 분들의 설명을 잘 이해를 못했었는데 예시를 통해서 보면 더 쉬울 거 같다. import torch.nn as nn import torch class MyModule(nn.Module): def __init__(self, input_dim, hidden_dim, output_dim): super(MyModule, self).__init__() self.fc = nn.Linear(input_dim, hidden_dim) self.bn = nn.BatchNorm1d(h..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/G9o8g/btsdZh9T87y/mqkva07CgbEu5X05Vz7wI0/img.png)
논문 제목은 Boostarp Your Own Latent, A new approach to self-supervised learning 입니다.논문을 읽기 전 다른 분들의 설명을 보았는데 굉장히 흥미롭고 재밌어서 처음부터 한번 따라가볼라고 합니다. Introduction기존의 SOTA를 찍은 contrastive learning 방법들은 (SimCLR V2, MoCO V2) negative pairs 간의 주의한 관리가 필요하며 큰 batch size를 요한다고 합니다. 추가적으로 데이터 증강 방법에도 민감하다고 합니다. 이러한 방법들에 비해 본인들의 방법인 BYOL 은 negative pair에 민감하지 않으다고 합니다. BYOL은 2가지 네트워크 구조를 이용하는데 한가지는 target network..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/ZgTFD/btsdZZmKpx4/s0SwRsjBeBv2rtW7mVMkZ0/img.png)
BYOL 논문 설명을 보다 해당 학습 스케쥴러에 대한 내용이 보여 한번 알아보려고 한다. 학습률을 관리하는 기법도 참 많은 거 같은데 이것만 관리해서 과연 얼마나 정확도가 올라갈지 직접 보지는 않아서 모르겠다 해당 공식 문서 https://pytorch.org/docs/stable/generated/torch.optim.lr_scheduler.CosineAnnealingLR.html CosineAnnealingLR — PyTorch 2.0 documentation Shortcuts pytorch.org 우선 식은 다음과 같다. 우선 기본적으로 코사인 함수 주기함수를 따른다. min, max가 들어가있는 기호는 직접 지정해주는 학습률 최대,최소값이다. Tcur : 현재 몇번째 epoch인지 Tmax: 주기..