🖇️ YOUTUBE
🗒️ MATERIAL
CS 188: Introduction to Artificial Intelligence, Fall 2018
🗓️ 2022-02-16
강화 학습의 시뮬레이션 반복: 실제 값과 기댓값 사이의 차를 줄이기 위한 학습
BN의 추론: 변수 제거를 통한 올바른 값 계산보다 샘플링이 더 속도가 빠름
BN을 통해 모든 확률 변수에 대한 joint distribution을 계산하는 대신 BN의 확률을 따른 이벤트를 생성한다.
샘플링 이벤트마다 각 과정에서 택한 선택지 기록
샘플링 횟수 N이 무한으로 수렴한다면 곧 실제 정확한 연산으로 얻은 BN의 확률 분포와 동일한 값을 얻을 수 있음
즉 샘플링 과정은 consistent
실제 해당 확률 분포를 모르더라도 샘플링의 결과와 개수를 통해 근삿값을 추정 가능
실제 확률 분포를 얻지 못할 수 있음 → 더 오래 실행하거나 다른 샘플링 알고리즘을 실행
샘플링 선정에서 ‘사용 가능한’ 샘플만 추출하는 알고리즘
evidence와 일치하지 않는 샘플 → rejection
조건부 확률과 consistent하지 않은 샘플 → rejection
샘플링 과정에서 rejection하는 확률 evidence probability에 따라 유지하는 샘플의 개수를 정한다.
샘플링을 rejection하는 과정이 낭비일 수 있음
evidence 변수를 고쳐서 샘플링 가능
evidence를 알고 있을 때, 일치하지 않는 샘플을 사용하는 것은 의미가 없다.
evidence가 downstream으로 연결된 변수에만 영향을 미치기 때문에 upstream 방향으로는 연결하지 못한다. 즉 적용할 수 있는 샘플 크기는 작다.
모든 변수를 샘플링할 때마다 evidence를 고려해야 함
BN을 walk하지 않는다.
모든 변수를 인스턴스화한다.
evidence를 고정하고, consistent한 변수를 샘플링해 선택한다.
모든 변수에 값을 할당한 네트워크가 있다고 가정할 때 GS의 각 샘플에는 상관관계가 존재한다.
S를 가진 CPT만 남기고 나머지는 모두 사라진다(cancel out).
확인 중인 변수를 다시 샘플링한 CPT만 확인한 뒤 join한다.
MCMC(Markov chain Monte Carlo)를 적용한 특별한 경우