- 2020년 11월 22일 오후 8:06
- 조회수: 4688
REFERENCES
INFORMATION
- 2020년 12월 4일
- 오후 1시 ~
- 온라인 비디오 시청 (YouTube)
TOPIC
On-Line Video
OVERVIEW
최근 딥러닝 모델이 컴퓨터 비전 분야에서 뛰어난 결과를 달성하고 있다. 하지만 그 성능이 많은 양의 레이블 존재하는 데이터에 크게 의존한다는 단점이 존재한다. 따라서 최근 이런 문제를 해결하고자하는 다양한 연구들이 존재한다 (Transfer learning, Semi-supervised learning, Self-supervised learning ...). 이번 세미나에서는 그 중 한 가지 방법으로 준지도학습(Semi-supervised learning)이 적용된 딥러닝 모델인 Mixmatch에 대해서 소개하고자 한다. Mixmatch 모델은 레이블이 존재하지 않는 데이터에 Consistency regularization, Entropy minimization, Mixup regularization을 아우르는 준지도학습 알고리즘으로 기존 알고리즘들 보다 더 나은 성능을 달성하였다.
참고문헌 :
1. Berthelot, D., Carlini, N., Goodfellow, I., Papernot, N., Oliver, A., & Raffel, C. A. (2019). Mixmatch: A holistic approach to semi-supervised learning. In Advances in Neural Information Processing Systems (pp. 5049-5059).
2. Oliver, A., Odena, A., Raffel, C. A., Cubuk, E. D., & Goodfellow, I. (2018). Realistic evaluation of deep semi-supervised learning algorithms. In Advances in neural information processing systems (pp. 3235-3246).
청취자 후기
통상 딥러닝 계열 모델은 학습 파라미터 수가 많아 대량의 레이블링된 데이터를 요구하나, 비용과 시간 제약으로 실제 상황에서는 이를 충족시키기 어려운 경우가 허다하다. 이에 대한 여러 돌파법이 최근 세미나에 meta-learning 및 self-supervised 등으로 발표 되었으나, 금일은 입력데이터 중 unlabaled 데이터를 분류기 학습시 labeled 데이터와 동시에 1-step manner로 사용하자는 Semi-supervised learning에 대해 알아보았다. 금일 발표에서 핵심이 되는 논문은 MixMatch 알고리즘이였으며 크게 3가지 개념으로 설명될 수 있다. 첫번째로, Consistency Regularization으로서 분류기(f)에 의한 원본 점의 mapping과 augmented된 점의 mapping 간 차이가 적어야한다는 점이며, 이는 MixMatch 학습시 Unsupervised Loss Term으로 표현된다. 두번째로는, Entropy minimization으로서 분류기는 데이터가 고밀도로 분포해있을 것으로 추정되는 지역에 decision boundary를 형성하면 안된다는 점이며, 이는 f(unlabeld)의 마지막 Softmax의 temperature hyperparameter를 조절해 sharpenening하는 부분으로 표현되는 듯하다. 마지막은 f(labeled)와 f(unlabeled) 간의 MixUp을 시행하는 Traditional Regularizaiton 파트로 구성된다. 발표 마지막 결론에서는 이러한 Semi-supervised learning 알고리즘 사용시 주의점까지 덧붙여주어 MixMatch와 SSL에 대한 전체적인 뷰를 깔끔하게 본 느낌의 발표였다. SSL 관련한 민정이의 연구가 앞으로도 쭉 잘 되었으면 소망한다.
오늘 민정이가 "MixMatch" 방법론을 소개해주었다. 좋은 성능의 모델을 구축하기 위해 다량의 데이터가 필요하다. 하지만 labeling을 수행하는 데 드는 시간과 비용이 크게 부여되기 때문에 unlabeled data 특성을 효과적으로 활용하는 건 매우 중요한 과업으로 여겨진다. 그리하여 요즘 적은 labeled data를 사용하여 충분한 성능을 이끌어내고자 하는 Self-supervised learning, Semi-supervised learining 등과 관련된 연구가 활발하다. Self-supervised learning (자기지도학습)은 unlabeled data로부터 학습한 네트워크를 본래 목적이 되는 과업의 네트워크를 구축하는 데 활용하는 방법으로 이루어지며, 이처럼 knowledge transfer 학습방법을 포함하는 두 단계로 이루어진다. Semi-supervised learining (준지도학습) 역시 unlabeled data와 labeled data는 사용하여 성능 향상을 목표하는데 동시에 적용하는 게 차이점이다. 비용함수로써 두 데이터를 활용하고 일반화 성능향상을 목표한다.
오늘 세미나에선 대표적으로 MixMatch 방법론을 소개해주었다. 일반화 성능을 높이기 위해 지향하는 바는 (1) entropy minimization, (2) consistency regularization, (3) MixUp(traditional regularization)과 같고, 각각 비용함수 내 term으로 반영한다. (1) entropy minimization: 먼저 entropy란 모델의 클래스별 예측확률 분포에 대해 불순한 정도를 의미한다. 두 개 예측모델 A, B가 있다고 했을 때, 모델A가 클래스 A일 확률을 0.9의 확률, 클래스 B를 0.1의 확률로 예측하고, 모델B가 클래스 A일 확률을 0.6의 확률, 클래스 B를 0.4의 확률로 예측한다면 모델 A는 entropy가 낮고, 모델 B는 entropy가 높다고 말한다. 좀 더 확신(confidence)을 갖는 모델을 구축하고자 entropy가 낮도록 하는 entropy minimization term을 비용함수에 추가하여 모델을 구축한다. 즉, Unlabeled data에 대한 예측값의 confidence를 높이는 목적으로 사용하며 entropy minimization term은 "sharpen(p, T)"이라는 함수로 정의되는데 예측확률을 나타낼 때 T 변수를 통해 one-hot vector (0 또는 1)로 나타내는 정도를 조절한다. (2) consistency regularization: 모델이 강건한(consistency; 일관성 있는) 성능을 도출하도록 정규화 항을 구성한다. 데이터에 약간의 변형(augmentation, perturbation)을 가하더라도 예측결과는 같도록 하는 목적으로 변형된 데이터와 Unlabeled data에 대한 거리가 가까워지도록 squared loss term (augmented data - unlabeled data) 을 적용한다. (3) MixUp: 이 또한 augmentation 기법의 일종이다. 두 데이터의 이미지와 label을 각각 weighted linear interpolation 하여 새로운 sample을 생성하는 기법으로 이 방법이 갖는 효과는 과적합을 방지할 수 있는 점이다. 이 세가지 목적을 갖는 비용함수를 구성하는 게 MixMatch 방법론이다. 이와 같은 준지도학습 기법 성능평가는 Unlabeled data 비율에 따른 error로 방법론의 성능을 비교한다.
요즘 적은 labeled data를 사용하여 충분한 성능을 이끌어내고자 하는 연구가 매우 활발한 것 같다. 오늘 세미나에서 사용한 명료하고 설명력있는 장표 구성 덕분에 전반적인 Semi-supervised learning 컨셉과 대표 방법론을 정리해 볼 수 있었다.
오늘은 "Semi-supervised learning in deep neural networks (MixMatch)"라는 주제로 민정누나가 세미나를 준비해주었다. 현재 Data Augmentation 기법 중 Mix-up과 관련된 개인 연구를 진행하고 있었기 때문에 오늘 세미나 내용이 개인적으로 많은 도움이 될 수도 있을 거라고 생각이 들었다. 세미나는 Semi-supervised learning 정의와 Self-supervised learning과의 차이점에 대해서 내용이 시작되었다. Semi-supervised learning은 Unlabeld data를 사용하여 일반화 성능을 높이는 모델을 만들고자 하는 것으로 Self-supervised learning과 목적은 같으나 학습 단계가 하나의 스텝으로 가능하다는 것이 Self-supervised와 큰 차이점이였다. 또한 Self-supervised는 Unlabeled data를 이용해 pretext task를 해결하고 난 후 knowledge transfer를 시행하여 Unsupervised loss와 Supervised loss가 각 스텝마다 계산되는 반면에 Semi-supervised는 Supervised loss와 Unsupervised loss가 하나의 term으로 표현된다는 차이점도 있었다. 이번 기회에 민정 누나의 설명을 통해 Self-supervised와 Semi-supervised을 확실하게 구분지을 수 있을 것 같다. 이번 세미나의 핵심은 Semi-supervised learning 중 Mix-match 알고리즘으로 일반화 성능 향상에 많은 도움이 된다고 알려져 여러 자료에서 자주 접했던 알고리즘이였는데 이번 세미나를 통해 구체적으로 알 수 있게 되었다. Mix-match 알고리즘은 크게 3가지로 구성되며 Consistency Regularization, Entropy Minimization, Mix-up 각각에 대해 정의와 역할에 대해 확실하게 이해하도록 장표를 준비해주었다. 나는 현재 Supervised learning관점에서 Mix-up을 통해 소수 클래스의 데이터가 잘 학습되도록 설계했던 반면에 Mix-Match에서는 Labeld 데이터와 Unlabeld 데이터 간에도 Mix-up이 적용되어 일반화 성능을 향상 시킨다는 점이 인상 깊었다. 또한 Mix-match의 좋은 점 뿐만 아니라 해당 알고리즘이 갖는 한계점과 이를 보완한 ReMixMatch, FixMatch와 같은 알고리즘 명칭까지 언급해주어서 앞으로 연구에 참고할 수 있을 것 같았다. 오늘도 재밌는 주제를 이해하기 쉽도록 설명해준 민정 누나에게 감사하다고 전하고 싶다.
이번 세미나는 Semi-Supervised learning에 해당하는 MixMatch를 중심으로 민정언니가 진행하셨다. Semi-Supervised learning는 Self-Supervised learning과 마찬가지로 많은 양의 labeled 데이터를 확보하기 어려운 문제를 극복하기 위해 연구되는 방법이다. Semi-Supervised learning은 unlabeled 데이터와 labeled 데이터를 동시에 활용하고 각각에 해당하는 loss를 함께 고려하여 일반화 성능 향상을 목표로 학습된다. MixMatch 논문에서는 크게 3가지 개념이 활용되었다.
A. Consistency regularization: unlabeled 데이터에 데이터 증강 기법을 활용하여 기존 unlabeled 데이터와 증강된 데이터를 각각 입력값으로 받는 두 모델의 결과값이 최대한 같아지도록 하여 결과값의 일관성을 유지하고자 하는 기법
B. Entropy minimization: ‘분류 결정면이 고밀도 지역을 지나서는 안된다.’ 라는 가정을 기반으로 고밀도 지역과 경계면이 최대한 떨어지게 형성하는 것을 목표로 하는 기법
C. Mixup: 서로 다른 클래스의 데이터를 혼합하여 새로운 데이터 생성하는 기법
[학습과정]
1. Labeled 데이터는 한번의 데이터 증강, unlabeled 데이터는 각 데이터마다 k번의 데이터 증강
2. k개의 데이터를 모델에 입력하여 k개의 결과값을 평균하여 활용
-> Sharpen함수를 통해 개념 B 도달 -> unlabeled 데이터에 임시의 label 부여
3. Labeled 데이터의 출력값과 unlabeled 데이터의 출력값을 연결하여 무작위로 섞음
-> 개념 C를 활용하여 증강 데이터 업데이트
Loss function은 supervised loss에 해당하는 cross entropy부분과 개념 A에 도달할 수 있도록 unsupervised loss 부분을 합한 식이 사용된다.
해당 논문 및 Semi-Supervised learning의 장점 뿐 아니라 취약점도 알 수 있어 더욱 유익한 세미나를 발표해주신 민정언니께 감사하다.
이번 세미나는 “Semi-supervised Learning in Deep Neural Networks (MixMatch)”의 주제로 진행되었다. 많은 양의 레이블링 된 데이터를 구하기 어려운 현실의 문제에 맞추어 Unlabeled 데이터를 활용하여 일반화 성능을 높이고자하는 것이 semi-supervised learning의 목적이다. 즉, labeled data의 부족으로 발생하는 한계를 unlabeled data로 극복하고자 하는 것이다. 이러한 semi-supervised learning은 self-supervised learning과 다르게 supervised loss와 unsupervised loss를 함께 결합한 loss의 형태로 구성된다는 점도 알 수 있었다.
오늘은 그 중에서도 MixMatch 알고리즘에 대한 설명을 듣게 되었다. Mixmatch 알고리즘은 다음과 같은 총 세 가지 방법을 함께 활용함으로써 일반화 성능을 높이고자 노력하였다.
1) augmented data에 대해서도 기존의 데이터와의 결과 일관성을 유지하도록 하는 Consistency Regularization
2) 고밀도 지역 사이에 결정 경계면을 잘 설정하도록 하는 Entropy Minimization
3) 서로 다른 레이블을 가진 데이터를 일정 비율로 혼합한 후, 이를 학습에 활용하는 Mixup
이 외에도 labeled data, unlabeled data에서 각각 데이터를 뽑아서 전체적인 MixMatch 알고리즘의 학습을 진행하는 방법, 그리고 다양한 실험 결과들까지 명확한 장표를 통하여 알아볼 수 있었다. Semi-supervised learning의 개념부터 self-supervised learning과의 차이점, 그리고 MixMatch라는 알고리즘의 방법론까지 한 눈에 파악할 수 있는 의미있는 세미나였다.
이번 세미나는 "Semi-supervised learning in deep neural networks"라는 주제로 진행되었습니다. 딥러닝은 다양한 분야에서 좋은 성능을 내고 있지만, 데이터가 불완전한 경우에서는 좋은 성능을 기대하기 어렵습니다. 이러한 한계를 극복하고자 하는 연구 중 하나인 semi-supervised learning에 관련하여 세미나가 진행되었습니다. Semi-supervised learning은 데이터의 레이블이 존재하는 데이터와 존재하지 않는 데이터를 함께 활용하여 좋은 성능을 내는 모델을 학습하는 것이 목적입니다. 저번 세미나에서 설명된 self-supervised learning 방법론도 레이블이 없는 데이터에 활용되는 방법론이지만 self-supervised learning은 두 단계로 모델이 학습되는 반면 semi-supervised learning은 한 단계로 모델이 학습된다는 차이점이 있습니다. 이번 세미나에서는 semi-supervised learning 방법론 중 "MixMatch"에 대해서 설명되었습니다. MixMatch는 지금까지 연구되었던 semi-supervised learning 방법론 세 가지를 모두 활용하여 만들어진 방법론입니다. 첫 번째는 consistency regularization입니다. Consistency regularization은 데이터에 augmentation을 적용하더라도 모델이 동일한 클래스로 예측해야 한다는 가정에서 출발합니다. 따라서 augmentation 된 데이터와 기존 데이터가 모델을 통과했을 때 출력값의 차이를 최소화하도록 학습이 진행됩니다. 두 번째는 entropy minimization입니다. Entropy minimization은 데이터의 거리가 가까우면 동일한 클래스일 것이라는 가정에서 출발합니다. 따라서 모델이 생성한 결정 경계면은 데이터의 밀도가 낮은 곳에서 만들어지게 됩니다. 이러한 가정은 레이블이 없는 데이터의 엔트로피를 최소화함으로써 만족시킬 수 있습니다. 따라서 모델은 레이블이 없는 데이터에 대해 하나의 클래스에 대해 높은 확률값을 출력하는 방향으로 학습이 진행됩니다. 마지막은 전통적인 regularization 기법을 활용하는 것입니다. Regularization은 모델이 모든 학습 데이터를 외우기 어렵도록 제약을 걸어주는 방법을 통해 모델의 일반화 성능을 올려주는 방법입니다. 이를 통해 MixMatch에서는 L2 regularization과 MixUp을 활용했습니다. MixUp은 augmentation 기법의 하나로 두 개의 데이터를 랜덤한 비율로 섞어서 augmentation을 진행하는 기법입니다. 위의 세 가지 기법을 활용해 Mixmatch는 semi-supervised learning을 진행합니다. 먼저 레이블이 있는 데이터와 레이블이 없는 데이터를 동일하게 B개 선택한 후 augmentation을 진행합니다. 이때 레이블이 없는 데이터는 K개의 augmentation을 진행하고 모델을 통과한 후 출력값에 평균을 취합니다. 평균을 취한 값에 sharpening을 적용하여 하나의 클래스에 대한 값을 크게 만들어줍니다. 이를 통해 앞에서 살펴본 entropy minimization을 활용합니다. Sharpening을 적용하여 예측된 클래스를 레이블이 없는 데이터의 클래스로 활용합니다. Augmentation을 취한 레이블이 있는 데이터와 없는 데이터를 섞어서 W라는 데이터 셋을 만들고 W를 레이블이 있는 데이터셋과 없는 데이터셋 각각에 MixUp시켜 최종적인 데이터 세트를 만들어 학습에 활용합니다. 이번 세미나를 통해서 평소 관심 있었던 MixMatch 논문에 대해서 자세하게 알 수 있어서 좋았습니다. 세미나를 위해 고생해준 민정 누나에게 감사의 뜻을 전하며 후기 마무리하겠습니다.
현실 문제에서 양질의 레이블된 데이터를 얻기란 언제나 어려운 일이다. 따라서 레이블되지 않은 대량의 데이터를 사용하는 준지도학습 (Semi-Supervised Learning) 연구는 데이터과학의 발전과 그 역사를 꾸준히 함께 하고 있다. 본 세미나에서는 레이블되지 않은 대량의 이미지 데이터를 활용하는 최신 SSL 연구 중 MixMatch 방법론을 다루고 있다.
MixMatch의 핵심은 크게 세 가지로 정리해볼 수 있다. 첫 째, 유사한 외관을 보이는 2개 이상의 이미지에 대한 어떤 모델의 예측값은 마찬가지로 유사해야 한다. SSL에선 이를 consistency regularization이라고 칭하는데, 데이터에 대한 레이블이 없는 상태에서 '유사하다'는 것을 정의하는 것은 쉬운 일이 아니다. 이 어려움을 타개하기 위해 MixMatch에서는 한 개의 이미지에 여러 번의 랜덤한 data augmentation 기법을 적용해 유사한 이미지들을 얻는다. 둘 째, 모델의 예측값의 불확실성을 낮추는 entropy minimization이 필요하다. 분류 문제에서 예측 불확실성을 낮춘다는 것은 곧 모델의 예측 확률이 한 범주에 큰 값을 올인(?)하도록 것과 같으며, 거꾸로 결정경계면에 위치하는 데이터에 대해선 불확실성이 높은 예측을 하는 효과를 보인다. 이 역시 과거 SSL 연구에서 차용해 온 개념으로 보인다. 셋 째, 입력 공간에서 두 개 이미지 간 convex combination으로 섞은 이미지에 대한 모델의 예측값도 마찬가지로 입력 공간과 동일한 비율의 convex combination 값을 보여한다. 이 개념은 MixUp이라는 이름으로 최근 딥러닝 연구에서 아주 많이 쓰이고 있으며, one-hot target으로 학습하는 딥러닝 모델의 치명적 단점을 극복할 수 있는 하나의 돌파구이다.
끝으로 본 세미나에서 소개된 MixMatch와 함께 FixMatch, ReMixMatch도 좋은 아이디어를 많이 담고 있으니 기회가 된다면 모두들 읽어보면 좋을 것 같다. 비단 뛰어난 수치적 결과 뿐 아니라 기존의 아이디어를 적절히 차용하고 제안 방법론의 우수성을 보이는 논리적 흐름 및 논문의 구성이 매우 좋다고 생각한다. 특히 제안 방법론을 구성하는 개별요소의 중요도를 ablation study를 통해 보여주는 것도 매우 인상깊다.
이번주 세미나는 'Semi-supervised learning in deep neural networks (MixMatch)'으로 세미나가 진행되었다. semi-supervised learning 이란 Unlabeled 데이터를 사용하여 일반화 성능을 높이는 모델을 만드는것이다. self-supervised 와의 차이점이란 unlabeled data를 사용하는것은 같지만 self-supervised는 two-stage를 진행하고 semi-supervised는 One-stage를 하는것이다. 즉 self-supervised는 먼저 unlabeled data로 학습하여 loss를 구하고 이를 전이하여 supervised loss 를 구하는데 반해 semi-supervised는 한번에 진행한다. 이번에 설명한 논문은 "MixMatch"인데 supervised loss + unsupervised loss를 활용하여 semi-supervised loss로 사용하여 일반화 성능을 향상시키는 것이다. 이를 위해 3가지 알고리즘을 사용하는데 1)Consistency Regularization (Unlabeled data에 대한 예측값의 confidence를 높이는 목적으로 사용), 2)Entropy Minimization(모델이 일관성 있는 성능을 도출하도록 정규화 구성), 3)Traditional Regularization(MixUp)(augmentation기법의 일종으로 두 데이터의 이미지를 잘 조합하여 새로운 sample을 생성하여 과적합을 방지)이다. 해당 알고리즘 각각에 대해 좀더 자세한 정의와 역활을 잘 이해 할 수 있었다. 매우 이해하기 쉽게 설명을 잘 해주어서 self-supervisedd와 semi-supervised의 차이점도 명확히 알게 되었고 앞으로 semi-supervised를 활용함에 있어 큰 도움이 될거 같다. 좋은 세미나를 진행해준 민정이에게 감사의 말 전한다.
이번 세미나는 Semi-Supervised Learning in Deep Neural Networks에 대해 이민정 연구원이 발표해주었다. 현실적으로 Labeled 데이터를 확보하기 어려운 상황을 극복하기 위해서 Transfer Learning, Meta Learning, Self-supervised Learning 등 많은 연구들이 시도되고 있는데, 그 중에서 Semi-supervised Learning에 대한 내용이다. Semi-supervised Learning은 적은 수의 Labeled 데이터를 가지고 있는 상황에서 Unlabeled 데이터를 활용하여 일반화 성능을 높이는 방법이다. Unlabeled 데이터를 사용한다는 점에서 Self-supervised Learning과 유사하다고 할 수 있는데, 이에 대한 차이점을 설명해주었다. Self-supervised는 먼저 Unlabeled 데이터만을 사용하여 Pretext Task를 학습하고, 이 학습된 모델의 parameter를 transfer 하여 적은 수의 Labeled 데이터로 원래 풀고자 했던 Task를 학습하는 2단계를 거치는 방법이다. 반면, Semi-supervised는 Unlabeled, Labeled 데이터를 동시에 사용하여 1단계로 학습하는 모델을 만드는 방법이라고 할 수 있다. 이번 세미나에서 Semi-supervised Learning 방법으로 중점적으로 설명된 것은 MixMatch 알고리즘이다. MixMatch에서는 Consistency Regularization, Entropy Minimization, Traditional Regularization을 적용하여 Supervised Loss와 Unsupervised Loss를 결합한 Semi-supervised Loss를 사용함으로써 일반화 성능을 향상시킨다. Consistency Regularization은 데이터 Augmentation을 통해 augmented 데이터를 만들고, labeled 데이터와의 출력값이 차이가 없도록 일관성을 유지할 수 있게 해준다. 두번째 Entropy Minimization은 labeled 데이터와 unlabeled 데이터가 연속성을 가진다는 가정하에, 데이터 밀도가 낮은 곳에서 decision boundary를 형성하게 해주는데, 이는 출력값의 entropy를 낮게 해줌으로써 가능해진다. 세번째는 Traditional Regularization으로, MixUp을 Semi-supervised에 적용하는 방법을 설명해주었다. Unlabeled 데이터의 출력값과 labeled 데이터를 MixUp하는 방법이다. 이 세가지 방법을 모두 적용한 MixMatch 알고리즘은 기존 Semi-supervised 모델에 비해 labeled 데이터가 적어지더라도 Test Error가 크게 증가하지 않는 모습을 보여준다. 마지막 결론에서 이러한 Semi-supervised learning이 분류 문제에서만 주로 연구되고 있는데 Regression Task에서도 연구가 필요하겠다는 의견이 인상적이었다. 정말 기초 개념부터 어려운 내용까지 자세하고 쉽게 설명해주어서 MixMatch 알고리즘에 대해 배울 수 있었다. 좋은 내용으로 발표해준 이민정 연구원에게 감사하다는 말을 전한다.
딥러닝은 데이터 개수와 품질에 많은 영향을 받기 때문에, 레이블이 일부 없거나 데이터가 부족한 상황을 극복하는 연구가 많이 진행되었다. 이 중 하나로 준지도 학습 분야가 있는데, 금일 세미나는 준지도 학습 알고리즘 계열인 Mix-Match를 설명해주었다. 세미나 introduction을 통해 준지도 학습의 목적(일반화 성능 향상)과 자가지도 학습과의 차이점(One stage or two stage, Loss function)을 이해할 수 있었고, 이는 Mix-Match 알고리즘을 이해하는데 많은 도움이 되었다. 3가지 핵심 포인트를 두어 Mix-match 알고리즘을 설명해주었는데 (1)Consistency regularization, (2)Entropy minimization, (3)Mix-up였다. (1)Consistency regularization은 동일 이미지에 다른 augmentation을 적용하여도 본질적인 데이터 특성은 변하지 않아야 한다는 것이다. 이러한 특성을 Mix-match는 Unlabel 데이터에 여러 가지 augmentation을 적용하고 학습 과정에 반영하였다. (2) Entropy minimization은 모델 분류기가 예측에 대한 불확실성을 감소시키는 것을 의미한다. 이는 결정경계면이 데이터의 고밀도 영역을 지나지 않도록 하는 것을 의미하는데, 이러한 의미를 Mix-match는 Sharpen 개념으로 반영하였다. (3)Mix-up은 입력 데이터들 간의 선형 결합이 데이터 레이블간 선형 결합을 반영할 수 있도록 모델이 학습하는 것을 의미하며, 모델 일반화 성능을 높일 수 있다. 이 것을 Mix-match는 Unlabel 데이터와 label 데이터간 Mix-up을 통해 알고리즘에 반영하였다.
세미나를 통해 준지도 학습의 목적과 자기지도학습과의 명확한 차이, 그리고 Mix-match의 핵심 키포인트 3가지를 확실하게 알 수 있었고, 실험 결과 해석까지 상세하게 청취할 수 있었다. 감사합니다!
오늘은 민정이가 Semi Supervised Learning의 MixMatch라는 논문을 주제로 발표하였다. 이전의 석호가 발표한 Self supervised learning과 유사할거라고 생각했지만 하나의 스테이지로 학습하는게 큰 차이이고 손실값에 별도의 손실 값을 추가하여 학습하는 것이다. 이 MixMatch를 위해서 3가지의 주요 기법이 나왔다. 첫번째는 Consistency Regularization이며, 지도학습에서도 자주 활용된 일관성향상 기법이라고 하며 augmented data와 real data간에서도 일관성(유클리디안 디스턴스 가까워야 한다)이 있어야 한다라는 것이며, 두번째는 Entropy Minimization로써 인접한 것들은 서로 같은 레이블을 가져야 한다라는 가정이 필요하며, 가까운 것들을 unlabeled data를 가까운 것의 labeld을 활용한다. 이렇게 할 경우 저밀도의 지역에서 경게면이 만들어지며, unlabeled data는 엔트로피를 구할 경우 더 낮게 나오게 된다라고 한다. 마지막으로 Traditional Regularization(Mixup)라는 건데 서로 다른 레이블의 데이터를 하나로 합쳐서 soft max의 값을 1, 0의 onehot이 아닌 augmentation에 따러서 값을 주어서 학습하는 것이라고 한다. 이 3가지를 이용하여 Mix Match에 대해서 설명을 해주는 부분을 아주 간결해서 설명해줘서 딱딱한 수도코드를 바로 이해할 수 있었다. 각 인스턴스별로 K개의 augmentation한다음 Sharpen이라는 함수를 써서 T가 0일 수록 one hot을 만들어서 더 큰값을 더 sharp하게 만들어준다. 이를 concat하고 unsupervised loss에는 첫번째의 Consistency Regularization에서 사용한 Euclidean distance를 활용한다라는 것인데 많은 variants들이 있을 수 있을거라 생각하던 찰나에 여러가지 ReMixMatch, FixMatch등이 나오고 각 2019년, 2020년도 유명 학회에서 여전히 뜨거운 주제라는 것을 알 수 있었고 unlabeled data가 다른 분포를 가진다라는 것은 Meta Learning과도 접점이 되는 부분이라는 생각이 들어서 같이 생각해보면 또 새로운 주제가 열리겠구나라는 생각이 들었고 마지막으로 Regression에 관심이 있는 나로써는 민정이가 좋은 연구 방향을 많이 제시해줬으면 하는 바램과 함께 연구 힘내라고 응원하겠습니다. 감사합니다.
이번 세미나에선 이민정 연구원이 Semi-supervised learning 계열 모델인 MixMatch를 소개해줬다. 지난번 석호 세미나에 이어, Unlabeled 데이터를 활용해 Supervised learning의 한계를 극복하려는 시도들이 연달아 소개돼서 더욱 관심을 갖고 보게 됐다. 실제 발표 서두에 Self-supervised/Semi-supervised learning의 차이를 설명해 준 덕분에 큰 틀을 잡고 들을 수 있었다.
MixMatch 모델은 3가지 핵심 알고리즘으로 활용하고 있다. 첫번째 Consistency regularization은 원 데이터와 augmentation 한 데이터를 각각 모델에 넣어 나온 결과값이 유사하도록 하는 모델 파라미터를 찾는 알고리즘이다. 두번째는 Entropy minimization은 unlabeled 데이터에 클래스를 부여할 때 애매한 확률 대신 어느 한쪽 클래스에 confident한 확률을 부여함으로써 엔트로피를 낮추는 알고리즘이다. 이를 위해선 결정경계면이 저밀도 구역에 형성돼야 한다. 마지막은 MixUp으로, 두개의 데이터를 일정 비율로 섞어 새로운 데이터(augmented)를 생성하는 방법론이다.
위 3가지 알고리즘을 적용한 MixMatch는 우선 Labeled/Unlabeled 데이터를 각각 augmentation 한 다음 모델에 입력하는 것으로 시작된다. 이때 Unlabeled 데이터는 하나 당 augmented 데이터를 몇개 생성할 것인지를 하이퍼파라미터 k로 설정한다. 이렇게 생성된 데이터가 모델을 거치면 데이터마다 조금씩 다른 확률값이 나올텐데 평균을 취한 뒤, 가장 높은 확률값이 1에 가까워지도록 sharpen하여 레이블을 부여한다(Entropy min. 적용). 이어 augment 된 Labeled/Unlabeled 데이터를 합쳐 새로운 데이터셋을 만든 후 다시 MixUp을 거쳐 최종 데이터셋을 만든다.
MixMatch를 제안한 논문에서는 이 모델이 Supervised learning에 가까운 에러율을 기록했다고 돼 있지만, 세미나 말미에서는 Semi-supervised learning의 한계도 언급해줬다. 쉽고 중립적으로(?) 설명해준 덕에 semi-supervised learning을 앞으로 더 유심히 공부해보고 싶다는 생각이 들었다. 많은 준비를 해 준 민정이에게 감사 인사를 전한다.
금일은 Semi-supervised learning in deep neural networks (MixMatch)를 주제로 세미나가 진행되었다. 딥러닝을 활용해 컴퓨터 비전 문제를 해결하기 위해서는 정확하고 많은 양의 레이블링 된 데이터가 필요하다. 하지만 현실 세계에서는 정확하고 많은 양의 레이블링 된 데이터를 구하기는 쉽지 않다. 비용이 많이 들고 시간이 많이 소모되기 때문이다. 이런 문제를 해결하기 위해 다양한 방법론 (Transfer learning, Meta learning, Self-supervised learning, Semi-supervised learning 등)들이 연구되고 있다. 세미나에서는 이러한 방법론 중 유사해 보이는 Self-supervised learning과 Semi-supervised learning에 대한 비교 설명을 해주었는데 이 부분이 개인적으로는 잘 이해가 되었다. Self-supervised Learning은 2-stage로 학습이 진행되는데 Unlabeled data로 먼저 모델 parameter를 학습한 뒤, 그 parameter를 초기값으로 해 풀고자 하는 task를 풀게 된다. 반면 Semi-supervised learning은 Supervised loss와 Unsupervised loss를 한 번에 고려해서 모델이 학습된다. 이후 본 세미나의 핵심인 MixMatch에 대한 설명이 이어졌다. MixMatch에서 일반화 성능을 향상시킬 수 있는 방법으로 Consistency Regularization, Entropy Minimization, Mixup 3가지가 소개되었다. Unlabeled 데이터로 학습한 결과와 Labeled 데이터로 학습한 결과 간의 일관성을 갖게 학습하는 것은 Consistency Regularization이다. Entropy Minimization은 Unlabeled 데이터에 대한 학습 결과가 1개 class에 명확하게 확률값이 부여되어 헷갈리지 않게 학습하는 방법이다. 마지막으로 Unlabeled 데이터와 labeled 데이터를 섞어서 학습하는 방법인 Mixup 방식도 설명이 되었다. 개인적으로 이번 세미나에서는 위에 언급한 3가지 개념에 대한 핵심 내용을 쉽고 정확하게 배울 수 있어서 좋았다. 나 또한 현실에서 발생하는 양질의 데이터가 부족한 문제를 해결할 수 있는 Self-supervised learning, Semi-supervised learning 등에 대한 핵심 개념에 대해 공부를 진행하고 있다. 해당 개념에 대한 기본부터 공부를 시작하는 나에게는 핵심 개념을 쉽게 정리할 수 있게 해주어 도움이 된 세미나였다. 좋은 세미나를 준비해준 민정이에게 고맙다고 말해주고 싶다.
Semi-supervised learning (SSL)에 대한 세미나를 청취했다. 기본적인 개념과 더불어 최근 많은 관심을 받고 있는 MixMatch에 대한 내용을 메인으로 진행되었다. SSL을 해결하기 위한 알고리즘은 여러 방법으로 연구가 되고 있는데 그 중 대표적으로 consistency regularization 또는 entropy minimzation 계열의 방법론들이 있다. 전자는 unlabeled 데이터에 데이터 증강(augmentation) 방법을 사용하더라도 모델은 같은 예측확률분포를 생성해야 한다는 접근방법이다. 후자는 근처 데이터는 같은 클래스 정보를 갖는다는 가정을 바탕으로, decision boundary가 두 클래스 집합의 '가운데' 혹은 'low density' 부분을 지나도록 만드는 접근 방법이다. 이러한 방법들은 예전부터 많이 연구가 되어왔지만 제각각 다른 실험 셋팅으로 인해서 어느 방법론이 좋은가에 대한 논란 또한 많이 있었다. 실제로 SSL 알고리즘을 적용해보면 성능이 파라미터에 민감한 것 뿐만 아니라, labeled data에 어떤 샘플이 들어가는가에 따라서도 성능차이가 난다. 구글에서 'realistic evaluation of deep semi-supervised learning algorithms'이라는 논문에서 매우 다양한 종류의 실험을 진행했다. Pseudo labeling, virtual adversarial training, mean teacher 등등 다양한 알고리즘에 대한 실험을 거침으로써 어느정도 동등한 성능비교를 공식적으로 한 논문인 셈이다.
MixMatch는 이 논문이 나온 이후에 발표된 논문으로 MixUp이라는 간단하지만 강력한 개념을 SSL에 적용하면서 엄청난 성능향상을 일으켰다. MixUp은 간단하게 두 개의 다른 샘플의 linear interpolation 데이터를 갖고 학습을 하는 방법을 의미한다. 여기에 데이터 증강, sharpening 등의 테크닉을 이용해서 성능을 더욱 끌어올렸다. 이 이후에 ReMixMatch, FixMatch와 같은 알고리즘이 발표되었는데 기본적인 컨셉은 매우 유사하다. VAT 이후에 SSL 관련된 연구가 답보상태였다고 느꼈는데 최근 흥미로운 연구가 많이 나오고 있다. FixMatch는 이번 NeurIPS에서도 발표를 하는데 청취할 예정이다. 개인적으로는 MixMatch 계열의 알고리즘들에 대한 실험적 연구도 이루어져서 성능비교가 되었으면 좋겠다는 생각이 있다.
이번 세미나는 민정이가 Semi-Supervised Learning in Deep Neural Networks라는 주제로 MixMatch 알고리즘을 소개해주었다. 딥러닝 모델의 성능을 끌어올리기 위해서는 상당 수의 레이블링된 데이터를 필요로 한다. 하지만 현실적으로 수행하고자 하는 업무에 적합한 레이블링된 데이터를 많이 확보하는 것에는 한계가 있기 때문에 이를 극복하기 위해서 다양한 방법론들이 나오고 있다. Semi-Supervised Learning은 그 중 하나로서 레이블 되지 않은 데이터를 레이블 된 데이터와 함께 사용하여 성능을 끌어올리는 방법이다. Self-Supervised Learning 방법론이 Unsupervised Learning을 통해서 모델을 학습한 뒤 전이학습 과정을 통해서 Supervised Learning 방식으로 학습을 두 단계를 거쳐서 하는 반면, Semi-Supervised Learning은 Supervised Learning과 Unsupervised Learning을 동시에 진행한다.
MixMatch는 Semi-Supervised Learning에서 쓰이던 방법론들을 하나의 모델로 합친 알고리즘이다. MixMatch를 구성하는 방법론을 간단하게 소개하자면 먼저 Consistency Regularization은 [객체A]와 해당 객체에 Augmentation 기법을 적용하여 생성된 [객체A’]가 있다고 할 때 모델이 두 객체를 동일 클래스로 구분하도록 학습하는 방법이다. Entropy Minimization는 객체 간의 인접성을 기준으로 서로 가까운 객체들은 같은 클래스로 가정해주는 방법론이다. 해당 방법론을 통해서 밀도가 높은 부분을 피해서 결정 경계를 만들어 분류기를 학습하게 된다. Traditional Regularization 방법으로는 Mix up이 사용되었다. Mix up은 서로 다른 두 이미지를 일정 비율로 겹친 이미지를 생성하는 방법이다. Mix up 된 이미지를 학습에 사용할 경우 일반화 성능이 높아진다고 한다.
이번 의료영상분석을 하면서 Semi-Supervised Learning을 적용해볼 기회가 있었는데 정말 실용적인 알고리즘이라고 느껴졌었다. 최근에는 Self-Supervised 방법론에 Semi-Supervised 방법론을 응용하는 연구가 많이 진행되고 있다. 세미나 마지막에 소개해준 Fixmatch와 ReMixMatch에 대해서도 더 알아보고 연구에 활용해보고 싶다는 생각을 하였다. 쉽게 이해할 수 있도록 세미나를 준비해준 민정이에게 감사의 말을 전한다.
이민정 연구원이 Semi-Supervised Learning in Deep Neural Network 라는 주제로 발표한 대한 세미나를 들었다. 마치 한 과목의 수업을 듣듯이 Semi-Supervised Learning 에 대한 자세한 설명을 차근차근 해주어서 이해하기에 훨씬 수월하였다.
현실 상황에서 잘 labeling 된 데이터를 얻는 것은 굉장히 어렵고, 그 양 또한 굉장히 적다. 이러한 이유로 Semi-Supervised Learning 은 unlabeled 된 데이터를 활용하여 일반화 성능을 높이는 모델을 만드는 것을 목적으로 한다.
Self-Supervised Learning 과 Semi-Supervised Learning의 차이는 둘다 Unlabeled Data를 사용한다. 하지만Self-Supervised Learning 은 1 Stage(Unsupervised Learing) + 1 Stage(Supervised Learning) 의 과정을 거친다면, Semi-Supervices Learning 은 1 Stage(Unsuperviesed Learning + Supervised Learning) 을 통해 학습된다는 차이가 있다.
Semi-Supervised Learning 에 대한 설명 이후 MixMatch 모델에 대한 설명을 들을 수 있다.. MixMatch의 대표적인 3가지 방법론을 설명해 주었는데 그 내용은 Consistency Regularization, Entropy Minimization, Traditional Regularization 이다. 데이터가 적을 때 데이터를 증가시켜 분석을 하게 되는데, 이를 Argument Data 라고 한다. Consistency Regularization 은 Raw Data 와 Argumented Data의 일관성을 유지하도록 하는 방법이다. Entropy Minimization은 밀도가 낮은 곳 보다 밀도가 높은 곳에서 경계구분선을 잘 그을 수 있다는 방법이다. Traditional Regularization은 서로 다른 레이블의 이미지를 섞어서 이를 학습에 활용하는 방법이다.
최근 수업에서 배웠던 Semi-Supervised Learning 에 대해 다시 한 번 상기시킬 수 있는 기회가 되어서 좋았다. 이민정 연구원의 친절한 설명으로 오히려 더 확실히 배운 기분이다.
이번 세미나는 민정이가 ‘Semi-supervised learning in deep neural networks (MixMatch)’라는 주제를 가지고 진행하였다. Semi-supervised learning이란 unlabeled 데이터를 사용해서 일반화 성능을 높이는 딥러닝 모델을 만드는 것을 목표로 한다. Self-supervised learning과 Semi-supervised learning은 각각 unlabeled data를 사용하면서 two-stage인 경우 self, one-stage인 경우 semi에 해당한다. MixMatch는 크게 Consistency Regularization, Entropy Minimization, Traditional Regularization에 해당하는 방법론이 존재한다. Consistency Regularization에서는 unlabeled data의 augmentation을 수행해도 기존의 class와 동일한 class로 예측하도록 학습하는 방식이다. Entropy Minimization은 예측값의 신뢰도를 높이는 목적으로 entropy를 최소화 한다. 마지막은 feature와 label distribution의 convex combination을 통해 과적합을 방지하는 mix-up방식이다. MixMatch에 대해 자세하게 설명해준 민정이에게 감사하다는 말을 전하고 싶다.
최근 증가하고 있는 데이터와 이를 저장할 수 있는 하드웨어의 뒷받침을 기반으로 많은 데이터를 저장하고 사용할 수 있는 빅데이터의 시대인 4차 산업 혁명 시대에 우리는 살고 있다. 이러한 많은 데이터를 사용하기 위해 우리는 기계 학습을 공부하고 있지만 이는 데이터와 데이터에 대한 정답이 있는 지도학습에 대해 많은 연구가 이루어져 왔다. 하지만 소수의 정답이 있는 데이터 쌍과 정답이 없는 데이터를 이용하는 기계 학습 방법론들이 최근 대두되고 있는데 크게 두 가지 축이 있다고 생각한다. 하나는 자기지도학습(Self-Supevised Learning)과 준지도학습(Semi-Supervised Learning)으로 나눌 수 있는데 그 중 준지도 학습에 대한 세미나가 진행되었다. 준지도학습 관련 연구에서 기저에 깔고 있는 가정과 발표자가 소개하는 방법론이 어떻게 가정을 사용하고 있는지를 알기 쉽게 설명해주었다. 발표자가 MixMatch를 읽은 이유를 설명해주었지만 이를 적용한 결과까지 보여주었다면 훨씬 좋은 세미나가 되었을 것이라고 생각한다. 가정과 가정을 충족하기 위한 방법론을 알기 쉽게 설명해준 민정이에게 감사를 표하고, 앞으로 MixMatch를 기반으로 하는 개인 연구에서도 성과가 있길 응원한다.
금일 세미나는 “Semi-Supervised Learning in Deep Neural Networks (MixMatch)” 주제로 민정이가 발표했다. 데이터 학습에는 레이블 존재 여부에 따라 다양한 학습 방식이 존재하지만 현실 문제에서는 레이블이 존재하는 데이터를 얻는데 매우 어렵다. 이러한 문제를 해결하기 위해 최근 많은 관심을 받고 있는 Self-Supervised Learning (SSL) 연구가 발전되고 있다. 이번 세미나는 SSL 연구 중 MixMatch 방법론을 다루었다. MixMatch는 SSL의 세가지 방법을 활용하였다. (1) 데이터에 augmentation을 적용해도 모델이 동일한 클래스를 예측하도록 하는 학습 방식 (consistency regularization), (2) 레이블이 존재하지 않는 데이터의 엔트로피를 최소화함으로써 모델이 생성한 decision boundary가 데이터 밀도가 낮은 부분에서 만들어지게 되는 방식 (entropy minimization), (3) augmentation 방법 중 하나인 transitional regularization (MixUp)을 활용하였다. 특히 MixMatch는 두개의 데이터를 linear interpolation을 한 데이터를 갖고 학습하는 MixUp을 적용하여 엄청난 성능을 거두었다. MixMatch 방법론은 SSL을 공부하게 되면서 듣게 되었는데 매우 흥미로운 방법론이었다. 이후에 FixMatch, ReMixMatch 등의 방법론도 발표했으며 현재 SSL과 Reinforcement Learning을 접목하는 연구를 하는 입장에서도 충분히 고민해볼 수 있는 방법이었다.
이번 세미나는 MixMatch라는 알고리즘에 대해 세미나가 진행되었다. 이는 Unlabeled 데이터를 사용하여 일반화 성능을 높이고자 하는 semi-supervised learning의 일종이다. semi-supervised learning은 self-supervised learning처럼 unlabeled data를 사용한다는 공통점이 있지만 2-step이 아닌 1-step으로 수행되게 한다는 차이점이 존재한다. 발표는 MixMatch의 3가지 포인트에 집중하여 이루어졌다. 첫 번째는 Conistency regularization에 대한 것으로, 이는 동일한 이미지에 다른 변화를 주어도 데이터의 본질적인 특성은 변하지 않아야 한다는 가정이다. 이를 가정함으로써 MixMatch는 Unlabel 데이터에 다양한 augmentation을 적용하여 학습과정에 반영하였다. 두 번째는 Entropy Minimization에 대한 것으로, 이는 모델의 decision boundary가 데이터의 고밀도 지역에 생성되는것을 피해야 한다는 가정이다. 이를 예측에 대한 불확실성을 감소시키기 위한 것으로 Softmax에 Sharpening을 함으로써 반영되도록 하였다. 세 번째는 Mix-up에 대한 것으로, 이는 데이터간의 convex combination과 예측값 간의 convex combination이 비슷해져야한다는 가정이다. 이를 반영함으로써 학습데이터를 증강하고 일반화성능을 높일 수 있다. 세미나를 통해 semi-supervised learning과 self-supervised learning의 차이를 확실히 알 수 있었고 새로운 아이디어를 얻을 수 있어서 매우 흥미로웠다.
이번 세미나에서는 민정이가 semi-supervised learning 중 최근 가장 유명한 페이퍼 중 하나인MixMatch를 소개해주었다. Semi-supervised learning은 labeled data와 unlabeled data를 함께 사용하여 모델을 학습하기 때문에 두 데이터에 대한 loss를 결합한 semi-supervised loss를 어떻게 설계할 것인가가 중요한 연구 포인트이다. MixMatch 에서는 1) Consistency Regularization 2) Entropy Minimization 3) MixUp의 3가지 아이디어를 활용하여 loss function을 설계하였다. 1) 은 . augmentation data는 original data의 본질은 같다라는 심플한 가정 하에 unlabeled data와 augmentation data을 네트워크에 입력했을 때 결과의 차이를 줄이는 방향으로 loss에 반영하는 역할을 한다 2)는 모델이 입력 데이터에 대하여 모든 클래스에 대한 확률값을 계산할 때 Sharpen function을 사용하여 높은 확률을 갖는 클래스에 대하여 확률값을 더 크게 보정해줌으로써 애매모호한 예측을 피하게 하는 역할을 한다. 이는 예측의 불확실성을 낮추기 위해 도입된 개념이다. 3)은 서로 다른 데이터(labeled – unlabeled)에 대한 convex combination을 통해 생성된 새로운 데이터를 모델 학습에 반영하는 방법으로 데이터 수에 대한 증강과 함께 모델의 일반화 성능을 높일 수 있다는 장점이 있다.
MixUp의 아이디어는 딥러닝 연구에서 다양한 목적을 위해서 활용될 수 있을 것 같다. Semi-supervised learning 뿐만 아니라 adversarial attack이나 self-supervised learning과 같이 data augmentation이 필요한 영역에서 활용이 가능할 것으로 생각된다. 그리고 MixMatch 논문이 인상적이였던 것은 방법론 자체와 그 성능 역시 인상적이였지만 다양한 Ablation study를 통해 제안 방법론의 우수성을 증명한 것이였다. MixMatch 뿐만 아니라 가볍게 언급하고 넘어갔던 FixMatch, ReMixMatch의 논문에 대해서도 한장 정도 추가 설명해주었으면 좋았을 것 같다는 아쉬움은 있지만 깔끔한 피피티와 발표를 통해 처음 MixMatch를 접하는 청자도 이해할 수 있는 좋은 발표를 해준 민정이에게 감사하다는 말을 전한다.
이번주 세미나는 'Semi-supervised learning in deep neural networks (MixMatch)'으로 이민정 연구원님께서 진행해 주셨다. 최근 딥러닝의 획기적인 발전에 따라 딥러닝의 성능에 큰 영향을 미치는 학습 데이터에 대한 연구가 많이 진행되고 있다. 이러한 흐름을 보여주듯 최근 DMQA 세미나 주제로도 많이 채택이 되는 분위기이다. 특히 Meta-learning, Self-supervised learning 그리고 이번 Semi--supervised learning로 연속적인 주제로 세미나가 이어져서 관련 학문의 차이점과 개념을 정립하는데 도움이 많이 되는 듯 하다. 이번 세미나는 Self-supervised learning과 Semi-supervised learning의 차이점을 비교하는 것으로 시작이 되었다. 가장 큰 차이점은 Self-supervised learning은 Unlabeled data만은 사용하여 pretext task를 학습하고 이 학습된 pretext task의 Parameter를 사용하여 다시 Labeled data를 학습하는 2단계의 학습을 진행하는 반면 Semi-supervised learning은 Labeled data와 Unlabeled data를 한번에 학습에 사용한다는 것이다. 다음으로 오늘의 메인 주제인 MixMatch에 대해 설명해 주었다. MixMatch은 일반화 성능을 향상시키기 위해 수행하는 Unlabeled data를 활용하는 방법론으로 Consistency Regularization, Entropy Minimization 그리고 Traditional Regularization 이렇게 3가지 방법을 사용하는 것을 말한다. Consistency Regularization은 Label이 있는 Data를 Augmentation하여 일반화 성능을 높이는 방법이고, Entropy Minimization은 고밀도 지역과 결정 경계면을 멀리 하도록 학습하여 일반화 성능을 높이는 방법이며, 마지막 Traditional Regularization은 Data를 Mix-up하여 새로운 데이터를 생성하는 방법이었다. 모든 방법이 기존에 가지고 있는 양질의 Data를 최대한 활용하여 일반화 성능을 높이는 방법이었다. 개인적인 연구를 진행하면서 Data의 한계로 인한 일반화 성능에 대한 아쉬움을 많이 가지고 있었고, 이를 극복하기 위해 Augmentation을 활용해 보았던 기억이 떠올랐고, 공부하는 만큼 더 새로운 아이디어가 떠오를 수 있구나 라는 생각을 다시금 하게 되는 세미나였다. 새로운 분야에 대해서 잘 준비해준 이민정 연구원님께 감사의 말을 전하고 싶다.
오늘은 민정언니가 ‘Semi-Supervised Learning in Deep Neural Networks’라는 주제로 MixMatch 알고리즘에 대해서 소개해주었다. MixMatch는 semi-supervised learning방법론중 하나로 최근 supervised learning 방법론 중 우수한 일반화성능을 도출한 MixUp을 접목시킨 알고리즘이다.
MixMatch또한 semi-supervised 방법론 중 우수한 일반화성능을 도출하는 것이 주된 기여점이며, 일반화 성능을 향상시킨다는 점에 대해 상세히 이해하기 위해서는 각 세가지 단계에 대해 이해가 필요하다. 세가지 단계는 각각 다음과 같다. (1) Consistency regularization, (2) Entropy minimization, (3) Traditional regularization이다. 먼저, Consistency regularization는 original data와 augmented data가 서로 비슷하도록 인식하는 parameter를 학습하는 loss function이다. 간단히 original data가 input되었을 때의 output1과 augmented data가 input되었을 때의 output2가 서로 가까워지도록 MSE loss를 활용한다. 다음으로 entropy minimization은 class사이를 적절하게 나누는 분류경계면을 생성하기 위해 필요한 loss function이다. semi-supervised learning에서 자주 활용되는 가정이 있는데, 그중 대표적으로 continuity assumption이 있으며, 인접한 data point는 같은 label일 확률이 크다는 것을 의미한다. 이러한 가정을 충족하기 위해서 decision boundary가 적절히 구성되어야 한다. 결론적으로 data point들의 entropy가 작을수록 continuity assumption을 만족하고, 적절한 decision boundary가 생성되었다고 할 수 있다. 마지막으로 traditional regularization은 MixUp알고리즘에서 차용한 개념으로 augmentation방법론정도로 이해하였다. MixMatch는 semi-supervised 상황을 가정하기 때문에 unlabeled data가 input으로 활용되었을 때 도출되는 output1(probability1)와 labeled data가 input일 때 도출된 output2(probability2)이 있다면 input들과 output들을 interpolation하여 새로운 데이터셋(X:augmented data, Y:interpolated value)을 구축할 수 있다는 점이다. 이렇게 세가지 단계들로 인해 MixMatch의 기여점을 설명할 수 있다. 최종적으로 손실함수는 supervised learning에 대한 cross entropy와 unsupervised learning에 대한 consistency regularization term이 선형 결합된 형태로 사용된다. 오늘 민정언니 세미나를 통해 MixMatch알고리즘의 전개 방식에 대해 세세히 알 수 있었고, 더불어 MixUp에 대해서도 개략적인 이해를 할 수 있었던 것 같다. 언니를 보면서 항상 공부한 부분을 새롭게 적용하는 능력이 뛰어나다고 생각해왔다. 언니가 최근 관심을 가지게 된 MixMatch가 어떠한 방식으로 연구에 적용될지 벌써부터 기대가 된다.
이번 세미나는 semi-supervised learning 방법론 중 MixMatch 방법론에 관하여 진행되었다. MixMatch는 Consistency Regularisation + Entropy Minimisation + Traditional Regularisation(MixUp)이 결합되어 labeled data batch와 unlabelled data batch로부터 새로운 labeled data batch와 pseudo labeled data batch를 만들어내며 학습이 진행된다. 과정을 살펴보면, 우선 주어진 label data로부터 augmentation을 진행하여 새 데이터를 생성하고 이 때 unlabelled data 또한 pseudo label을 k개로 증강하여 생성된 예측값들의 평균을 sharpening하여 새 데이터셋을 생성한다. 이후 전체 데이터를 mix up하여 학습에 사용될 데이터를 생성한다. 이 때 labeled data를 이용한 cross entropy loss와 pseudo-labels data를 이용한 consistency regularisation(consistency loss)를 사용한다. 인상깊었던 점은 MixMatch 방법론이 다른 준지도학습 모델에 비해 월등히 좋은 성능을 가진다는 것이었는데 모델이 안정적으로 학습을 진행할 수 있었던 이유에 관해 다시한번 짚어볼 수 있는 뜻깊은 시간이었다.