베이지안 네트워크 (Bayesian Network) : 바이너리 변수가 5개이면 총 32가지 경우의수가있음. 변수가 30개면 10억가지경우임. 따라서 조건부확률을 이용해서 경우의수를 줄일 수 있음. /이때 체인 포트 콜리더 세가지 유형만이존재함. 그래서 전체조인트확률을 여러조건부확률의곱으로 쪼갤수있음-디세퍼레이션 즉, 32가지경우의확률을 다구할필요없이 22가지경우에 대한 확률만 구하면됨. 즉 모든경우에대한조인트확률을 구하는게 문제를 푸는것임.마코피안팩토라이제이션을통해 디세퍼레이션을함. 인과관계를 정하지않는 엠알에프는 똑같이 마코피안펙토라이제이션인데 인과성의방향을지정하지않아서 학습이더쉬움

디세퍼레이트 - 다이렉트 세퍼릿 즉 따라라면 막힌다. 두변수간에 조건부독립을 알아내는걸말함

체인과 포크는 똑같은방식으로 해석가능.
두 변수가 연결될수있는 길목 중간의 변수하나가 고정=기븐, 이면 두변수는독립임.
두변수간의 가능한 길목이 전부 기븐이어야함.

콜라이더는 역방향이 기븐으로 주어지지않고 위쪽만 기븐이어야 독립임.
역방향이주어지면 확률에영향을미치나봄


역방향 즉 디센던트가 주어지면 독립인 녀석들의 길이 열림. 즉 디펜던시가 생김

학률분포란 그냥 연속확률변수의 확률을 히스토그램처럼 함수로그린것
확률변수가 가질수있는 각경우의 확률


베이지안넷은 사람이 직접모델링을 한다음 각 확률을 지정해서 추론이가능. 또는 각확률을 데이터기반으로 정할수있음. 또는 모델을 데이터기반으로 정힐수있음.

그다음 주어진상황에서의 추론이가능
두변수간의 인과관계를 알수도있음
코릴레이션 즉 상관관계는 알아내기쉬운데 코잘리티 즉 인과관계를 알아내는건매우어려움.
날이덥다. 아이스크림이잘팔린다. 싸움이많아진다. 셋다상관관계는있으나 화살표의 방향을 알아내려면 매우어려움. 싸워서 아이스크림을많이산다?! ㄴㄴ임 공통된원인에서 인과가와야함

메인 교재: 어 튜토리얼 온 러닝 위드 베이지안네트워크 바이 헤커맨
실험 툴:genie
-

인공지능은 룰베이스랑 머신러닝 두가지가있음
룰베이스=전문가시스템,널리지엔리즈닝

러닝이란 컴터 스스로 룰을 알아내는것

디비구조도 뭔가 러닝형식으로바뀌어야할듯..



-
베이지안 네트워크의 러닝은 구조를 학습하는 건 방법이 있긴있지만 잘 러닝이 안됨. 그래서 보통 모델을 사람이 정하면 그 변수의 확률분포를 데이터 카운트기반으로 학습함

-

3개의 노드로 이룰수있는구조는
테일투테일-포크-산모양
헤드투테일- 체인- 직선모양
--이 두개는 가운데가 기븐이어야 양쪽이독립
헤드투헤드-콜리더 - 역 산모양
--이건 가운데가 기븐이 아니어야 양쪽이독립

이런방식의 확률전달을 빌리프 프로퍼게이션이라함. 메시지패싱이라고도함. 동의어

메스즈패싱중
이그젝트 인퍼런스
섬프로덕트/맥스프로덕트/정션트리 알고리즘

어프록시메이트 인퍼런스=실제문제용은 분포가 복잡해서 근사를해야햄
루피 빌리프프로퍼게이션.몬테칼로메세드, 베리에이셔널 메서드

몬테칼로메서드는 다음두가지
시퀀셜 몬테칼로/마코프체인 몬테칼로


디 세페레이션 : 두노드가 독립이려면 두노드로 연결되는 길이 위의 세가지 경우에 전부 막혀있여함. 그러면 서로독립이다.

마코프블랭킷은 이 3가지를 다막아서 즉,기븐으로줘서 가운데있는 변수가 나머지모든변수와 독립이되는 케이스

베이지안네트워크는 각변수에 확률분포를 가정함. 이항이면 베르누이,바이노미얼분포 다항이면 드리슐레분포

-콘저게이트 프라이어
확률분포가 베르누이 또는 이항분포이면 프라이어로 베타분포를 주어야 포스테리어가 같은모양을 유지함.
즉, b 시리즈는 베타분포가 콘저게이트

위의예는 이산 확률변수들임

연속확률변수이면 컨저게이트가 정규분포*정규분포, 스튜던드 티분포

---
이거강의자료를올려놔야할듯.상우형꺼도같이

컨저게이트=켤레

-
러닝은 파라미터러닝/스트럭쳐러닝 두가지가있음

스트럭쳐러닝이 먼저돼야 파라미터러닝이 가능

베이지안네트워크에서 스트럭쳐는 익스포넨셜의 익스포넨셜 개수가있음. 슈퍼익스포넨셜

구조에 스코어를 매기는 방식 / 비슷한구조끼리 머어케한다고??

-프리퀀티스트어프로치
파라미터러닝은 각변수의 모든 경우-기븐을고려 에대한 조건부확률표를 채우면끝남.
걍 관측한데이터를 카운트해서 채움. 렐러티브 프리퀀서라함.
이방법은 라이클리후드관점에서 매우정확하고엄밀한방법임

-베이지안어프로치
확률분포를 써서러닝하려면 표를보고 이항분포나 드리슐레분포를 프라이어로도입
렐러티브프리퀀시,사전지식을 둘다고려

즉 예를들어 이항분포라면 동전은 반반씩나올거라는 지식을고려해서
슈도카운트를 추가해서 레귤러라이즈 효과를 줌.

아 그래서 레귤러라이즈가 베이지안어프로치와 동일하구나..

베타분포는 딱 a b계수에따라 좌우로 모양이 확쏠리는게 이항문제에 적합해보임

프라이어는 사람이정해주거나 걍 유니폼으로 줌. 프라이어도 데이터로 학습하기도함

이게 다항이어도그냥 각각 이항씩 계산해서 넣어도 된다고함.90년대중반에 증명됨
렐레티브카운트의 분자에+a 변수해서 계산

테이블이 중간에비어있으면 이엠이나 깁스샘플링으로 먼저채운다음 한다고함.

프마이어를 다르게해석하면 스무딩임. 주사위를 6번던졌는데 6이 한번도안나옴. 그렇다고 0이라보면안됨. 그래서 유니폼하게 확률을 조금씩 다 주어서 하는게 라플라스 스무딩

나이브 베이즈는 독립이매우많다고 가정? 전부독립이라가정?


-
베이지안네트워크의 다른이름은 빌리프네트워크임. DBN. 신경망으로해석

-
AI에는 러닝/리즈닝/플래닝/전문가
리즈닝:인퍼런스
-
베이지안네트워크의 사용예
미싱벨류 채우기
코절리티 찾기
코절리티+확률의미해석
오버피팅을 피하는 좋은방법
-

15.Prior probability
   Prior확률이란, 파라미터의 확률 분포를 의미한다. 데이터 x는 파라미터 즉, 모델을 통해 나타내어 지는데 이 때 파라미터에사전 지식을 반영한 것이 prior이다.
16.Likelihood
  Likelihood란, P(x|θ) 로데이터 x를 파라미터 θ를 통하여 나타내는 걸 의미한다. 이값은 파라미터 즉 모델이 예측한 데이터 x의 각 확률을 전부 곱하여 구한다. 감독학습에서의 Likelihood 는 P(y|x; θ) 이며, 이는모델에 x라는 input을 넣었을 때 예측 되는 y 확률들을 전부 곱한 값을 의미한다.





- Structure Learning : 베이지안 네트워크에서 각 변수들간의 조건부 확률을 모델링하는 구조를 말한다. Naive Bayes는 이러한 베이지안 네트워크에서 오직 label 변수하나가 given으로써 나머지를 전부 설명하는 매우 간단한 구조이다. 즉 나이브 베이즈도 일종의 구조학습이라고 할 수 있다.

- Estimator 란 :베이지안 네트워크의 구조가 결정되고나면 각 변수들의 확률테이블을 채워야 하는데 그것을 채우는 알고리즘을 의미한다.

- 베이지안 네트워크에서 확률 테이블의 합이 1이 아닌 이유
 한가지 중요한 점은 이 확률테이블을 세로로 다 더하면 1이 되어야하지 않는가? 라는 잘못된 생각이다. 확률테이블은 여러가지 조건의 조합에서 해당 변수가 true가 되는 확률을 의미한다. 즉 true인 확률들만이 확률테이블에 기록되므로 세로로의 합은 의미가 없다. 반대로 가로로(생략되어 있지만), false일 확률과 true일 확률의 합이 1인 것이다. 즉 estimator를 통해 결정된 획률은 true들의 확률이며, false는 당연히 true가 결정되는 순간 바로 정해지므로 표에 적지 않는것이다.



3-bayesian_networks.pdf

이 pdf의 64page를 보면 smoothing이라는 것이 나온다. 이 때 smoothing이란 prior를 적용하여 확률들의 초기값을 정해준 것을 의미한다. Multinomial인 경우(변수가 가질 수 있는 값이 3가지 이상), dirichlet 분포를 prior로 적용한다. 이것은 아주 쉽게 확률을 계산하는 식의 분자 분모에 일정한 수 '알파'를 더해서 초기값을 지정해주는 방식으로 구현된다.



Bayesian_Networks.pdf


problem.pptx

Bayesian_Networks.ppt




'연구 > Machine Learning' 카테고리의 다른 글

머신러닝의 응용사례  (0) 2015.03.24
Practical Theano Tutorial  (0) 2015.03.11
Bayesian Network  (1) 2015.03.10
Ada boost  (1) 2014.12.16
Kernel Density Estimation, Gaussian Mixture Model  (0) 2014.10.30
Bayes Error  (0) 2014.10.27
by 곽동현 이스텔리앙 2015.03.10 17:36
  • 송영숙 2015.04.07 11:09 ADDR EDIT/DEL REPLY

    깔끔한 자료 정리 감사합니다 잘 읽었습니다 ~~