nathan_H

Bayesian network. 본문

Big Data/ML

Bayesian network.

nathan_H 2019. 4. 10. 22:02

참고 블로그 및 수업

https://darkpgmr.tistory.com/62

- 순천향대학교 정영섭 교수님 ML 수업

 

 

bayes rule

출처 - https://www.psychologyinaction.org/psychology-in-action-1/2012/10/22/bayes-rule-and-bomb-threats

 

베이지언 확률은 사후확률(posterior probability)을

사전확률(prior probability)과 likelihood를 이용해서

계산할 수 있도록 해 주는 확률 변환식이다.

 

 likelihood: p(e|H), 어떤 모델에서 해당 데이터(관측값)이 나올 확률

 

사전확률(prior probability): p(H), 관측자가 관측을 하기 전에

시스템 또는 모델에 대해 가지고 있는 선험적 확률.

예를 들어, 남여의 구성비를 나타내는 p(남자), p(여자) 등이 사전확률에 해당한다.

 

사후확률(posterior probability): p(H|e), 사건이 발생한 후(관측이 진행된 후)

그 사건이 특정 모델에서 발생했을 확률.

 

Bayes Rule 의

 

장점

 

통계적 추론을위한 원칙적이고 유연한 방법이다.

 

사전 지식 통합(상황에 따라 단점일수도 있다)

 

단점

 

계산이 필수적이다
Approximation: Variational Bayes, Belief propagation, …

 

 

naive Bayes 

나이브 베이지안에서 나이브(Naive) 는 순진하다 라는 뜻이다.

이런 수식어가 붙은 이유는 데이터셋의

모든 특징들이 동등하고 독립적이라고 가정했기 때문이다.

 

 

예제1) 

출처 - https://gomguard.tistory.com/69

 

[머신러닝] 나이브 베이즈 (Naive Bayes)

지도학습 알고리즘 지도학습 관련 알고리즘들로는 최근접 이웃 (Nearest Neighbor) 나이브 베이즈 (Naive Bayes) 의사결정 트리 (Decision Trees) 분류 규칙 학습자 (Classification Rule Learners) 선형 회귀 (L..

gomguard.tistory.com

 

Gaussian navie bayes classifier

가우시안 나이브 베이즈는

나이브 베이즈가 가진 

단점을 극복하고

분포를 통해 데이터를 분류하는 모델이다.

 

예를 들어 

학습데이터
Fish1: 10cm, 5kg, Salmon
Fish2: 20cm, 10kg, Salmon
Fish3: 50cm, 10kg, Sea bass
Fish4: 60cm, 15kg, Sea bass
테스트데이터
New fish x: 17cm, 20kg Salmon or Sea bass

 

이렇게 새로운 데이터가 p(x | class)에 속해 있지 않다면

나이브 베이즈를 사용 할 수 없다.

 

그래서 가우시안 나이브 베이즈를 통해

분포로 새로운 데이터를  분류할 수 있다.

 

Gaussian (Normal) distribution

 

 

Gaussian Naïve Bayes (GNB)Classifier

 

GNB Classifier 학습

 

GNB Classifier 적용(테스트)

 

 

GNB Classifier 학습시, 파라메터estimation 방법
Maximum Likelihood Estimates (MLE)

 

 

 

Decision boundary 예시.

 

 

 

즉, probability distribution 모양에 따라 boundary 모양이 바뀌는 것을 볼수 있다. 

 

XOR 과 같이 비선형 패턴에 대해서는어떻게 해야 될까?

 

 

Bayesian Networks

 

"확률 이론과 그래픽 이론의 결합으로 이루어진 그래픽 모델(Graphical Models)"

 

이라고 짧게 표현될 수 있다.

 

그래픽 모델의 기본적 아이디어는 복잡한 시스템을

간단한 모듈로서의 구성을 그래프적으로 표현이 가능하다는 특징이 있다.

 

그럼으로써 그 모듈이 어떻게 서로 연관성을 가지는지를

확률적 이론에 기반하여 표현이 가능하며,

하나의 모듈은 노드(Node)로써 표현이 가능하며,

모듈간의 관계는 호(Arc)로 표현된다.

 

그래픽 모델은 방향성(Directed or Undirected)이나

노드의 순환성(Cyclic or nonCyclic)에 따라서

HMM(Hidden Markow Models), FA(Factor Analysis), Kalman Filters 등 여러 가지가 있으며,

그 중 하나가 Baysian Network이다.

출처: https://ai-times.tistory.com/399 

 

 

베이지안 네트워크 (Bayes network) 를 학습하는 문제는

주어진 평가 척도에 따라 데이터의 훈련 집합 (training set) Ξ 

가장 잘 부합되는 네트워크를 구하는 것이며,

여기서 Ξ 는 모든 (또는 적어도 몇몇) 변수에 대한 값의 사례 집합이다.

 

즉 내짐작에 저 데이터는 이런 방식으로 생겨 났을 꺼야

가정을 통해 접근을 해 모델을 학습 시켜 

가장 잘 부합되는 네트워크를 찾는 것이다.

(Deep Learning에 perceptron 뉴런 구조와 비슷한 형태)

 

네트워크를 구한다는 것은 DAG (directed acyclic graph) 구조와

DAG 의 각 노드에 연관된 조건부 확률표 (conditional probability table, CPT) 를 함께 구하는 것을 의미한다. 

 

Bayesian Network: Belief network, Causal network 이라고도불림
Directed edges: direct dependence
Absence of an edge: conditional independence

 

 

 

 

위 그림을 논리적으로 접근해보자

 

위 그림 첫번째 network는

c가 아직 정해지지 않았을 경우

c가 달라지는 것에 따라

a, b가 영향을 받으므로

a, b는 독립이 아니다. 라고 접근할 수 있다

 

반대로 두번째 network는

c가 이미 주어졌으니 

a, b는 서로 무엇이든 상관없이

독립적이다.

 

예시로

c가 비가온다라고 주어졋을때

a는 비가 올때 나간다

b는 비가 올때 안나간다. 

이런식으로 독립적으로 볼 수 있다.

 

출처 - https://stats.stackexchange.com/questions/316236/conditional-probability-of-two-conditional-independent-events-in-bayesian-networ

 

 

베이지안 네트워크의 추론.
복잡성은 그래프 희박성에 반비례 하다.

 

학습 데이터로부터 계산에 필요한 확률 값들을 얻어내고, 

추후 이를 사용하여 새로운 데이터에 대한 확률 계산에 이용

 

예: 데이터로부터각확률값을얻어낸후, P(JohnCalls|B,E) 계산에 이용

 

 

 

 

Class C 와각feature 간의 임의의 edge
물론, feature 사이에도 edge 가능
Bayesian Network 의 각 노드들의 probability 완성
Frequency 기반
물론, 별도의 probability distribution 을 둘수도 있음
완성된 Bayesian Network 를 사용하여 새로운 데이터X를 ‘분류’
각class label 에대한posterior probability(사후 확률) 계산
가장 큰확 률값의 label 선택

 

 

 

'Big Data > ML' 카테고리의 다른 글

Supervised Learning - Regression, Classification  (0) 2019.04.16
Linear Regression, Classification  (0) 2019.04.12
Decision Tree  (0) 2019.04.10
MLE, MAP  (0) 2019.04.09
PCA SVD, Linear Discriminant Analysis  (0) 2019.04.08
Comments