현재 이미지 분할 문제에 대해 Viterbi 교육 을 사용하고 있습니다. Viterbi 교육 대신 Baum-Welch 알고리즘을 사용하여 어떤 장단점이 있는지 알고 싶었습니다.
현재 이미지 분할 문제에 대해 Viterbi 교육 을 사용하고 있습니다. Viterbi 교육 대신 Baum-Welch 알고리즘을 사용하여 어떤 장단점이 있는지 알고 싶었습니다.
답변:
Baum-Welch 알고리즘과 Viterbi 알고리즘은 다른 것을 계산합니다.
모델의 숨겨진 부분에 대한 전이 확률과 모델의 가시 출력에 대한 방출 확률을 알고있는 경우 Viterbi 알고리즘은 출력과 모델 사양에 따라 가장 완전한 숨겨진 상태 시퀀스를 제공합니다.
Baum-Welch 알고리즘은 모델의 관측 된 상태 (및 일반적으로 숨겨진 상태 수의 상한)를 고려할 때 가장 가능성이 높은 숨겨진 전이 확률뿐만 아니라 가장 가능성이 높은 배출 확률 세트를 제공합니다. 또한 숨겨진 상태에서 "지점"최고 가능성 포인트를 얻습니다. 이는 전체적으로 가장 가능성이 높은 단일 숨겨진 시퀀스와 약간 다릅니다.
모델을 알고 잠복 상태를 원한다면 Baum-Welch 알고리즘을 사용할 이유가 없습니다. 모델을 모르면 Viterbi 알고리즘을 사용할 수 없습니다.
추가 편집 : Peter Smit의 의견 참조; 명명법에 약간의 겹침 / 모호함이 있습니다. 몇 가지 파고는 Luis Javier Rodrıguez와 Ines Torres가 "패턴 인식 및 이미지 분석"(ISBN 978-3-540-40217-6, pp 845-857)에서 속도 대 정확성 트레이드 오프를 논의하는 장으로 이끌었습니다. 두 알고리즘.
간단히 말해서, Baum-Welch 알고리즘은 본질적으로 HMM에 적용되는 EM (Expectation-Maximization) 알고리즘입니다. 엄격한 EM 유형 알고리즘으로 최소한 로컬 최대 값까지 수렴 할 수 있으므로 단봉 문제에 대해서는 MLE을 찾으십시오. 그러나 각 단계마다 두 번의 데이터 통과가 필요하며 데이터 길이와 교육 샘플 수의 복잡성이 매우 커집니다. 그러나 숨겨진 매개 변수에 대한 전체 조건부 가능성으로 끝납니다.
Viterbi 트레이닝 알고리즘 ( "Viterbi 알고리즘"과 반대)은 MLE을 근사하여 정확도를 높이면서 속도를 향상시킵니다. 데이터를 세그먼트 화 한 다음 Viterbi 알고리즘을 적용하여 세그먼트에서 가장 가능성이 높은 상태 시퀀스를 얻은 다음 가장 가능성이 높은 상태 시퀀스를 사용하여 숨겨진 매개 변수를 다시 추정합니다. 이는 Baum-Welch 알고리즘과 달리 숨겨진 매개 변수의 전체 조건부 가능성을 제공하지 않으므로 계산 시간을 대폭 (장에서 1 ~ 2 배 정도) 절약하면서 정확도를 떨어 뜨립니다.
'뒤로'는 '보이지 않는 것'을 세고 싶을 때 사용됩니다. 예를 들어 EM을 사용하여 감독되지 않은 데이터를 통해 모델을 개선 할 때. Petrov의 논문이 하나의 예라고 생각합니다. 내가 생각하는 기술에서는 먼저 상당히 거친 주석이 달린 주석이 달린 데이터로 모델을 훈련시킵니다 (예 : 'Verb'에 대한 태그). 그런 다음 해당 상태에 대한 확률 질량을 약간 다른 두 가지 수량으로 임의로 분할하고, 두 상태 사이에 질량을 재분배하여 가능성을 최대화하기 위해 앞으로 뒤로 이동합니다.