보통 정보의 부족으로 인해 어떠한 사건에 대해서 명백한 참, 거짓을 가리기가 어려운 경우, 이러한 불확실성을 반영하는 논리 체계를 만들 필요가 있다. 이럴 때 활용되는 것이 확률이다.
확률이라고 하는 것은 0부터 1사이의 값을 가지는 실수값으로, 일반적으로 특정 한 사건에 부여되는 값이다.보다 구체적으로, 가능한 사건의 집합 안의 특정 사건 에는 하나의 확률 가 부여되며, 내의 모든 사건의 확률을 전부 합산하면 1이 된다.
일반적으로 어떤 사건들에 대한 정보가 전혀 없을 때는, 모든 근본적인 사건 요인들이 발현될 확률은 동일하다고 본다. 이럴 경우, 여러 요인들을 종합한 사건들이 일어날 확률은 그러한 사건의 기반이 되는 요인들의 조합 경우의 수에 의존적일 수 있다.
조건부 확률은 특정 정보가 주어졌을 때, 특정 사건이 일어날 확률을 말한다. 일반적으로 세상은 특정 사건이 일어나면 다른 사건이 일어날 확률에 대해서 어느 정도 정보를 제공하기 때문에, 조건부 확률은 주어진 정보를 효율적으로 활용하여 확률적 논리를 펼치는데 도움을 준다. 대표적인 예시로 특정 검사 결과를 받은 환자가 특정 병에 걸렸을 확률 등이 있다.
A 사건이 발생했을 때 B 사건이 발생할 조건부 확률은 아래와 같이 계산한다.
위 공식을 조금 조정하면 아래와 같다.
만약 두 사건이 전혀 관계가 없다면, 이므로 두 사건이 동시에 일어날 확률은 두 확률의 곱이다.
위의 사건이라고 표현한 경우 중, 사건에 관심 대상인 수나 값이 부여되는 경우 이러한 값을 확률변수라고 한다. 예를 들면 날씨, 주가, 인스타 팔로우 여부 등이 될 수 있다. 이러한 확률변수들은 각 확률변수의 실현가능값과 그 값에 대한 확률값이 대응되는 확률분포를 가지고 있다.
베이즈 정리는 아래의 공식을 말한다.
즉, 베이즈 정리의 요점은 충분한 정보만 있다면, 조건부 확률의 방향을 바꿀 수 있다는 점이다. 테스트 양성 결과에 따른 환자의 병 확진 판정을 이전에 환자의 병 확진 판정 사례 중 테스트 양성 사례를 통해 추론하는 등의 방식을 취할 수 있는 것이다.
결합확률은 확률변수의 가능한 값들의 전체적 조합을 나타내었을 때, 각 조합에 해당하는 확률 값이다. 여기서 흥미로운 점은 특정 두 사건의 조건부 확률은 두 사건의 결합확률에 비례한다는 것이다.
베이지안 네트워크는 확률변수 간 의존성(dependency)를 저장하는 데이터 구조로, 방향성이 있는 그래프의 형태를 띈다. 각 노드는 확률변수를 의미하며, 노드에는 자신의 부모 확률변수 값에 대한 자신의 확률변수의 조건부 확률 분포 또한 저장되어 있다.
Query : 확률분포 계산을 원하는 변수
Evidence Variables : 사건 e에서 관측된 확률변수
Hidden Variables : 위 둘 다 아닌 경우
Goal:
숨겨진 변수들에 대해서 전부 루프
확률분포를 모분포로 추정하여 샘플링한 후, 그 샘플에서 주어진 사건 e를 만족하는 샘플만 채택하여 쿼리 확률변수의 분포를 추정하는 방법.
문제점은 주어진 사건 e가 일어날 확률이 너무 낮을 경우 너무 많은 샘플이 리젝됨.
주어진 사건이 해당 샘플에서 일어날 확률을 기반으로 가중하여 쿼리 확률변수의 분포를 추정하는 방법.
예를 들어, 조건이 "지각한다"이고 해당 샘플이 "늦잠잤다", "비가 온다"라는 부모 노드를 각각 뽑았다면, 그 두 조건이 만족되었을 때 지각할 확률만큼 해당 샘플을 가중하여 쿼리인 "학점"의 확률분포를 계산할 수 있다.
현재 상태는 과거 일부의 상태에만 영향을 받는다는 가정.
마크로프 가정을 만족하는 변수들의 시간에 따른 변화과정
상태 가 로 바꾸는 결합 확률 모형.
탐사하는 로봇처럼, AI 입장에선 알 수 없는 숨겨진 상태가 있고, 다만 이는 observation으로부터 추정될 수 있다.
HMM은 observation과 hidden state과의 관계를 보여주는 sensor model(결합확률 모형)과 이전의 transition model를 가진다.
sensor model assumption은 evidence variable은 hidden state만이 영향을 미친다는 가정이다. 이 가정을 이용하면 HMM의 모형을 쉽게 활용할 수 있다.
일반적인 HMM의 목적은 filtering(현재), prediction(미래), smoothing(과거) 목적으로 사용될 수 있으며, 이들은 현재, 과거, 미래에 대한 hidden state의 확률분포를 추정하는 과정이다. 가지고 있는 observation를 통해 가장 그럴듯한 상태들을 추정하는 방법 등으로도 쓸 수 있는데, 이는 대표적으로 음성인식 등이 있겠다.