Transformers
Seq2Seq에서 RNN을 아예 빼버리고 attention으로 구성해보면 어떨까? → Transformer의 구조 현재는 seq2seq + attention에서는 하나의 벡터로…
2025/04/27
Jinsoolve.
Categories
Tags
4월 안에는 꼭...
About
Locales:
en
ko
로지스틱 회귀의 비용함수는 다음과 같이 생겼다.
그렇다면 비용함수는 왜 이렇게 생겨 먹은걸까?
이를 이해하기 위해서는 log-odd에 대해서 먼저 이해해야 한다.
선형 회귀에서는 ~ 의 예측값을 반환한다.
로지스틱 회귀에서는 마지막 예측값 대신 log-odd라는 걸 구해야 한다는 차이가 있다.
하지만 Odds는 범위가 [0,]이고, 비대칭성이기 때문에 사용하기 어렵다.
이를 해결하기 위해 다음과 같이 로그함수를 취한다.
하지만 Logit은 확률로 사용하기 어려운 치역 범위 [,]를 갖고 있기 때문에 마찬가지로 사용하기 어렵다.
치역의 범위를 확률로 사용하기 좋게 [0,1]로 바꾸도록 도와주는 것이 이 시그모이드 함수이다.
라 할 때
위와 같이 시그모이드 함수를 취한다.
이해하기 쉽게 그림으로 설명하자.
이러한 과정을 거쳐서 우리에게 익숙한(?) 시그모이드 함수의 그래프가 나온다.
이제 가 무엇을 의미하는지 대충 이해한 듯 하다. 그렇다면 는 무슨 의미일까?
그래프를 한 번 그려보자. (단 log = ln이 다.)
여기서 는 [0,1] 이므로 아래와 같다.
1임을 예측할수록 값이 줄어들고, 1임을 예측하지 못할수록 값이 커진다.
즉, 예측을 잘못할수록 값이 커진다. 이는 손실함수라고 말할 수 있을 것이다.
(참고로 비용함수는 모든 데이터셋의 손실함수에 대한 평균이다.)
그렇다면 도 같은 방식으로 0임을 예측하는 것의 손실함수라고 말할 수 있을 것이다.
따라서 모든 m개의 데이터 샘플에 대하여
데이터 샘플의 분류가 1일 때는 를 더하고,
데이터 샘플의 분류가 0일 때는 를 더하면 전체 손실값이 될 것이라는 것을 알 수 있다.
따라서 아래와 같은 식이 성립한다.
Seq2Seq에서 RNN을 아예 빼버리고 attention으로 구성해보면 어떨까? → Transformer의 구조 현재는 seq2seq + attention에서는 하나의 벡터로…
2025/04/27
언어 모델이라는 건, 사실 다음에 올 단어를 확률로 예측하는 것이다. 이러한 언어 모델들을 어떻게 발전시켜왔는 지 살펴보자. 이미 이전 포스트에서 자세히 살펴보았던 내용이다.…
2025/04/27
이전 포스트에서 RNN에서 Vanishing Gradient로 인해 장기 의존성 문제가 있다는 사실을 이야기했다. 이런 Vanishing Gradient를 해결하기 위해 크게…
2025/04/27
기존 RNN의 병목 현상을 해결하기 위해 Attention이 등장했다. Decoder에서 한 단어를 예상할 때, 해당 단어와 특별히 관련되어 있는 Encoder의 특정 단어를…
2025/04/27