공부 참고자료: https://gaussian37.github.io/ml-concept-t_sne/

 

t-SNE 개념과 사용법

gaussian37's blog

gaussian37.github.io

 

위 글로 공부하면서 내가 필요한 포인트만 정리:

t-분포는 소표본으로 모평균을 추정하는 분포로, 

모집단이 정규분포와 유사하나, 모표준편차를 모를때 주로 사용한다 

 

일반적으로 정규분포보다 큰 표준편차를 갖는다고 가정하는데, 

이는  정규분포 상에서는 i 번째 변수와 적당히 떨어진 j, 멀리 떨어진 k의 확률이 꼬리로 갈수록 차이가 나지 않기 때문이다.

큰 표준편차를 갖는(=꼬리가 두터운) 분포를 가정하면 변수끼리의 거리가 확률의 차이에 반영된다. 

 

 

 

 

t-sne는 비선형적 방법 / PCA는 선형적 방법이다 

t-sne는 iterative한 방법으로 feature 집단을 계산하고 sklearn을 이용하는 방법은 아래 매뉴얼을 따라하면 된다

https://scikit-learn.org/stable/modules/generated/sklearn.manifold.TSNE.html 

'딥러닝 공부 > 짧은 AI' 카테고리의 다른 글

어쩌다보니 공부한 domain adaptation  (0) 2023.01.09
Representation Learning  (0) 2022.08.18

상황: 현재 AI 이용한 손글씨 인식 챌린지를 참여중인데 (순위가 out of domain,,,)  train test set의 domain이 다른게 

결국 문제인 것 같아 간단하게 domain adaptation 공부하면서 요약 중

상황: test set(=target domain)은 이미지만 있고 label은 없는 상황

validation  set accu는 97%인데 test set accu는 82% (ㅜㅜ)

 

* domain adaptation은 결국 transfer learning의 한 종류이다

 

* target domain의 labeling에 따라 4가지 종류로 나눌 수 있다

  1. Supervised DA
  2. Semi-Supervised DA
  3. Weakly Supervised DA
  4. Unsupervised DA

=> 그중 내 setting 은 4번

 

Unsupervised Domain Adaptation by Backpropagation(2015)

: backprop의 구조만 약간 바꿈

'딥러닝 공부 > 짧은 AI' 카테고리의 다른 글

t-sne 요약  (0) 2023.09.10
Representation Learning  (0) 2022.08.18

https://89douner.tistory.com/339

 

1. Representation Learning 이란?

안녕하세요. 이번글에서는 representation learning이라는 개념에 대해서 설명하려고 합니다. 개인적으로 2021년 동안 논문을 살펴보면서 가장 눈에 많이 띄었던 용어가 representation learning 이었습니다.

89douner.tistory.com

Representation Learning을 공부하면서 위 블로그 글을 일부 참고하여 작성하였습니다. 

스스로 다시 공부할 때 5-10분내로 복습하는 것을 목표로 했기 때문에 최대한 간소화하여 적었습니다


Representaion Learning이 뭔지 알기위해서는 먼저 Representation의 개념부터 잡아야한다 

https://www.deeplearningbook.org/contents/representation.html

 

https://www.deeplearningbook.org/contents/representation.html

 

www.deeplearningbook.org

먼저 Deep Learning 교과서에는 이런 구절이 있다. 

"Many Information processing tasks can be very eay or very difficult depending on how the information is represented"

: 정보처리과정은 그 정보를 어떻게 표현하는 지에 따라 매우 쉬울수도, 매우 어려워질수도 있다. 

 

여기서 느낄 수 있듯이 representation이란 결국 어떠한 task를 위해 input을 잘 가공하는 것을 의미한다.

 => CNN기반의 deep learning network도 해당 task를 잘 수행하기 위한 feature를 뽑아내는 과정으로 볼 수 있다.

예를 들어 softmax classifier를 사용하는 모델은 이에 맞게 잘 표현할(=representation) feature를 뽑아낼 것이다. 

 

단순하게 비유하자면 classifier로 학습된 model에서 뽑은 feature는 classify를 위한 representation이기 때문에

이를 segmentor의 input으로 넣는다고 잘 작동하지 않을 것이라는 사실과 비슷하다. 

 


여기까지 무슨소린지는 알겠는데, 내가 궁금했던 것은

그래서 굳이 "Representation Learning이라는 점이 pre-training과 다른점이 무엇인가"이다

=> 보통 Representation Learning은 Unsupervised Learning에서 많이 사용하는 듯하다.  

(혹은 pretraining도 Representation Learning의 범주 안에 속한다고 봐야하나? )

VAE같이 explicit한 distribution을 따르도록 학습시키는 경우를 그 예시로 들 수 있다. 

VAE의 경우 normal distribution이 인풋이미지를 가공하여 만든 new representaion이 되는 것이다. 

 


 

예시를 들면 조금 더 이해하기가 쉬운데, CLIP이 좋은 예시가 된다. 

 

 

 

최종 목표는 zero-shot prediction을 위한 pretraining이기 때문에 

이를 잘표현할 수 있는 방식으로 text encoder와 image encoder가같은 도메인의 feature를 표현할 수 있게 학습을 유도하는 것이다. 이것이 representation learning의 한 종류로 볼 수 있다. 

 

=> meta-learning은 이와 달리 few shot task를 잘하기 위한 스킬적인 측면이라고 볼 수 있다.

학습의 결과물이 fewshot을 잘 할수있는 domain을 학습시키는 것이 아니라

스킬적인 측면에서 gradient update를 few-shot 시나리오에 맞춰해주는 것이라 차이가 있다. 

'딥러닝 공부 > 짧은 AI' 카테고리의 다른 글

t-sne 요약  (0) 2023.09.10
어쩌다보니 공부한 domain adaptation  (0) 2023.01.09

+ Recent posts