본문 바로가기
Machine learning/Bayesian Network

Bayesian Network (베이지안 네트워크)

by ciwhiz 2012. 5. 30.
베이지안 네트워크 (베이즈 이론을 기반으로 한 확률 이론과 그래픽 이론의 결합으로 이루어진 그래픽 모델)

복잡한 시스탬을 노드와 각 노드간의 연관성을 호(Arc = Edge)로 표현
여기서 노드는 확률변수를 의미한다.

각 노드는 CPT(조건부 확률 테이블 Conditional Probabliity Table)을 가진다.

베이지안 네트워크는 싸이클이 존재 해선 안되며 방향성이 있다 (DAG = Directed Acyclic Graph)

노드A -> 노드B  = P(B|A) 라고 가능 노드A가 발생할 경우 노드B가 일어날 확률
(원인)  (결과)


바로 P(B|A)가 노드B의 CPT로 표현되어진다.


 - 추론 : 베이지안 네트워크에서 추론은 "알고있는 확률변수 를 가지고 알지 못하는 확률 값을 구하는 과정"이라고 할 수 있다.
일반적인 추론은 "원인 -> 결과" 이지만 이것은 CPT로 표현이 되어져 있고  "결과->원인"에 대해서도 추론 할 수 있다. (Bottom up resoning)
물론 바로 구할 수 는 없고 계산과 Approximation 방법등을 이용해 추론해야 한다. 이를 추론하는 몇몇 알고리즘이 존재한다.
(Variable Elimination, Dynamic Programming, Approximation Algorithms... etc)



- 학습 : 베이지안 네트워크에서의 학습의 개념은 주어진 데이터(통계자료)를 가지고 CPT를 구성하고 그래프의 Topology를 구성하는
것으로 말할 수 있다.

 

==================================================================================================

베이지안네트워크 (Bayesian Network), 믿음네트워크 (Belief Network), 인과네트워크 (Causal Network) 는 같은 의미.

Wikipedia : Bayesian Network : Bayesian network 또는 Bayesian belief network 는 변수를 표현하는 노드 (node) 와 변수들 간의 의존관계를 표현하는 호 (arc) 의 방향성 비순환 그래프 (directed acyclic graph) 이다. 노드 A 에서 노드 B 까지의 호가 있다면 A 는 B 의 parent 라고 부른다. 노드가 값이 주어져 있다면 evidence node 라고 부른다. 하나의 노드는 측정값, 인수, 숨겨진 (latent) 변수, 가설 등의 어떤 종류의 변수일 수도 있다. 노드는 임의의 변수를 표현하는데 제약이 없다 ; 이것이 Bayesian network 에 대해서 "Bayesian" 이라는 것이다 (Nodes are not restricted to representing random variables; this is what is "Bayesian" about a Bayesian network).

Bayesian network 은 그래프 (Graph) 상에 노드에 의해 표현되는 모든 변수에 대한 joint distribution 의 표현이다. 변수를 X(1), ..., X(n),  parents(A) 는 노드 A 의 parents 라고 하자. 이때 X(n) 를 통한 X(1) 의 joint distribution 은, i  값이 1 부터 n 까지일 때, 확률분포  p(X(i) | parents(X(i))) 의 곱으로서 표현된다. 만일 X 가 parents 를 갖지 않을 경우는 그것의 확률분포는 unconditional 이라고 하며, parents 가 있을 경우는 conditional 이라고 한다.

변수들간의 의존 (dependency) 에 대한 의문들은 그래프만 연구하면 해결될 수 있다. d-separation 라는 그래프 표기는 조건부 독립 (Conditional Independent) 의 표기와 동등한 것이라고 할 수 있다 : 만일 노드 X 와 Y 가 d-separated 되어 있다면 (명확하게 주어진 evidence node 에 대해), 변수 X 와 Y 는 주어진 evidence variable 에 대해 독립적 (independent) 이다.

수치 계산을 하기위해서는, parents 에 대한 조건을 위해 각 노드 X 의 확률분포를 명확히 할 필요가 있다. 주어진 parents에서 X 의 분포는 어떤 형태도 가질 수 있다. 그러나 계산을 쉽게 하기위해서 discrete 또는 Gaussian distributions 으로 보통 작업한다.

추론의 목적은 일반적으로 변수들의 부분집합의 조건분포, 다른 부분집합에 대해 알려진 값 (evidence) 에 대한 조건분포를 찾는것이며, 그럼으로써 다른 변수와 통합하는 것이다. 따라서 Bayesian network 은 더 복잡한 문제를 해결하기 위해 베이즈정리를 자동적으로 확장하는 메카니즘이라고 할 수 있다.

Bayesian network 는 gene regulatory networks, medicine, engineering, text analysis, image processing, decision support systems 에서 지식을 모델링 하는데 사용된다.

베이즈확률 (Bayesian Probability)   나이브 베이즈 분류 (Naive Bayesian Classification)   베이즈추론 (Bayesian Inference)   베이즈 정리 (Bayes' Theorem)

참고

  • Kevin Murphy. An introduction to graphical models. 2001. http://www.ai.mit.edu/~murphyk/Papers/intro_gm.pdf
  • Judea Pearl, Stuart Russell. Bayesian Networks. UCLA Cognitive Systems Laboratory, Technical Report (R-277), November 2000.
  • In M. A. Arbib (Ed.), Handbook of Brain Theory and Neural Networks, pp. 157–160, Cambridge, MA: MIT Press, 2003.
  • Enrique Castillo, José Manuel Gutiérrez, and Ali S. Hadi. Expert Systems and Probabilistic Network Models. Springer-Verlag, New York, 1997.
  • Judea Pearl. Fusion, propagation, and structuring in belief networks. Artificial Intelligence 29 (3): 241–288, 1986.

베이지안 네트워크   베이지안 네트워크를 이용한 학습과 행동  : Nils J.Nilsson : 베이즈 정리 (Bayes' Theorem) 에서의 조건부 독립 (Conditional Independent) 은 베이지안 네트워크 또는 믿음 네트워크 (belief network) 라고 하는 구조로 표현될 수 있다. 이 구조는 확률 추론을 하는 데 매우 유용하다. 조건부 독립을 이러한 구조로 표현하면 확률 추론에 필요한 계산을 경제적으로 할 수 있다. ..... 노드를 연결하는 아크를 직접적인 인과 관계를 나타내는 것으로 생각할 수 있기 때문에 때로는 Bayesian Network 를 인과 네트워크 (causal network) 라고 부르기도 한다 ....

Learning with Bayesian Network : David Heckerman