Heath.log
로그인
Heath.log
로그인
확률론 맛보기
Heath_Jeong
·
2021년 3월 6일
팔로우
0
ai math
0
Ustage Week2 - AI Math
목록 보기
7/9
확률론 맛보기
딥러닝에서 확률론이 필요한 이유
딥러닝은 확률론 기반의 기계학습 이론에 기반함
손실함수 (loss function) 들의 작동 원리는 데이터 공간을 통계적으로 해석해서 유도함
예측이 틀릴 위험 (risk) 를 최소화하도록 데이터를 학습 → SGD
회귀 분석에서 손실함수로 사용되는 L2-norm 은
예측오차의 분산
을 가장 최소화하는 방향으로 학습하도록 유도
분류 문제에서 사용되는 교차엔트로피 (cross-entropy) 는 모델
예측의 불확실성
을 최소화하는 방향으로 학습
분산 및 불확실성을 최소화하기 위해서는 측정하는 방법을 알아야 함
두 대상을 측정하는 방법은 통계학 기반이므로 확률론을 알아야 함
확률분포는 데이터의 초상화
테이터 공간을
x
x
x
x
y
y
y
라 표기하고 𝔇 는 데이터공간에서 데이터를 추출하는 분포
데이터는 확률변수로 (
x
x
x
,
y
y
y
) ~ 𝔇 라 표기
확률변수는 함수로 표시, 임의로 데이터 공간에서 관측된 데이터를 확률변수로 데이터 추출
추출한 데이터의 분포 → 𝔇
결합분포 P(x, y) 는 𝔇 를 모델링
결합분포는 원래 확률분포 타입에 상관없이 이산형이나 연속형 가능
결합분포는 아규먼트로 쓰인 확률변수들을 같이 고려한다는 뜻
P(x) 는 입력 x 에 대한 주변확률분포로 y 에 대한 정보를 주지 않음
주변확률분포 P(x) 는 결합분포 P(x, y) 를 y 에 대해 더하거나 적분해서 유도
조건부확률분포 P(x | y) 는 데이터 공간에서 입력 x 와 출력 y 사이의 관계를 모델링
P(X | Y = 1) : Y 가 1 일 때 X 의 확률분포
원딜님 설명 : 전체 공간 S 대신 Y 공간에서 X 의 확률분포
결합분포말고 조건부확률분포를 쓰면 데이터 각각에 대해 더 명확하게 알아낼 수 있음
확률분포는 데이터를 해석하는데 도움을 줌 (초상화)
이산확률변수 vs 연속확률변수
확률변수는 확률분포 𝔇 에 따라 이산형 (discrete) 과 연속형 (continuous) 확률변수로 구분
데이터 공간
x
x
x
x
y
y
y
로 구분하는게 아니라 확률분포의 종류에 따라 구분!
이산형확률변수
확률변수가 가질 수 있는 경우의 수를 모두 고려하여 확률을
더해서
모델링함
P(X = x) 는 확률변수가 x 값을 가질 확률
연속형확률변수
데이터 공간에 정의된 확률변수의 밀도 (density) 위에서의
적분
을 통해 모델링
P(x) : 밀도함수, 누적확률분포, 데이터 공간에 정의된 확률보다는 밀도 (적분 필요)
밀도는 누적확률분포의 변화율을 모델링, 확률로 해석 x
보통 컴퓨터에 쓰는 데이터는 이산형이지만 기계학습에는 정규분포, 감마분포 등 연속형확률변수 씀
이산형과 연속형으로 모든 확률분포 표현되는건 아님, 더 있음
조건부확률과 기계학습
조건부확률 P(y | x) 는 입력변수 x 에 대해 정답이 y 일 확률
연속확률분포면 확률 대신 밀도로 해석
저번 시간에 사용한 로지스틱 회귀의 선형모델과 소프트맥스 함수의 결합은
데이터에서 추출된 패턴을 기반으로 확률 해석
선형함수가 비선형함수를 거치면 확률이 됨
분류 문제에서 softmax(
W
ϕ
+
b
)
W\phi + b)
W
ϕ
+
b
)
는 데이터 x 로부터 추출된 특징패턴
ϕ
(
x
)
\phi(x)
ϕ
(
x
)
과 가중치행렬 W 을 통해 조건부 확률 P(y | x) (= P(y |
ϕ
(
x
)
\phi(x)
ϕ
(
x
)
) 를 계산
회귀 문제의 경우 조건부기대값 E[y | x] 를 추정
조건부 확률 대신 조건부기대값을 구해야(추정)한다는 말
보통 회귀 문제는 연속확률분포를 다루므로 적분 사용
왜 조건부기대값을 구하나?
목적식 L2-norm 을 최소화하는 함수 = 조건부기대값 이기 때문
robust (강건) 하게 예측할 때는 조건부기대값 대신 median (중간값) 사용
통계적 모형에서 원하는 목적에 따라 추정량이 달라질 수 있다!
딥러닝은 다층신경망을 사용하여 데이터로부터 특징패턴
ϕ
\phi
ϕ
를 추출
특징패턴을 학습하기 위해 어떤 손실함수를 사용할지는 기계학습 문제와 모델에 의해 결정됨
기대값
확률분포가 주어지면 데이터를 분석하는데 사용 가능한 여러 종류의 통계적 범함수 (statistical function) 계산 가능
기대값 (expectation) 은
데이터를 대표하는 통계량
이면서 동시에
확률분포를 통해 다른 통계적 범함수를 계산
하는데 사용
기대값을 이용해 분산, 첨도(첨도말고 왜도인듯 = 비대칭도), 공분산 등 여러 통계량 계산 가능
기억해야할 것 : 이산이면 급수(질량함수), 연속이면 적분 사용
몬테카를로 샘플링
기계학습의 많은 문제들은 확률분포를 명시적으로 모를 때가 대부분 → 몬테카를로 샘플링은 기계학습에서 매우 다양하게 응용
확률분포를 모르기에 데이터를 이용해 기대값을 계산하기 위해 몬테카를로 샘플링을 사용
이산형 연속형 상관없이 성립
독립추출 (분포에서 독립적으로 추출 = 샘플링) 이 보장된다면 대수의 법칙 (law of large number) 에 의해 수렴성을 보장
(Q. 대수의 법칙이 뭐지 -> 전체 모집단에서 랜덤한 표본의 평균은 전체의 평균과 가까울 가능성이 높다는 법칙)
예제 : 적분 계산하기
확률분포가 아닌 공간에서 적분은 불가능 → 몬테카를로
예제의 f(x) 는 우리가 아는 적분식으로 적분 구하기 힘듦
f(x) 의 적분의 길이가 2 이므로 반으로 나누면 기대값. 기대값은 몬테카를로 방법 가능.
다 구하고 다시 2 곱하면 됨.
uniform (균등) 분포에서 샘플링해주면 오차 범위 안에 들어옴.
샘플 사이즈가 적으면 오차범위 커짐 → 참값에 멀어짐, 적절히 조절해야 함
참조
BoostCamp AI Tech
Heath_Jeong
데이터로 문제를 해결하는 엔지니어를 꿈꿉니다.
팔로우
이전 포스트
파이썬 Pandas (2)
다음 포스트
파이썬 시각화 도구
0개의 댓글
댓글 작성