조건부 확률분포: p(a∣b) 와 p(b∣a)

자주 하는 실수와 요약

자주 하는 실수

실수 나온 문제 바로잡는 법
분자가 같으면 조건을 뒤집어도 확률이 같다고 봄 1 무엇으로 나눴는지(어느 무리를 남겼는지)가 다르다. 커피 주문 0.9 대 0.6
서로 다른 조건의 조건부 확률을 더해 1이 되기를 기대함 2 합이 1인 것은 세로 막대 오른쪽을 고정하고 왼쪽을 다 더할 때뿐이다
조건부 분포만 있으면 결합 확률을 되살릴 수 있다고 봄 2 조건의 확률 p(b)를 곱해야 한다. 칸마다 비율만으로는 칸의 크기를 모른다
분류기 출력을 사진들에 대해 그냥 더하면 라벨 확률이 된다고 봄 3 사진 수로 나눠 평균을 내야 p(y)의 어림이 된다
p(결과 ∣ 원인)을 p(원인 ∣ 결과)로 읽음 4 베이즈 정리로 뒤집고, 무리의 크기 p(원인)을 곱한다. 우산 0.9 대 0.692
사후확률은 시간상 나중의 확률이라고 봄 5 사전·사후는 관측을 보기 전과 본 뒤다. 첫 검사의 사후확률이 둘째 검사의 사전확률이 된다
학습 데이터와 라벨 비율이 다른 곳에서도 분류기 출력을 그대로 믿음 6 출력 안에 학습 때의 라벨 비율이 곱해져 있다. 비율을 바꿔 다시 곱한다
생성기는 그 라벨의 그림 하나만 알면 된다고 봄 7, 9 같은 조건에도 맞는 그림이 여럿이다. 분포에서 뽑아야 한다
그림 쪽 조건부 분포의 값을 확률로 읽음 8 연속인 공간에서는 밀도다. 넓이를 곱해야 확률이 된다
p(y ∣ x)가 높으면 그 그림이 그 라벨다운 그림이라고 봄 8 p(y ∣ x)는 두 라벨 가운데 고른 것일 뿐이다. 그림이 얼마나 그럴듯한지는 p(x ∣ y)에 있다

요약

세로 막대 「∣」의 오른쪽은 이미 아는 것(조건), 왼쪽은 묻는 것이다. 조건부 확률은 조건에 맞는 무리만 남기고 그 안에서 다시 잰 확률이고, p(a ∣ b) = p(a, b) ÷ p(b)다. 조건 하나를 고정하고 묻는 쪽의 모든 값에 걸친 확률을 모으면 조건부 분포가 되고, 그 합은 1이다. 조건을 뒤집은 p(a ∣ b)와 p(b ∣ a)는 분자가 같고 분모가 달라, 한쪽 무리가 작으면 몇 배씩 벌어진다. 뒤집는 식이 베이즈 정리이고, 뒤집을 때는 무리의 크기 p(a)를 곱해야 한다. 관측을 보기 전의 확률을 사전확률, 본 뒤의 확률을 사후확률이라 한다. 그림과 라벨에서 p(y ∣ x)는 라벨 몇 개에 걸친 짧은 막대이고 분류기가 내놓는다. p(x ∣ y)는 그림 전체의 공간에 퍼진 구름이고, 그 값은 밀도라서 넓이를 곱해야 확률이 된다. 그림의 가짓수가 너무 많아 이 구름은 표로 적을 수 없다. 그래서 라벨을 받아 그림을 내놓는 조건부 생성은 구름에서 하나씩 뽑는 일이 된다.

flowchart LR
  A["결합 확률 표<br/>p(a, b)"] --> B["줄이나 칸으로 자르기<br/>조건부 분포 p(a ∣ b)"]
  B --> C["방향을 뒤집으면 다른 값<br/>p(a ∣ b) ≠ p(b ∣ a)"]
  C --> D["베이즈 정리<br/>무리의 크기 p(a)를 곱한다"]
  D --> E["사전확률 → 사후확률"]
  B --> F["그림과 라벨<br/>p(y ∣ x): 짧은 막대"]
  F --> G["p(x ∣ y): 그림 공간의 구름<br/>표로 적을 수 없다"]
  G --> H["조건부 생성<br/>구름에서 하나씩 뽑기"]

막힌 곳

라벨이 주어진 그림의 분포 p(x ∣ y)가 생성이 배워야 할 것이고, 생성기는 그 분포에서 하나씩 뽑아 내놓는 기계여야 한다는 것까지 왔다. 특징 두 개짜리 평면에서는 구름을 정규분포로 정해 두었으니 뽑기가 쉬웠다. 실제 사진의 구름은 아무도 모양을 알려 주지 않는다. 가진 것은 「고양이」 라벨이 붙은 사진 수천 장뿐이다. 분류기는 사진마다 붙은 정답 라벨 하나를 맞히도록 학습했다. 라벨 하나에 맞는 사진이 수천 장인데, 생성기에게는 무엇을 맞히라고 가르쳐야 할까?