Machine Learning

A collection of 11 posts
Pytorch DDP 설정하는 법 (DDP baseline)
Machine Learning

Pytorch DDP 설정하는 법 (DDP baseline)

일단 아래는 baseline으로 쓸만한 데모 소스이다. (설명은 더 아래에 있다.) NLP 모델에서 pretraining과 finetuning을 번갈아 가며 할 수 있도록 설게했다. config.mode는 pretrain과 finetune 중 하나, run_epoch 함수의 mode는 train/valid임에 유의. config.mode는 당연히 필요 없다면 지우고 나머지 부분도 알아서 수정해가며 쓰면 된다. AverageMeter은 내 기억이 맞다면 내가
5 min read
ArcfaceLoss for Competition
Machine Learning

ArcfaceLoss for Competition

ArcfaceLoss는 간단히 말하면 Softmax+Cross Entropy Loss(CE Loss)를 개량한 것이라 보면 된다. 관련 논문은 arXiv 기준 2018년에 처음 Submit되었다. 사용법이 매우 간단하고 동시에 성능은 상당히 좋다. 용어 정리 * Logits: softmax 직전 레이어의 출력값 Softmax+CE Loss ArcfaceLoss에 대해 알아보기 전에, 가장 고전적(?)으로 쓰이는 Softmax+CE Loss에 대해
8 min read
[딥러닝] 이상하게 길게 보면 학습이 되는 것 같긴 한데 영 상태가 이상할 때 해결방법
Machine Learning

[딥러닝] 이상하게 길게 보면 학습이 되는 것 같긴 한데 영 상태가 이상할 때 해결방법

이런 식으로 수십 epoch 이후에는 성능 향상이 되기는 하는데 단기적으로는 심지어 loss가 늘어나기도 하는 경우가 있다. (가장 처음 loss의 1.5배 이상으로 10epoch 이상 유지) 의심해볼 만한 걸로는 1. criterion 제대로 나오는지 점검(왠만하면 멀쩡할 것이다) 2. learning rate, optimizer가 잘못되었나 점검(lr 너무 높으면 수렴이 힘듬) 3. 2번과 더불어
2 min read
InfoNeRF: Ray Entropy Minimization for Few-Shot Neural Volume Rendering
Papers Reading

InfoNeRF: Ray Entropy Minimization for Few-Shot Neural Volume Rendering

InfoNeRF: Ray Entropy Minimization for Few-Shot Neural Volume Rendering https://arxiv.org/abs/2112.15399 https://cv.snu.ac.kr/research/InfoNeRF/ Shannon Entropy에 기반해 광선의 entropy를 minimze하고 여기에 KL divergence loss term을 더해 오직 4개의 이미지를 이용한 Few-shot NeRF에 좋은 성능을 낸다. entropy minimization은 "가장 덜 noisy"한, 또는
6 min read
Machine Learning

RL Course by David Silver 요약

이 글은 David Silver의 2015년 Reinforcement Learning 강의를 내 방식으로 일부 재해석해가며 적는 요약 글이다. 이 글 하나만 보고 RL을 처음 배우기는 적합하지 않을 것이며, Sutton의 An Introduction to Reinforcement Learning(한국 번역서: 단단한 강화학습)이나 유튜브 강의를 보며 참고하기를 권장한다. 물론 이미 RL에 대한 기반 지식이 있는데 기억이 희미해지거나
35 min read
Machine Learning

Gumbel Trick Explained

Reparameterization Trick 왜 필요한가? * deterministic하게 작동하는 NN이라면 상관없지만, VAE처럼 어떠한 stochastic distribution에서 $n$개의 sample을 sampling하여 이후 레이어의 입력으로 삼는 Neural Network의 경우 "sampling 연산"에 대해 gradient를 계산할 수 없다. * layer의 output $z$를 sampling하는 연산을 Gumbel Distribution을 이용해 argmax로 바꿔버리 자! = Gumbel-Max Trick * argmax는 미분 불가능하니 softmax로 바꿔주자!
3 min read
Machine Learning

Iterative Policy Evaluation의 수렴성 증명

David Silver의 Reinforcement Learning 3강에서는 $q_\pi(s,a)$를 이용해 수렴성을 보이는데, 좀 의문이 들어서 fixed-point iteration, 바나흐 고정점 정리에 기반해 Iterative Policy Evaluation의 수렴성을 따로 증명해 보려고 한다. 강의에서 소개한 대로, 단순히 $v_{\pi '}(s) \ge v_\pi(s)$을 보이는 것만으로는 수렴성을 증명할 수 없다고 본다.
4 min read
Machine Learning

딥러닝 입문부터 심화까지 강의,책,공부소스 추천

주의: 고등학교 수준 수학과 파이썬 기초 정도는 알고 있는 사람을 기준으로 작성한 글. 아마 강의 중에 파이썬 기초까지 설명하는 강의가 있긴 하겠지만 혹시 파이썬도 모른다면 먼저 파이썬 기초 강의를 듣거나 책 하나 사서 따라서 프로그래밍 해보기를 권함. (파이썬은 워낙 쉬워서 금방 배웁니다) 그리고 선형대수는 아마 대부분의 강의에서 "알면 좋지만 모르면
8 min read
단단한 머신러닝 Ch. 1 리뷰
Machine Learning

단단한 머신러닝 Ch. 1 리뷰

전체 내용을 요약하기보단, 특별히 기억할 만한 내용이나 흥미로운 내용 위주로 리뷰한다. 다시 말해, 단단한 머신러닝을 이미 읽어본 독자를 기준으로 글을 쓴다. 1.2 머신러닝의 기본 용어 학습 또는 훈련: 데이터를 통해 모델을 만들어나가는 과정 가설: 학습 모델(데이터 속에 잠재된 어떠한 규칙) 머신러닝 모델에게 중요한 것은 일반화(generalization) 능력 이미
10 min read