2012-09-20 5 views

답변

2

숨겨진 상태의 수를 조정하려면 가능한 숨겨진 상태 수 벡터 nhs과 성능 측정치 perf() (모델이 얼마나 좋은지 평가할 수있는 오류 측정 방법)이 필요합니다. 그런 다음 각 숨겨진 상태 수에 대해 하나의 모델을 작성하고 최상의 성능을 제공하는 모델을 선택하십시오.

여기에 의사 코드 예제가 나와 있습니다.

nhs <- c(1, 2, 3, 5, 8, 11, 15) 
error <- rep(NA, length(nhs)) 
for(i in 1:length(nhs)){ 
    fit <- train.HMM(data, nhs[i]) 
    error[i] <- perf(fit) 
} 
nhs[which.min(error)] # Optimal number of hidden states 

내 생각에 성능 측정치는 모델이 새로운 보이지 않는 예제의 결과를 예측하는 데 얼마나 좋은지 알 것입니다. 숨겨진 상태의 각 숫자에 대해 cross validation을 수행하는 것이 좋습니다. 이 라인에 뭔가 : 좀 더 자세한 코드를 제공하지 않았다

... 
for(i in 1:length(nhs)){ 
    pred <- vector("list", k) 
    for(fold in 1:k){ 
     fit <- train.HMM(data[not.in.fold.k], nhs[i]) 
     pred[[fold]] <- predict(fit, data[in.fold.k]) 
    } 
    error[i] <- perf(pred) 
} 
... 

이유는 예를 혼란하지 않는 것입니다 (당신은에서 일할 수있는 재생 가능한 예제를 제공하지 않았기 때문에).

+1

데이터 세트가 얼마나 크고 잘 작동하는지에 따라 BIC는 합리적인 (계산적으로 더 가벼운) 대안 성능 측정 도구 일 수 있습니다 ... –

+0

명확한 답변을 주셔서 대단히 감사합니다. –

+0

BIC를 제안 해 주셔서 감사합니다. 그것은 매우 도움이되었습니다. –

0

재발 성 상태를 결정하는 반복 분석 결과는 초기 숨겨진 상태의 수를 근사 적으로 결정하는 정보가 될 수 있습니다.

관련 문제