Page 18 -
P. 18
그림 2-2에서 이를 시각화한 모습을 볼 수 있다. 여기서 화살표는 부모-자식 관계를 의미한다
(Daft 파이썬 라이브러리 제공, http://daft-pgm.org/). 2
그림 2-2 어떻게 관측이 이루어졌는지를 보여주는 그래픽 모델
α PyMC 더 알아보기
τ
λ 1 λ 2
λ
obs
PyMC와 다른 확률론적 프로그래밍 언어는 이러한 데이터 생성 스토리를 서술하기 위해 디자인되
었다. 크로닌은 좀 더 일반적으로 다음과 같이 말한다. 1
확률론적 프로그래밍은 사업분석의 성배(聖杯) 중 하나인 데이터에 대한 서술적 설명을 풀어 내고, 과학적
설득이라는 칭송받지 못하는 영웅을 봉인 해제할 것이다. 사람들은 스토리(설명할 수 없는 힘을 가진 일화,
그것이 잘 만들어졌든 아니든 의사결정을 이끌어내는 스토리)의 관점에서 생각한다. 그러나 기존의 분석
론은 대개 이런 류의 스토리를 제공하지 못한다. 그 대신 숫자는 사람들이 결정을 내리기 위해 저울질할 때
사람들이 선호하는 인과적인 내용 없이 불쑥 튀어나온 듯 보인다.
2.2.1 같은 스토리, 다른 결말
흥미롭게도 우리는 그 스토리를 재해석하여 새로운 데이터셋을 만들 수 있다. 예를 들어 앞서 논의
한 여섯 단계를 반대로 뒤집으면 데이터셋의 실현 가능성을 시뮬레이션할 수 있다.
다음과 같이 PyMC의 내부함수를 사용하여 확률변수를 만든다(그러나 stochastic 변수는 아니
다). rdiscrete_uniform 함수는 이산균등분포에서 랜덤한 결과를 만들 것이다(numpy.random.
randint와 비슷하다).
057
베이지안_11.indd 57 2017-11-17 오전 11:07:25