Skip to content

(10.04)W09_L05 Baum Welch Algorithm

elecsoul edited this page Oct 12, 2018 · 1 revision

https://youtu.be/gchgZ2zp8uo


승관찡(2018.10.04)

  • Unsupervised Learning을 하기 위해 잘 알려진 알고리즘이 Baum-Welch Algorithm이다.

Derivation of EM Update Formula

  • Lagrange method를 사용해 Q값을 Maximization 해준다.
  • Lagrange Multiplier를 역산 하여 Nomalizing Constant를 잡아준다.
  • πab가 타임이 진행함에 따라 Update된다.

Baum Welch Algorithm

  • HMM에서 Learning Question에 대해 답한다.

성빈(2018.10.04):
HMM의 unsupervised learning을 위해 Baum-We 사용함
이전까지의 파라미터들을 러닝하기 위해서는 X,Z가 관측된 형태의
Supervised learning의 형태였지만, Z를 모르는 상황에서
Dynamic Clustering이 필요하다.
-> X만 가지고 Z와 다른 파라미터들을 알아내야 한다.
-> X를 이용해 다른 파리미터를 알아내고 그것들을 통해 Z를 알아내야한다
(EM Algorithm)
이러한 HMM의 EM을 Baum Welch Algorithm이라고 함


민규(2018.10.04):
이번 시간은 HMM의 마지막 question인 learning question에 대해 배웠다. 이것은 HMM의 unsupervised 방식으로 푸는 것이다.
이전의 evaluation이랑 decoding에서는 Z라는 latent variable을 알고 있었지만 여기서는 그마저도 모른다. 즉, Z, pi, a,b를 모두 모르고 데이터 X만을 가지고 있는 상황이다. 이 문제를 풀기 위해서 EM 알고리즘 기반의 Baum-Welch 알고리즘을 이용한다. BW 알고리즘은 EM과 거의 동일하다. 처음에 우리가 모르는 파라미터에 대해서 무작위로 선택한다. 그 다음 이 파라미터에 대해서 expectation하는 것은 Z이다. 그 이후 다시 모든 파라미터에 대해서 maximization을 수행하는 방식이다. 이에 대한 수식을 derivation하는 수식을 가르쳐주셨는데 여태껏 배웠던 방식으로 진행하면 된다. (pi는 multinomial이라는 제약조건이 있으니 lagrange를 이용하는 것 등..)


대하(2018.10.04):
이번 시간에는 HMM을 위한 optimization algorithm에 대해 알아보았다.
이는 GMM에서 배웠던 EM algorithm을 사용하였다.

고전 semi-supervised learning에서도 그렇지만 EM algorithm이 파라미터와 확률분포가 섞여있을 때,
모델의 optimization을 위한 도구로 많이 사용된다는 것을 다시한번 느끼는 시간이었다.

또한 HMM을 위한 baum welch algorithm도 알게 되었는데, 시계열 상태 및 latent variable에 transition probability가 존재하는 경우에 사용하는 알고리즘인 것 같다.
자세한건 다시 찾아봐야 할 것 같다.

드디어 대망의 마지막 챕터만을 남겨두고 있다.

마지막까지 모두 힘냈으면 좋겠다 ㅎㅎ


진구(2018.10.04)
요즘 관심이 많은 언수퍼바이즈드 + HMM에 관한 내용이었다.
pi와 a, b가 주어지지 않았다고 가정하니 전에 나왔던 메서드들을 다 끄집어내기 시작했다.
EM 과 라그랑쥬 메서드가 다시 나타났다.
주의할점은 히든마코프모델의 타임과 EM의 타임을 헷갈리면 안 된다.
익스펙테이션 스텝에서 파이와 에이, 비를 모두 만들어 냈고 맥시마이제이션을 해서 저 3개가 없어도 어느정도 될 수 있게 만들었다.
HMM에서는 다이나믹 클러스터링, 비터비 디코딩, 바움웰치 알고리즘들을 기억해야 겠다.

Clone this wiki locally