카테고리: background
"background" 로 분류된 글.
이고 를 로 나눈 나머지를 이라 하자. ()
의 최대 공약수를 라고 하면, 다음이 성립한다.
출처: wikipidia
이 0이 될 때 알고리즘을 멈추며, 이 때의 가 최대공약수가 된다.
예를 들어 1460과 1037에 대해 알고리즘을 진행해보면 다음과 같다.
\begin{flalign*} (1460, 1037)\\=(1037, 323)\\=(323, 68)\\=(68, 52)\\=(52, 16)\\=(16, 4)\\=(4,0) \end{flalign*}이 0일때 가 4이므로 1460과 1037의 최대공약수는 4이다.
유클리드 호제법
유클리드 호제법은 2개의 자연수에 대해 최대공약수를 구하는 알고리즘이며 다음과 같은 성질을 통해 알고리즘을 진행한다.
| 종류 | 점수 함수 | Q의 출처 | K, V의 출처 | 출처 논문 |
|---|---|---|---|---|
| Bahdanau (additive) | decoder 직전 상태 | encoder 전체 | Bahdanau et al. (2015) | |
| Luong dot | decoder 현재 상태 | encoder 전체 | Luong et al. (2015) | |
| Luong general | decoder 현재 상태 | encoder 전체 | Luong et al. (2015) | |
| Luong concat | decoder 현재 상태 | encoder 전체 | Luong et al. (2015) | |
| Encoder self-attention | encoder 이전 층 | encoder 이전 층 | Vaswani et al. (2017) | |
| Masked self-attention | (뒤쪽 ) | decoder 이전 층 | decoder 이전 층 | Vaswani et al. (2017) |
| Encoder-decoder attention | decoder 이전 층 | encoder 출력 | Vaswani et al. (2017) |
Attention 메커니즘 정리 - Seq2Seq에서 Transformer까지
Lab11-5에서 Seq2Seq model을 공부하면서 입력 문장 전체를 vector 하나로 압축한다는 점이 계속 걸렸다.
는 chain rule을 통해 위와 같이 미분이 바로 되는 형식으로 표현할 수 있다. 한 번 더 거슬러 올라가 보자.
이번에는 과 를 구할 차례이다. 먼저 을 구해보자.
Backpropagation
데이터를 레이어의 노드들을 통과시키면서 설정된 weight에 따라 예측 결과값을 계산하는 것을 forward pass라고 한다.
이런 이유 때문에 교차 엔트로피 자체가 loss로 기능할 수 있는 것이다.
Cross Entropy(교차 엔트로피)
교차 엔트로피의 의미는 이름에서 찾아볼 수 있다. 먼저 교차 엔트로피의 식을 한번 보자. 엔트로피 식에 와 의 밀도함수들이 교차해서 들어가 있다. 그런 의미에서 교차 엔트로피라는 이름이 붙은 것이다.
이때 이산확률분포의 쿨백-라이블러 발산은 위에서 표현한 것과 같이 총 합으로 나타낼 수 있으며 다음과 같고
KL divergence(쿨백-라이블러 발산)
이번에는 엔트로피에 이어 쿨백-라이블러 발산(Kullback-Leibler divergence)에 대해 알아보려 한다.
엔트로피는 정보량이 클수록 커지는 성질을 가진다. 다른 정보이론에서는 모르겠지만 머신러닝 분야에서는 예측을 하는 것이 목적이므로 예측에 맞춰 다시 말을 정리하면, 예측이 힘들수록 더 크다는 것이 된다.
이것이 앞서 예측하기 어려운 정도가 가장 와닿았다고 하는 이유였다.
다음 포스팅에서는 이 엔트로피를 이용한 대표적인 loss인 cross entropy를 알아보기 위해 KL divergence에 대해 먼저 알아보려 한다.
Entropy(엔트로피)란?
오토인코더에 대한 공부를 하다가 entropy, cross entropy, KL divergence 등 모르는 용어들이 있어서 더 이상 미루지 않고 공부를 해 보기로 했다.