2.1.2 PyMC 변수
모든 PyMC 변수는 value 속성을 가진다. 이 속성을 통해 변수의 현재(가능한 난수) 내부 값을 만든다. 만일 변수가 자식변수라면 그 값은 부모변수 값이 주어질 때 변경된다. 이전 예제의 변수를 사용하면 다음과 같다.
print(“lambda_.value =”, lambda_.value) print(“data_generator.value =”, data_generator.value) print(“data_plus_one.value =”, data_plus_one.value)
결과
lambda .value = 1.0354800596 data generator.value = 4 data plus one.value = 5
PyMC와 관련된 프로그래밍 변수로는 stochastic과 deterministic 두 가지가 있다.
• stochastic 변수는 값이 정해지지 않는 변수다. 즉, 여러분이 변수의 부모변수 값을 모두 알고 있어도 stochastic 변수의 값은 여전히 난수일 것이다. 이런 유형의 변수로는 Poisson, DiscreteUniform, Exponential 클래스의 인스턴스가 있다.
• deterministic 변수는 변수의 부모를 모두 알고 있는 경우에 랜덤하지 않은 변수다. 처음에는 혼란스러울 수도 있다. 간단히 말해 foo의 부모변수 값을 안다면 foo의 값을 정확하게 알 수 있다.