2013-12-23 4 views
0

현재 Scikit Learn과 협력 중이며 Gaussian HMM을 학습하는 동안 다음 문제에 부딪 혔습니다. Scikit-Learn Gaussian HMM 오류

File "C:\Python27\lib\site-packages\sklearn\hmm.py", line 476, in _set_startprob 
    raise ValueError('startprob must sum to 1.0') 
ValueError: startprob must sum to 1.0 

는 다음과 같은 기능을 실행하는 경우 :

model = GaussianHMM(n_components=5, covariance_type="diag", n_iter=1000, 
          means_prior=means_prior, means_weight=0.5) 

이 오류없이 약 1/10 배,하지만 9/10 번 작동 오류가 발생합니다. 구성 요소의 수를 줄이면 실수없이 작업 가능성이 높아집니다.

또한 startprob을 startprob=[0.20, 0.20, 0.20, 0.20, 0.20]으로 증가시키지 않으려 고 노력했습니다.

또한 을 사용하여 startprob이 [0.20, 0.20, 0.20, 0.20, 0.20]인지 확인했습니다.

어떤 아이디어가 문제입니까?

고맙습니다.

+0

'scikit-learn'의 개발 버전을 설치하고 문제가 해결되는지 확인할 수 있습니까? 최근 Gaussian HMM에 대한 큰 버그 수정이 아직 안정적이지 않습니다. 'easy_install pip; pip 설치 -e '[email protected] : scikit-learn/scikit-learn.git # egg = scikit-learn-0.15-git''이 트릭을 수행해야합니다. –

답변

0

동일한 문제가있었습니다. 입력 시퀀스의 수에 따라 다르다고 생각합니다. 모델을 만들기에 시퀀스가 ​​너무 적 으면이 모델이 충분히 설득력이 없기 때문에이 오류가 발생합니다. 더 많은 구성 요소를 사용하면 필요한 더 적절한 데이터를 사용할 수 있습니다. 하지만 그것은 내 가정 일뿐입니다.