2024. 8. 10. 23:53ㆍ기계 학습 (Machine Learning)/수학 (Mathematics)
Self Information
(정보란 이렇습니다.)
뭐... 지식 같은 것이죠.
하지만 오늘 배울 정보의 개념은 결이 조금 다릅니다.
바로 사건의 중요함을 수치화 한 것을 정보라고 합니다.
예를 들어서,
오늘 눈이 오면 기온은 10도 이하다
라는 사건은 별로 중요하지 않습니다.
눈이 오는 데 추운 건 너무나 당연한 이야기이기 때문이죠.
하지만 반대로 이런 사건이 있다고 해봅니다.
오늘 눈이 올 때 토네이도도 온다
살면서 토네이도는 흔치 않을 뿐더러,
우리 생명과 재산에 있어서 매우 위험한 존재입니다.
따라서 이런 사건은 매우 중요하죠.
정보이론에서 말하는 정보는
사건이 중요하거나 별거 아님을 수치화해서 제공하는데,
발생 확률이 낮으면 정보는 높고
반대로 높으면 정보는 낮습니다.
그리고 특정 사건에 대해서,
자기 자신이 가지는 중요도의 양을 바로
자기 정보(self information)이라고 합니다.
자기 정보가 표현하는 바는 명확합니다.
어떤 사건의 발생할 확률이 낮으면
(즉 토네이도처럼 발생할 확률이 낮으면)
자기 정보의 값이 더 커지죠.
(들려오는 토네이도 소식이 매우 중요하죠)
Entropy
엔트로피라는 용어는 많이 들어봤을 것입니다.
어떤 게 복잡하면 복잡할수록 엔트로피가 커진다...
같이 추상적으로나마 알고있죠.
뭐 틀린말은 아닙니다.
어질러진 방에서는 뭘 찾는 게 힘들고
정리정돈된 방에서는 쉽게 찾을 수 있는 것처럼요.
다만 이를 불확실성(uncertainty)으로 바꿔서 이야기하면 됩니다.
어떤 사건을 예측하기 힘들면 힘들수록 엔트로피는 증가하고
예측하기 쉬울수록 엔트로피는 감소하죠.
엔트로피를 구하는 공식은 다음과 같습니다.
여기 등장하는 h(x) 함수는 위에서 배웠던 자기 정보입니다.
조금 헷갈린다면 아래처럼 바꿔서 생각해보면 좋습니다.
아직 감이 안 올 수 있죠.
자, 예시를 볼까요?
이 주사위 한 개에는 1부터 6까지 차례대로 눈금이 적혀있습니다.
앞 뒤로 세면 숫자가 각각 2개씩 적혀있겠네요.
따라서 각 눈금이 등장할 확률이 2/12로 동일합니다.
(총 12개 눈금에 숫자는 2개씩 있으므로)
이 주사위의 엔트로피를 구해봅시다.
1.792가 나왔네요!
그럼 이제 눈금을 다르게 가진 주사위를 살펴볼까요?
이 주사위 한 개에는 1, 2, 3 눈금이 3개씩 있고, 나머지는 1개씩 있습니다.
엔트로피가 1.661로 낮아졌습니다.
이는 바로 주사위를 여러 번 굴렸을 때,
어떤 눈금이 더 많이 등장할 지 예측하는 것이
쉬우면 쉬울수록 불확실성이 줄어들기 때문입니다.
1 ~ 6 눈금 개수가 모두 동일하게 있으면
주사위를 굴렸을 때 어떤 눈금이 더 잘 나올 지 예측할 수 없죠.
확률은 모두 동일하니까요.
하지만 1, 2, 3 눈금이 1개씩 더 늘어났다면,
당연히 1, 2, 3 눈금이 4, 5, 6 눈금보다
더 많이 등장하겠다고 예측할 수 있습니다.
아직도 감이 안온다면
마지막으로 다른 주사위를 가져와보겠습니다.
이 주사위 한 개에는 1 눈금이 7개나 있고 나머지는 1개씩 있습니다.
엔트로피가 1.350으로 많이 낮아졌습니다.
이는 주사위를 굴린다면,
주로 1이 등장할 것이기 때문에,
예측하기 더 쉬워졌기 때문입니다.
엔트로피 개념은 기계 학습에 있어서
예측이 쉽거나 어려울꺼라는 판단도 가능하게 합니다.
가령 아래 그림을 보고
성별을 맞춰본다고 해봅시다.
여성이나 남성의 특징이 보이지 않기 때문에
남성 또는 여성이라고 말해서 맞출 확률이 동전 던지기처럼 반반이겠죠.
따라서 엔트로피가 매우 큽니다.
하지만 위 그림을 다양한 기법을 통해
아래 그림처럼 복원했다고 해봅니다.
이 그림은 성별을 맞추기 쉬울까요?
머리카락과 얼굴 형태 등 여성의 특징이 뚜렷이 보입니다.
여성이라고 말하면 맞출 확률이 매우 높겠죠!
따라서 엔트로피가 매우 낮습니다.
교차 엔트로피
교차 엔트로피는
두 확률 분포가 얼마나 차이나는 지 알아낼 때 사용합니다.
일전에 배웠던 엔트로피가 확률 변수 1개만을 다뤘다면
이제는 2개를 앞 뒤로 배치했다고 생각해줘도 됩니다.
이를 직관적으로 생각해보면
어떤 정보가 여기서는 귀중한데, 저기서는 별거 아니라면
교차 엔트로피는 커집니다.
하지만 역시 예시로 이해하는 게 빠르죠.
만약 무작위로 섞은 카드 5장 중 1장을 뽑았을 때
다음과 같이 5장의 카드가 주어졌다면,
확률 분포는 다음과 같습니다.
그리고 이렇게 5장이 주어졌다면
확률 분포는 다음과 같습니다.
이제 교차 엔트로피를 구해봅시다.
이번엔 카드 뭉치를 하나 더 만들어서
교차 엔트로피를 추가로 확인해봅니다.
교차 엔트로피가 더 커졌습니다!
즉, 카드 뭉치가 다르면 다를수록
교차 엔트로피가 더 커지는 것이죠.
만일 아래처럼 카드 뭉치가 똑같다면
교차 엔트로피는 가장 낮습니다.
기계 학습에 있어서 교차 엔트로피는
예측과 정답을 비교할 때 사용합니다.
예측에 대한 확률과, 정답에 대한 확률을 비교해서
교차 엔트로피가 낮으면 낮을수록
결국 예측과 정답이 비슷하다고 생각할 수 있죠.
KL-Divergence
교차 엔트로피를 배울 때 빠질 수 없는 개념이죠.
쿨백-라이블러 발산(kullback-leibler divergence)라고도 불리는 식은
두 확률 분포의 차이를 더 명확하게 표현하는 데 사용합니다.
이를 유도하는 건 아래와 같습니다.
H(P)는 상수이므로
결국 저 노란색으로 표현된 식이 두 확률 변수의 차이를 가르죠.
이전 카드 뭉치들의 KL-다이버전스를 구해볼까요?
역시 첫 번째와 세 번째 카드 뭉치에 대한
KL-다이버전스가 더 크네요.
첫 번째 카드뭉치의 엔트로피는 약 0.950로 모두 고정이므로
이를 제외한 차이만을 집중해서 보기 편합니다.
'기계 학습 (Machine Learning) > 수학 (Mathematics)' 카테고리의 다른 글
확률과 통계 4 - 가우시안 분포 (0) | 2024.08.09 |
---|---|
확률과 통계 3 - 베이즈 정리 (0) | 2024.08.06 |
확률과 통계 2 - 조건부 확률 (0) | 2024.08.06 |
확률과 통계 1 - 확률 분포 (0) | 2024.08.05 |
선형대수 2 - 코사인 유사도와 곱셈 (0) | 2024.08.03 |