Siamese neural networks for one shot image recognition paper explainedtaeseon ryu
소개드릴 논문은 오래전에 나왔고, 노드의 구조 또한 단순 하지만, 거리 학습 기반의 One Shot 러닝을 고안하는데 크게 기여하였고, 이전엔 사람이 직접 설계한 특징으로
거리학습을 진행하였지만, 처음으로 Siamese Network를 통하여 DNN을 활용했다는 점에서 의미가 큽니다. 현업에서도 클래스는 많고, 이미지는 적은경우에 대해 유사도를 판단해야 하는 경우 자주 쓰이는 기법이 될 수 있습니다.
오늘 논문 리뷰를 위하여 이미지처리팀 '이예은'님이 자세한 리뷰 도와주셨습니다.
네이버에서 진행한 NLP challenge에서 수상 후 발표한 자료입니다.
[대회링크] https://github.com/naver/nlp-challenge
-------------------------------------------------------------------------------
이신의 (lsnfamily02@yonsei.ac.kr)
박장원 (adieujw@gmail.com)
Intriguing properties of contrastive lossestaeseon ryu
소개드릴 논문은 과거 리뷰를 진행한 Contrastive learning에 이어 꽤나 높은 성능을 가져오고 Contrastive loss로 학습시켰을때 나타나는 특성들이 어떻게 나타나는지 실험을 통해 설명을 하는대요, Contrastive loss를 일반화 한 후 그로부터 나오는 여러 종류의 Contrastive loss의 성능, 또 다양한 객체가 이미지에 있을때 Contrastvie Learning은 Representation을 얼마나 잘 학습하는지, Contrastive learning에서 Augmentation이 얼마나 중요한지에 대한 부분입니다. 오늘 논문 리뷰를 위해 펀디멘탈팀의 이재윤님이 Contrastive learning부터 , 논문에 대한 자세한 리뷰까지 도와주셨습니다.
Machine Learning Foundations (a case study approach) 강의 정리SANG WON PARK
실제 비즈니스에서 많이 활용되는 사례를 중심으로 어떻게 기존 데이터를 이용하여 알고리즘을 선택하고, 학습하여, 예측모델을 구축 하는지 jupyter notebook을 이용하여 실제 코드를 이용하여 실습할 수 있다.
강의 초반에 강조하는 것 처럼, 머신러닝 알고리즘은 나중에 자세히 설명하는 과정이 따로 있고, 이번 강의는 실제 어떻게 활용하는지에 완전히 초점이 맞추어져 있어서, 알고리즘은 아주 간략한 수준으로 설명해 준다. (좀 더 구체적인 내용은 심화과정이 따로 있음)
http://blog.naver.com/freepsw/221113685916 참고
https://github.com/freepsw/coursera/tree/master/ML_Foundations/A_Case_Study 코드 샘플
xgboost를 이해하기 위해서 찾아보다가 내가 궁금한 내용을 따로 정리하였으나, 역시 구체적인 수식은 아직 모르겠다.
요즘 Kaggle에서 유명한 Xgboost가 뭘까?
Ensemble중 하나인 Boosting기법?
Ensemble 유형인 Bagging과 Boosting 차이는?
왜 Ensemble이 low bias, high variance 모델인가?
Bias 와 Variance 관계는?
Boosting 기법은 어떤게 있나?
Xgboost에서 사용하는 CART 알고리즘은?
5.model evaluation and improvement(epoch#2) 1Haesun Park
Slides based on "Introduction to Machine Learning with Python" by Andreas Muller and Sarah Guido for Hongdae Machine Learning Study(https://www.meetup.com/Hongdae-Machine-Learning-Study/) (epoch #2)
홍대 머신 러닝 스터디(https://www.meetup.com/Hongdae-Machine-Learning-Study/) (epoch #2)의 "파이썬 라이브러리를 활용한 머신러닝"(옮긴이 박해선) 슬라이드 자료.
Siamese neural networks for one shot image recognition paper explainedtaeseon ryu
소개드릴 논문은 오래전에 나왔고, 노드의 구조 또한 단순 하지만, 거리 학습 기반의 One Shot 러닝을 고안하는데 크게 기여하였고, 이전엔 사람이 직접 설계한 특징으로
거리학습을 진행하였지만, 처음으로 Siamese Network를 통하여 DNN을 활용했다는 점에서 의미가 큽니다. 현업에서도 클래스는 많고, 이미지는 적은경우에 대해 유사도를 판단해야 하는 경우 자주 쓰이는 기법이 될 수 있습니다.
오늘 논문 리뷰를 위하여 이미지처리팀 '이예은'님이 자세한 리뷰 도와주셨습니다.
네이버에서 진행한 NLP challenge에서 수상 후 발표한 자료입니다.
[대회링크] https://github.com/naver/nlp-challenge
-------------------------------------------------------------------------------
이신의 (lsnfamily02@yonsei.ac.kr)
박장원 (adieujw@gmail.com)
Intriguing properties of contrastive lossestaeseon ryu
소개드릴 논문은 과거 리뷰를 진행한 Contrastive learning에 이어 꽤나 높은 성능을 가져오고 Contrastive loss로 학습시켰을때 나타나는 특성들이 어떻게 나타나는지 실험을 통해 설명을 하는대요, Contrastive loss를 일반화 한 후 그로부터 나오는 여러 종류의 Contrastive loss의 성능, 또 다양한 객체가 이미지에 있을때 Contrastvie Learning은 Representation을 얼마나 잘 학습하는지, Contrastive learning에서 Augmentation이 얼마나 중요한지에 대한 부분입니다. 오늘 논문 리뷰를 위해 펀디멘탈팀의 이재윤님이 Contrastive learning부터 , 논문에 대한 자세한 리뷰까지 도와주셨습니다.
Machine Learning Foundations (a case study approach) 강의 정리SANG WON PARK
실제 비즈니스에서 많이 활용되는 사례를 중심으로 어떻게 기존 데이터를 이용하여 알고리즘을 선택하고, 학습하여, 예측모델을 구축 하는지 jupyter notebook을 이용하여 실제 코드를 이용하여 실습할 수 있다.
강의 초반에 강조하는 것 처럼, 머신러닝 알고리즘은 나중에 자세히 설명하는 과정이 따로 있고, 이번 강의는 실제 어떻게 활용하는지에 완전히 초점이 맞추어져 있어서, 알고리즘은 아주 간략한 수준으로 설명해 준다. (좀 더 구체적인 내용은 심화과정이 따로 있음)
http://blog.naver.com/freepsw/221113685916 참고
https://github.com/freepsw/coursera/tree/master/ML_Foundations/A_Case_Study 코드 샘플
xgboost를 이해하기 위해서 찾아보다가 내가 궁금한 내용을 따로 정리하였으나, 역시 구체적인 수식은 아직 모르겠다.
요즘 Kaggle에서 유명한 Xgboost가 뭘까?
Ensemble중 하나인 Boosting기법?
Ensemble 유형인 Bagging과 Boosting 차이는?
왜 Ensemble이 low bias, high variance 모델인가?
Bias 와 Variance 관계는?
Boosting 기법은 어떤게 있나?
Xgboost에서 사용하는 CART 알고리즘은?
5.model evaluation and improvement(epoch#2) 1Haesun Park
Slides based on "Introduction to Machine Learning with Python" by Andreas Muller and Sarah Guido for Hongdae Machine Learning Study(https://www.meetup.com/Hongdae-Machine-Learning-Study/) (epoch #2)
홍대 머신 러닝 스터디(https://www.meetup.com/Hongdae-Machine-Learning-Study/) (epoch #2)의 "파이썬 라이브러리를 활용한 머신러닝"(옮긴이 박해선) 슬라이드 자료.
5.model evaluation and improvement(epoch#2) 2Haesun Park
Slides based on "Introduction to Machine Learning with Python" by Andreas Muller and Sarah Guido for Hongdae Machine Learning Study(https://www.meetup.com/Hongdae-Machine-Learning-Study/) (epoch #2)
홍대 머신 러닝 스터디(https://www.meetup.com/Hongdae-Machine-Learning-Study/) (epoch #2)의 "파이썬 라이브러리를 활용한 머신러닝"(옮긴이 박해선) 슬라이드 자료.
Slides based on "Introduction to Machine Learning with Python" by Andreas Muller and Sarah Guido for Hongdae Machine Learning Study(https://www.meetup.com/Hongdae-Machine-Learning-Study/) (epoch #2)
홍대 머신 러닝 스터디(https://www.meetup.com/Hongdae-Machine-Learning-Study/) (epoch #2)의 "파이썬 라이브러리를 활용한 머신러닝"(옮긴이 박해선) 슬라이드 자료.
One-stage Network(YOLO, SSD 등)의 문제점 예를 들어 근본적인 문제인 # of Hard positives(object) << # of Easy negatives(back ground) 또는 large object 와 small object 를 동시에 detect하는 경우 등과 같이 극단적인 Class 간 unbalance나 난이도에서 차이가 나는 문제가 동시에 존재함으로써 발생하는 문제를 해결하기 위하여 제시된 Focal loss를 class간 아주 극단적인 unbalance data에 대한 classification 문제(예를 들어 1:10이나 1:100)에 적용한 실험결과가 있어서 정리해봤습니다. 결과적으로 hyper parameter의 설정에 매우 민감하다는 실험결과와 잘만 활용할 경우, class간 unbalance를 해결하기 위한 data level의 sampling 방법이나 classifier level에서의 특별한 고려 없이 좋은 결과를 얻을 수 있다는 내용입니다.
밑바닥부터 시작하는 딥러닝 책 리뷰입니다.
자세한 내용은 책을 참고하세요
--------------------------------------------------------------
오타!!!
26p 의 ReLU함수에서 역전파 되는 값 분모의 x 를 y로 바꾸어야 합니다.
Coursera Machine Learning (by Andrew Ng)_강의정리SANG WON PARK
단순히 공식으로 설명하지 않고, 실제 코드 및 샘플데이터를 이용하여 수식의 결과가 어떻게 적용되는지 자세하게 설명하고 있다.
처음 week1 ~ week4 까지는 김성훈 교수님의 "모두를 위한 딥러닝"에서 한번 이해했던 내용이라 좀 쉽게 진행했고, 나머지는 기초가 부족한 상황이라 다른 자료를 꽤 많이 참고하면서 학습해야 했다.
여러 도서나 강의를 이용하여 머신러닝을 학습하려고 했었는데, 이 강의만큼 나에게 맞는것은 없었던거 같다. 특히 Octave code를 이용한 실습자료는 나중에도 언제든 활용가능할 것 같다.
Week1
Linear Regression with One Variable
Linear Algebra - review
Week2
Linear Regression with Multiple Variables
Octave[incomplete]
Week3
Logistic Regression
Regularization
Week4
Neural Networks - Representation
Week5
Neural Networks - Learning
Week6
Advice for applying machine learning techniques
Machine Learning System Design
Week7
Support Vector Machines
Week8
Unsupervised Learning(Clustering)
Dimensionality Reduction
Week9
Anomaly Detection
Recommender Systems
Week10
Large Scale Machine Learning
Week11
Application Example - Photo OCR
4.representing data and engineering features(epoch#2)Haesun Park
Slides based on "Introduction to Machine Learning with Python" by Andreas Muller and Sarah Guido for Hongdae Machine Learning Study(https://www.meetup.com/Hongdae-Machine-Learning-Study/) (epoch #2)
홍대 머신 러닝 스터디(https://www.meetup.com/Hongdae-Machine-Learning-Study/) (epoch #2)의 "파이썬 라이브러리를 활용한 머신러닝"(옮긴이 박해선) 슬라이드 자료.
Variational Autoencoder를 여러 가지 각도에서 이해하기 (Understanding Variational Autoencod...Haezoom Inc.
인공신경망을 이용한 generative model로서 많은 관심을 받고 있는 Variational Autoencoder (VAE)를 보다 잘 이해하기 위해서, 여러 가지 재미있는 관점에서 바라봅니다. VAE 및 머신러닝 일반에 지식을 가지고 있는 청중을 대상으로 진행된 세미나 자료입니다. 현장에서 구두로 설명된 부분은 슬라이드의 회색 박스에 보충설명을 적어두었습니다.
Slides based on "Introduction to Machine Learning with Python" by Andreas Muller and Sarah Guido for Hongdae Machine Learning Study(https://www.meetup.com/Hongdae-Machine-Learning-Study/) (epoch #2)
홍대 머신 러닝 스터디(https://www.meetup.com/Hongdae-Machine-Learning-Study/) (epoch #2)의 "파이썬 라이브러리를 활용한 머신러닝"(옮긴이 박해선) 슬라이드 자료.
5.model evaluation and improvement(epoch#2) 2Haesun Park
Slides based on "Introduction to Machine Learning with Python" by Andreas Muller and Sarah Guido for Hongdae Machine Learning Study(https://www.meetup.com/Hongdae-Machine-Learning-Study/) (epoch #2)
홍대 머신 러닝 스터디(https://www.meetup.com/Hongdae-Machine-Learning-Study/) (epoch #2)의 "파이썬 라이브러리를 활용한 머신러닝"(옮긴이 박해선) 슬라이드 자료.
Slides based on "Introduction to Machine Learning with Python" by Andreas Muller and Sarah Guido for Hongdae Machine Learning Study(https://www.meetup.com/Hongdae-Machine-Learning-Study/) (epoch #2)
홍대 머신 러닝 스터디(https://www.meetup.com/Hongdae-Machine-Learning-Study/) (epoch #2)의 "파이썬 라이브러리를 활용한 머신러닝"(옮긴이 박해선) 슬라이드 자료.
One-stage Network(YOLO, SSD 등)의 문제점 예를 들어 근본적인 문제인 # of Hard positives(object) << # of Easy negatives(back ground) 또는 large object 와 small object 를 동시에 detect하는 경우 등과 같이 극단적인 Class 간 unbalance나 난이도에서 차이가 나는 문제가 동시에 존재함으로써 발생하는 문제를 해결하기 위하여 제시된 Focal loss를 class간 아주 극단적인 unbalance data에 대한 classification 문제(예를 들어 1:10이나 1:100)에 적용한 실험결과가 있어서 정리해봤습니다. 결과적으로 hyper parameter의 설정에 매우 민감하다는 실험결과와 잘만 활용할 경우, class간 unbalance를 해결하기 위한 data level의 sampling 방법이나 classifier level에서의 특별한 고려 없이 좋은 결과를 얻을 수 있다는 내용입니다.
밑바닥부터 시작하는 딥러닝 책 리뷰입니다.
자세한 내용은 책을 참고하세요
--------------------------------------------------------------
오타!!!
26p 의 ReLU함수에서 역전파 되는 값 분모의 x 를 y로 바꾸어야 합니다.
Coursera Machine Learning (by Andrew Ng)_강의정리SANG WON PARK
단순히 공식으로 설명하지 않고, 실제 코드 및 샘플데이터를 이용하여 수식의 결과가 어떻게 적용되는지 자세하게 설명하고 있다.
처음 week1 ~ week4 까지는 김성훈 교수님의 "모두를 위한 딥러닝"에서 한번 이해했던 내용이라 좀 쉽게 진행했고, 나머지는 기초가 부족한 상황이라 다른 자료를 꽤 많이 참고하면서 학습해야 했다.
여러 도서나 강의를 이용하여 머신러닝을 학습하려고 했었는데, 이 강의만큼 나에게 맞는것은 없었던거 같다. 특히 Octave code를 이용한 실습자료는 나중에도 언제든 활용가능할 것 같다.
Week1
Linear Regression with One Variable
Linear Algebra - review
Week2
Linear Regression with Multiple Variables
Octave[incomplete]
Week3
Logistic Regression
Regularization
Week4
Neural Networks - Representation
Week5
Neural Networks - Learning
Week6
Advice for applying machine learning techniques
Machine Learning System Design
Week7
Support Vector Machines
Week8
Unsupervised Learning(Clustering)
Dimensionality Reduction
Week9
Anomaly Detection
Recommender Systems
Week10
Large Scale Machine Learning
Week11
Application Example - Photo OCR
4.representing data and engineering features(epoch#2)Haesun Park
Slides based on "Introduction to Machine Learning with Python" by Andreas Muller and Sarah Guido for Hongdae Machine Learning Study(https://www.meetup.com/Hongdae-Machine-Learning-Study/) (epoch #2)
홍대 머신 러닝 스터디(https://www.meetup.com/Hongdae-Machine-Learning-Study/) (epoch #2)의 "파이썬 라이브러리를 활용한 머신러닝"(옮긴이 박해선) 슬라이드 자료.
Variational Autoencoder를 여러 가지 각도에서 이해하기 (Understanding Variational Autoencod...Haezoom Inc.
인공신경망을 이용한 generative model로서 많은 관심을 받고 있는 Variational Autoencoder (VAE)를 보다 잘 이해하기 위해서, 여러 가지 재미있는 관점에서 바라봅니다. VAE 및 머신러닝 일반에 지식을 가지고 있는 청중을 대상으로 진행된 세미나 자료입니다. 현장에서 구두로 설명된 부분은 슬라이드의 회색 박스에 보충설명을 적어두었습니다.
Slides based on "Introduction to Machine Learning with Python" by Andreas Muller and Sarah Guido for Hongdae Machine Learning Study(https://www.meetup.com/Hongdae-Machine-Learning-Study/) (epoch #2)
홍대 머신 러닝 스터디(https://www.meetup.com/Hongdae-Machine-Learning-Study/) (epoch #2)의 "파이썬 라이브러리를 활용한 머신러닝"(옮긴이 박해선) 슬라이드 자료.
The guided policy search(GPS) is the branch of reinforcement learning developed for real-world robotics, and its utility is substantiated along many research. This slide show contains the comprehensive concept of GPS, and the detail way to implement, so it would be helpful for anyone who want to study this field.
Imagination-Augmented Agents for Deep Reinforcement Learning성재 최
I will introduce a paper about I2A architecture made by deepmind. That is about Imagination-Augmented Agents for Deep Reinforcement Learning
This slide were presented at Deep Learning Study group in DAVIAN LAB.
Paper link: https://arxiv.org/abs/1707.06203
PR-343: Semi-Supervised Semantic Segmentation with Cross Pseudo SupervisionSungchul Kim
This document proposes a new semi-supervised learning method called Cross Pseudo Supervision (CPS) for semantic segmentation. CPS trains two segmentation networks simultaneously where each network generates pseudo labels for the other using its own predictions. It incorporates this cross pseudo supervision loss with a CutMix data augmentation technique. The document evaluates CPS on PASCAL VOC 2012 and Cityscapes datasets with limited labeled data, finding it outperforms other semi-supervised segmentation methods and ablations. Qualitative results show CPS with CutMix generates more accurate segmentations than alternatives.
Revisiting the Calibration of Modern Neural NetworksSungchul Kim
The document discusses calibration in modern neural networks. It finds that some recent model families, like MLP-Mixers and Vision Transformers (ViTs), are both highly accurate and well-calibrated on in-distribution and out-of-distribution image datasets. Temperature scaling can improve calibration in older models but the newest architectures remain better calibrated. Model size and pretraining amount do not fully explain differences in calibration between families. Architecture appears to be a major factor, with non-convolutional models tending to have better calibration properties.
Emerging Properties in Self-Supervised Vision TransformersSungchul Kim
The document summarizes the DINO self-supervised learning approach for vision transformers. DINO uses a teacher-student framework where the teacher's predictions are used to supervise the student through knowledge distillation. Two global and several local views of an image are passed through the student, while only global views are passed through the teacher. The student is trained to match the teacher's predictions for local views. DINO achieves state-of-the-art results on ImageNet with linear evaluation and transfers well to downstream tasks. It also enables vision transformers to discover object boundaries and semantic layouts.
PR-305: Exploring Simple Siamese Representation LearningSungchul Kim
SimSiam is a self-supervised learning method that uses a Siamese network with stop-gradient to learn representations from unlabeled data. The paper finds that stop-gradient plays an essential role in preventing the model from collapsing to a degenerate solution. Additionally, it is hypothesized that SimSiam implicitly optimizes an Expectation-Maximization-like algorithm that alternates between updating the network parameters and assigning representations to samples in a manner analogous to k-means clustering.
Score based Generative Modeling through Stochastic Differential EquationsSungchul Kim
This document discusses score-based generative modeling using stochastic differential equations (SDEs). It introduces modeling data diffusion as an SDE from the data distribution to a simple prior and generating samples by reversing this diffusion process. It also describes estimating the score (gradient of the log probability density) needed for the reverse process using score matching. Finally, it notes that noise perturbation models like NCSN and DDPM can be viewed as discretizations of specific SDEs called variance exploding and variance preserving SDEs.
Exploring Simple Siamese Representation LearningSungchul Kim
This document discusses an unsupervised representation learning method called SimSiam. It proposes that SimSiam can be interpreted as an expectation-maximization algorithm that alternates between updating the encoder parameters and assigning representations to images. Key aspects discussed include how the stop-gradient operation prevents collapsed representations, the role of the predictor network, effects of batch size and batch normalization, and alternatives to the cosine similarity measure. Empirical results show that SimSiam learns meaningful representations without collapsing, and the various design choices affect performance but not the ability to prevent collapsed representations.
Revisiting the Sibling Head in Object DetectorSungchul Kim
This document describes a method called Task-aware Spatial Disentanglement (TSD) for object detection. TSD uses separate branches to process features for the classification and localization tasks in a spatially disentangled manner. For classification, TSD applies pointwise deformations to the feature map. For localization, it applies proposal-wise translations. This allows each task to process features with spatial sensitivities suitable for their goals, improving performance over methods that do not separate spatial processing for different tasks. TSD achieves state-of-the-art object detection accuracy on standard benchmarks.
This document summarizes the DeepLab models for semantic image segmentation: DeepLab v1 used atrous convolution with VGG-16 as the backbone network. DeepLab v2 improved on this with atrous spatial pyramid pooling and added ResNet-101 as an option. DeepLab v3 removed dense CRFs and introduced multi-grid atrous convolution and bootstrapping. DeepLab v3+ uses an encoder-decoder architecture with Xception or ResNet-101 as the backbone and atrous separable convolutions.
This document summarizes a paper on GoogLeNet, a convolutional neural network that won the 2014 ILSVRC competition. It discusses how GoogLeNet uses inception layers and network-in-network dimensionality reduction to achieve higher accuracy than AlexNet with 12x fewer parameters. The document outlines GoogLeNet's architectural details, training methodology using stochastic gradient descent, and results in classification and detection tracks at ILSVRC 2014. It also references related work on R-CNN, Network-in-Network, and AlexNet.
Generalized Intersection over Union: A Metric and A Loss for Bounding Box Reg...Sungchul Kim
1. The document proposes a Generalized Intersection over Union (GIoU) as a new loss function for bounding box regression that addresses limitations of the standard Intersection over Union (IoU) metric.
2. GIoU extends IoU by also considering the minimum enclosing box for two bounding boxes, not just their intersection. This allows GIoU to better measure the distance between two boxes even if they do not intersect.
3. Experimental results on object detection models like YOLO v3, Faster R-CNN and Mask R-CNN show that using GIoU as the regression loss provides stronger correlation with IoU and improves model performance compared to using IoU directly as the loss.
1. This document discusses panoptic segmentation, which aims to perform semantic segmentation and instance segmentation simultaneously.
2. It introduces the panoptic segmentation task format, which assigns each pixel a semantic label and instance ID. It also presents a new evaluation metric called Panoptic Quality (PQ) to evaluate panoptic segmentation.
3. Baseline experiments are discussed that combine existing semantic and instance segmentation models. The results show current machine performance is still below human consistency levels based on a human annotation study. Future work to develop end-to-end panoptic segmentation models is suggested.
On the Variance of the Adaptive Learning Rate and BeyondSungchul Kim
This document discusses the variance of adaptive learning rates in stochastic gradient descent optimization. It is hypothesized that the large variance of adaptive learning rates early in training can lead to getting stuck in bad local optima. The document proposes rectifying adaptive learning rates to reduce this initial variance, similarly to how warmup reduces variance but without requiring tuning hyperparameters. Experiments show that rectifying adaptive learning rates outperforms vanilla adaptive methods and warmup in convergence and robustness to learning rate changes.
A Benchmark for Interpretability Methods in Deep Neural NetworksSungchul Kim
This document proposes two interpretability evaluation frameworks: ROAR (RemOve And Retrain) and KAR (Keep And Retrain). ROAR evaluates feature importance by removing salient features from inputs based on a trained model's saliency map, regenerating training and test data, and retraining the model. KAR keeps salient features and retrains instead of removing. The document introduces common interpretability methods like gradients, integrated gradients, and ensembling methods. It then explains the ROAR and KAR mechanisms and provides example results, concluding the frameworks can validate feature importance estimates and model reliability.
KDGAN: Knowledge Distillation with Generative Adversarial NetworksSungchul Kim
This document discusses a method called KDGAN that combines knowledge distillation and generative adversarial networks. KDGAN trains a lightweight classifier (student) using knowledge distilled from a larger teacher model and a discriminator that learns the true data distribution. The classifier, teacher, and discriminator are trained together in an adversarial framework where the classifier learns to mimic the teacher's outputs and fool the discriminator, while the discriminator learns to distinguish the classifier's outputs from real data. This equilibrium allows the classifier to learn the true data distribution effectively from limited data with privileged information only available during training. The document outlines the KDGAN training method and framework and provides examples of compressing deep models and performing image tag recommendation.
This document discusses the design of neural network architectures. It introduces RegNet, a design space that uses a simple linear parameterization to generate "regular" networks. The document analyzes the RegNet design space and compares it to existing networks. Key findings include that optimal depth is around 20 blocks, a bottleneck ratio of 1 is best, and a width multiplier of around 2.5 works well. RegNet models achieve state-of-the-art or competitive results across mobile, standard, and full network regimes.
Search to Distill: Pearls are Everywhere but not the EyesSungchul Kim
This document discusses architecture-aware knowledge distillation (AKD), which uses reinforcement learning to find the optimal student network architecture for distilling knowledge from a given teacher model. It introduces AKD and how it guides the search for best architectures under latency constraints. Preliminary experiments show AKD networks achieve state-of-the-art results on ImageNet classification and generalize well to other tasks like face recognition and ensemble learning.
Bootstrap Your Own Latent: A New Approach to Self-Supervised LearningSungchul Kim
This document summarizes a paper on Bootstrap Your Own Latent (BYOL), an unsupervised contrastive learning method that does not use negative pairs. BYOL trains a target network to predict the output of an online network using a different data augmentation. The loss is the mean squared error between the predictions. BYOL achieves state-of-the-art performance on several image classification benchmarks without negative pairs by bootstrapping representations from its own augmented views. Ablation studies show BYOL is robust to different augmentations and batch sizes but requires careful tuning of the target network update rate.
2. Contents
1. Introduction
2. Related Work
3. Method
4. Experiments
5. Discussion
2
https://github.com/rlatjcj/Paper-code-review/tree/master/%5BArxiv%202020%5D%20Supervised%20Contrastive%20Learning
3. Introduction
• Cross-entropy
• Supervised learning에서 많이 사용됨
• Label distribution과 empirical distribution의 KL-divergence로 생각할 수 있음
• 개선 : label smoothing, self-distillation, mixup, …
• 같은 클래스는 가깝게, 다른 클래스는 멀게 하는 supervised training loss
• Self-supervised learning에서 좋은 성능을 보이는 metric learning과 연관이 있는 contrastive objective functions
3
4. Introduction
• Supervised contrastive leaning
• Multiple positives를 적용한 contrastive loss로 full supervised setting에서 contrastive learning 진행
• Cross-entropy와 비교했을 때 top-1 accuracy와 robustness에서 SOTA
• Cross-entropy보다 hyperparameter 범위에 덜 민감
• Hard positive, negative의 학습을 촉진하는 gradient
• Single positive, negative가 사용되었을 때 triplet loss와 연관성
4
5. Related Work
• Self-supervised representation learning + Metric learning + Supervised learning
• Cross-entropy loss는 deep network를 학습하기 위한 좋은 loss function
• 하지만, 왜 target label이 정답이 되어야 하는지 명확하지 않음
• 더 좋은 target label vector가 존재함을 증명 (S. Yang et al., 2015)
• Cross-entropy loss의 다른 단점
• Sensitivity to noise labels (Z. Zhang et al., 2018., S. Sukhbaatar et al., 2014.)
• Adversarial examples (G Elsayed et al., 2018., K. Nar et al., 2019.)
• Poor margins (K. Cao et al., 2019.)
• 다른 loss제안, reference label distribution을 바꾸는 것이 더 효과적
• Label smoothing, Mixup, CutMix, Knowledge Distillation
5
S. Yang et al., 2015.
K. Cao et al., 2019.
6. Related Work
• 최근에 self-supervised representation learning이 각광받는 중
• Language domain
• Pre-trained embedding (BERT, Xlnet, …)
• Image domain
• Embedding을 배우기 위해 사용 (e.g. 가려진 signal부분을 가려지지 않은 부분으로 예측)
• Self-supervised representation learning은 contrastive learning으로 바뀌는 중
• Noise contrastive estimation, N-pair loss
• 학습할 때 deep network의 마지막 레이어에 loss를 적용
• 테스트 시 downstream transfer task, fine tuning, direct retrieval task를 위해 이전 레이어를 활용
6
7. Related Work
• Contrastive learning은 metric learning과 triplet loss와 연관있음
• 공통점은 powerful representation을 학습
• Triplet loss와 contrastive loss의 차이점
• Data point당 positive, negative pair 수
• Triplet loss : one positive, one negative
• Supervised metric learning : positive in same class, negative in different class (hard negative mining)
• Self-supervised contrastive loss : one positive pair selected using either co-occurrence or using data augmentation
• Supervised contrastive와 가장 유사한 것은 soft-nearest neighbor loss
• 공통점 : embedding을 normalize, euclidean distance를 inner product로 교체
• 개선 : data augmentation, disposable contrastive head, two-stage training
7
8. Method
• Representation Learning Framework
• Self-supervised contrastive learning을 사용한 Contrastive Multiview Coding, SimCLR과 구조적으로 유사
• 각 input image에 대해 두 개의 randomly augmented image 생성
• First stage : random crop + resize to the image’s native resolution
• Second stage : AutoAugment, RandAugment, SimAugment
• Encoder network(𝐸(⋅)) : augmented image 𝒙 를 representation vector 𝒓 = 𝐸 𝒙 ∈ ℛ 𝐷 𝐸 로 나타냄
• E.g. ResNet50의 마지막 pooling layer(𝐷 𝐸)를 representation vector로 사용, unit hypersphere로 항상 normalize
• Projection network (𝑃(⋅)) : normalized representation vector 𝒓 을 contrastive loss 계산에 적합한 vector 𝒛 =
𝑃 𝒓 ∈ ℛ 𝐷 𝑃로 나타냄
• E.g. 𝐷 𝐸의 output vector size를 가진 multi-layer perceptron 사용, unit hypersphere로 항상 normalize
• 학습이 완료되면, projection network를 없애고 single linear layer로 교체
8
9. Method
• Contrastive Losses: Self-supervised and Supervised
• Contrastive loss의 이점은 유지한 채 labeled data를 효과적으로 사용하는 contrastive loss
• Randomly sampling으로 N개의 image/label pairs 생성 ( 𝑥 𝑘, 𝑦 𝑘 𝑘=1…𝑁)
• 실질적으로 학습에 사용되는 minibatch는 2N pairs ( 𝑥 𝑘, 𝑦 𝑘 𝑘=1…2𝑁)
• 𝑥2𝑘, 𝑥2𝑘−1 : two random augmentation of 𝑥 𝑘 𝑘 = 1 … 𝑁
• 𝑦2𝑘−1 = 𝑦2𝑘 = 𝑦 𝑘
9
https://towardsdatascience.com/exploring-simclr-a-simple-framework-for-contrastive-learning-of-visual-representations-158c30601e7e
10. Method
• Contrastive Losses: Self-supervised and Supervised
• Self-Supervised Contrastive Loss
• 𝑖 ∈ 1 … 2𝑁 : the index of an arbitrary augmented image
• 𝑗 𝑖 : the index of the other augmented image originating from the same source image
• 𝑧𝑙 = 𝑃 𝐸 𝒙𝒍
• 𝑖 : anchor / 𝑗(𝑖) : positive / 𝑘 𝑘 = 1 … 2𝑁, 𝑘 ∉ 𝑖, 𝑗 : negatives
• 𝑧𝑖 ⋅ 𝑧𝑗 𝑖 : an inner product between the normalized vectors
• Similar view는 neighboring representation, dissimilar view는 non-neighbor representation으로 학습
10
11. Method
• Supervised Contrastive Loss
• Supervised learning은 같은 클래스에 속한 샘플이 하나보다 많기 때문에, Eq.2의 contrastive loss 사용할 수 없음
→ 임의의 positive를 사용하기 위한 loss제안
• 𝑁𝑦 𝑖
: the total number of images in the minibatch that have the same label, 𝑦𝑖, as the anchor, 𝑖
• Generalization to an arbitrary number of positives
• Loss는 encoder가 같은 클래스 내 모든 데이터를 Eq.2보다 더 robust clustering으로 가깝게 표현하도록 함
• Contrastive power increases with more negatives
• 분모에 positive는 물론 negative를 많이 추가하여 positive와 멀리 떨어지도록 함
11
12. Method
• Supervised Contrastive Loss Gradient Properties
• Supervised contrastive loss가 weak positive, negative보다 hard positive, negative에 초점을 둔 학습방법임을 증명
• Projection network 마지막에 normalization layer 추가 → gradient를 inner product할 때 조절
• 𝑤 : the projection network output immediately prior to normalize (e.g. 𝑧 = 𝑤/| 𝑤 |)
12
positives
negatives
13. Method
• Supervised Contrastive Loss Gradient Properties (Cont.)
• Easy positive, negative : small gradient / Hard positive, negative : large gradient
• Easy positive : 𝑧𝑖 ⋅ 𝑧𝑗 ≈ 1, 𝑃𝑖𝑗 is large
• Hard positive : 𝑧𝑖 ⋅ 𝑧𝑗 ≈ 0, 𝑃𝑖𝑗 is moderate
→ weak positive는 ||∇ 𝑧 𝑖
ℒ𝑖,𝑝𝑜𝑠
𝑠𝑢𝑝
|| 가 작고, hard positive는 큼
• Weak negative는 𝑧𝑖 ⋅ 𝑧𝑗 ≈ −1, hard negative는 𝑧𝑖 ⋅ 𝑧𝑗 ≈ 0이므로 𝑧 𝑘 − 𝑧𝑖 ⋅ 𝑧 𝑘 ⋅ 𝑧𝑖 ⋅ 𝑃𝑖𝑘에 영향을 미침
• ( 𝑧𝑖 ⋅ 𝑧𝑙 ⋅ 𝑧𝑙 − 𝑧𝑙)은 normalization layer가 projection network 마지막 에 붙어있을 때만 그 역할을 할 수 있음
→ network에 normalization을 사용해야함!
13
14. Method
• Connections to Triplet Loss
• Contrastive learning은 triplet loss와 밀접한 연관이 있음
• Triplet loss는 positive와 negative를 각각 하나씩 사용
→ Positive와 negative가 각각 하나 씩인 contrastive loss로 생각할 수 있음
• Anchor, positive의 representation이 anchor, negative보다 더 잘 맞춰졌다고 가정 (𝑧 𝑎 ⋅ 𝑧 𝑝 ≫ 𝑧 𝑎 ⋅ 𝑧 𝑛)
• Margin 𝛼 = 2𝜏인 triplet loss와 동일한 형태
• 물론 성능이 더 좋고 계산량도 적음
14
17. Experiments
• Hyperparameter Stability
• Hyperparameter의 변화에서도 안정된 성능 유지
• Different optimizer, data augmentation, learning rates
• Optimizer와 augmentation의 변화에서 작은 분산을 보임
• Hypersphere의 smoother geometry 덕분이라고 추측
17
18. Experiments
• Effect of Number of Positives
• Positive의 수의 영향에 대해 ablation study
• Positive의 수를 늘릴수록 성능이 좋아짐
• Positive의 수를 늘릴수록 computational cost가 높아지는 trade-off
• Positive에는 같은 데이터지만 다른 augmentation한 경우도 포함되고, 나머지는 같은 클래스지만 다른 샘플
• Self-supervised learning은 1positive
18
19. Experiments
• Training Details
• Epochs : 700 (pre-training stage)
• 각 스텝마다 cross-entropy보다 50%정도 느렸는데, 이는 미니배치 내 모든 요소들의 cross-product를 계산해야 했기 때문
• Batch size : ~8192 (2048도 충분)
• ResNet50은 8192, ResNet200은 2048 (큰 네트워크일수록 작은 batch size가 필요)
• 고정된 batch size에서 cross-entropy와 비슷한 성능을 갖는데 larger learning rate와 적은 epoch로 가능
• Temperature : 𝜏 = 0.07
• Temperature은 작을수록 좋은 성능을 보이지만, numerical stability 문제로 학습이 어려울 수 있음
• AutoAugment가 Supervised Contrastive와 Cross Entropy 모두에서 좋은 성능을 보임
• LARS, RMSProp, SGD with momentum을 different permutation으로 initial pre-training step, dense layer 학습
• ResNet을 cross entropy로 학습할 땐 momentum optimizer, supervised contrastive loss로 학습할 땐 pre-training에는 LARS,
dense layer 학습은 RMSProp
19