본문 바로가기

인공지능/머신러닝

[머신러닝] Categorical distribution 범주형 다항분포 캐빈머피

반응형

다시금 캐빈머피의 머신러닝 공부를 시작하였습니다.

 

데이터 사이언티스트 직군의 특성상 공부를 게을리 하면 안되기 때문에 힘들다가도 

살아있음을 느끼다가도 재밌다가도 다시 힘들기도 합니다.

 

그러나 이 과정을 이겨낸다면 뿌듯해지죠.

열심히 해봅시다. 

 

케빈머피 머신러닝 일부

 

Categorical distribution은 이산확률 변수입니다. 위의 (2.88)의 수식이 다소 복잡하게 느껴질수 있으나,

 

• y는 확률 변수, 1부터 C까지 카테고리를 나타냄.
• Theta 는 각 클래스에 대한 매개변수 (확률) 이므로 theta c 는 클래스에 대한 확률
• I 는 Indicator function (지시함수) 

 

요정도만 짚고 넘어갑니다. 

 

그 다음 우리가 이제 범주형 분포로 사용하기 시작하는 것은 바로 softmax 함수입니다 

 

케빈머피 머신러닝 일부

 

여기서 a 는 입력 벡터 또는 로짓(logit) 벡터, a = (a1,a2, …, aC)
• Softmax(a)c 는 로짓벡터를 확률벡터로 변환한 후 c 번째 요소를 나타냄.
• C 는 클래스의 수

 

소프트 맥스 함수를 이해하기 위해서는 여기 첫번째 나오는 입력벡터 또는 로짓 이라는 개념을 이해해야 합니다. 

그리고 로짓(logit) 을 이해하기 위해서는 승산(Odds) 의 개념부터 이해해야합니다.

 

그럼 차근차근 해봅니다.

 

Odds (승산)

• 성공 확률과 실패 확률 사이의 비율
• 성공 확률이 p 일때, 실패확률은 1-p
• Odds = p/(1-p)
• 예를들어, 성공 확률이 0.8인 경우, odds는 0.8/0.4 = 0.2
• P가 1에 가까울수록 분모가 0 에 수렴하며 이론상으로 [0,+무한대] 사이의 값을 갖음.


Logits (로짓)

• 로짓은 오즈에 로그를 취한 값으로 확률을 다루는데 편리한 형태의 수치
• [0,1] 사이의 값을 무한의 실수값으로 변환 가능 [0, +무한대] : Odds —> [-무한대, +무한대] (로짓)
• ln[Odds] = ln[p/(1-p)]


로짓을 이해사기 위해서 오즈를 이해해야 한다는 말이 무슨뜻인지 이해 가셨나요?

 

 

좀더 자세한 수식으로 증명해야 확실히 와닿을것 같죠 시간될때 자세히 풀어서 써보겠습니다. 

반응형