[9일차] 확률론 할짝
오늘 어렵다고해서 엄청 쫀 상태로 들었는데 생각보다 괜찮았다. 이번 글의 부제는 그냥 받아들이기이다 하하
딥러닝은 확률론 기반의 기게학습 이론에 바탕을 두고 있다.
기계 학습에서 사용되는 손실함수(loss function)이 최소화하도록 해야하는데 이 때 데이터 공간을 통계적으로 유도해서 사용한다.
예시를 들자면
회귀 분석에서는 예측 오차의 분산을 최소화하도록 학습하고
분류문제에서는 교차엔트로피 즉 모델 예측의 불확실성을 최소화하는 방향으로 학습한다.
이런 >최소화하는 방법<이 바로 확률론 기반이다.
용어 정리
먼저 기본 개념을 가지고 시작하자
데이터 공간을 x*y라 표기하고 D는 이 공간에서 데이터를 추출하는 분포이다. 강의자료에는 이렇게 쓰여있으나 편의를 위해서 xyD로 표현한다.
데이터 공간 산에는 관측 가능한 데이터들이 있다. x벡터와 y값 이겠지?
이 값을 추출할 때 확률 변수로 추출하는거다!!이 확률변수의 분포가 바로 저 위에서 표현한 D!
그리고 확률변수는 크게 두가지 종류가 있다.
- 이산확률변수
- 연속확률변수
일케 두개다. 둘 다 아닌 애도 있다지만 그건 가볍게 무시해보자.
이산확률변수
는 확률변수가 가질 수 있는 모든 경우의 수를 고려하여 확률을 더해서 모델링한다.
수식으로 표현하면 위와 같다.
그러니까 이번 퀴즈에도 나온 주사위를 예시로 들어보자.
1이 나올 확률은 1/6이다
2가 나올 확률도 1/6
6까지 마찬가지이다.
P(x=1)=1/6 인거지
다 더하면 1이 되겠다~
이처럼 불연속적인 이산 확률 변수에 대한 확률 함수를 확률 질량 함수라고 한다!
연속확률변수
20대의 ㅇㅎㅇ씨의 키가 170일 확률은 몇일까? 바로 표현할 수 있을까?
키의 분포가 정규분포를 따른다고 해보자.
그럼 그 분포를 바탕으로 정확한 확률을 구할 수 있을까? 그럴 수 없다!
이럴 땐 특정한 키 170보다 영역(구간)에 대한 확률을 구하는게 더 낫다.
이럴 경우에는 확률 질량 함수 대신 확률 밀도 함수를 통해, 확률 변수로 정의된 공간에 대해 확률값이 아닌 확률 밀도를 정의할 수 있다!!
대한민국 여성의 키가 정규분포(가우시안 분포)를 따른다고 가정하면 ㅇㅎㅇ씨의 키가 165에서 170 사이일 확률은 정규분포의 해당 부분을 적분하면 구할 수 있다.
결합확률
결합 확률은 두개 이상의 사건이 동시에 일어날 확률을 말한다. 주사위를 두개 던진다고 생각하면 된다.
결합 분포는 변수가 여러개일 때 이들 모두를 살펴보는거다 그래서 P(x,y)로 쓴다. x와 y가 독립이라면 P(x)*P(y)로 구하겠고 아니라면 독립이 아니란걸 알 수 있을것이다. 이 결합분포를 이용해 D를 모델링하는거다.
주변확률분포
P(x)는 x에 대한 주변확률분포로 y에 대한 정보를 주지 않는다!
그림을 보면 이해가 쉬운데,
이런 데이터 공간에서 나뉜 구간에 따른 x의 분포를 옮기면 이건 P(x)이다.
y에 대한 정보는 전혀 포함하고 있지 않다.
P(y)도 구할 수 있겠지? 한번 발그림을 그려보자면
x에 대한 정보는 1도 없는거 다시 한번 확인하고 넘어가자~
조건부확률분포
P(x|y)는 y가 있는 환경에서 x의 분포이다.
둘의 관계가 모델링 되겠지? 저 위의 그림을 보자면 y=1 일때 x의 분포를 부여줄 수 있겠다.
P(y|x)는 입력변수 x에 대해 정답이 y일 확률을 보여줄 것이다(이산확률변수일 때! 연속확률변수는 밀도로 해석하니께)
어제 소프트맥스에 대해서 잠시 다뤘는데 선형모델을 확률로 바꿔주는 즉 classfication으로 바꿔주는 소프트맥스 함수가 조건부확률을 이용한다.
데이터 x를 통해서 추출된 특징패턴과 가중치행렬(학습된 값)을 통해서 조건부 확률을 계산해내는게 바로 소프트맥스이다
만일 회귀문제라면 기대값을 추정하여 푼다!
여기서 잠시 기대값은?
데이터를 대표하는 통계량으로 확률분포를 통해 다른 통계적 범함수를 게산하는데 사용할 수 있어서 아주 중요한 통계지표(?)이다
연속확률 분포인 경우에는 적분을 통해 구하고, 이산확률 분포는 급수를 이용한다.
이를 이용해 분산, 첨도, 공분산 등 여러 통계랑을 계산할 수 있다.
공식은 위를 참고!
그러니까, 딥러닝이란게 다층신경망을 통해서 데이터로 부터 특징패턴을 추출하고 이를 조건부확률/조건부기댓값을 추정하여 손실이 최소가 되도록 한다는거다!
몬테카를로 샘플링
기계학습을 해야하는 데이터/ 문제들은 확률 분포를 명시적으로 모를 떄가 대부분이라고 한다.
이 때 몬테카를로 샘플링 방법을 이용해서 기대값을 계산할 수 있다!
sampling data의 산술평균을 이용해 계산하는거다
독립추출만 보장된다면 대수의 법칙에 의해 수렴성이 보장된다고 한다.
그러니까 잘 샘플링한 데이터들의 평균을 기댓값으로 쓰는데 그게 오차가 되게 적을걸 보장한다는 것 같다
몬테카를로 방법 중 에씨로 원주율을 구하는게 있다.
길이가 2인 정사각형에 원을 하나 그리고 4등분해보자
저 색칠한 부분에 다트를 던진다고 가정해보자
부채꼴 안에 들어갈 확률은 4/파이 이다
여기서 ㅋㅋㅋㅋ프로그래밍을 해가지고 랜덤으로 돌리면서 부채꼴 안에 랜덤으로 찍힐 확률을 이용해서 파이를 구하는거다. 신기하다 참.
그럼
오늘도 되게 짧다. 이래도 되나 싶다ㅋㅋㅋㅋㅋㅋ근데 나름 잘 이해한거같다 ㅎ0ㅎ