R (초급)에서 손실 혐오 모델을 작업 중이며 3 개의 열이있는 데이터 집합에서 일부 매개 변수를 계산하려고합니다. (손실/이득 값 (연속 또는 0 또는 1로 코드화 된 결정이있는 열) (바이너리) dropbox.com/s/fpw3obrqcx8ld1q/GrandAverage.RData?dl=0 코드 부분이이 경우 사용해야하는 경우 I는 아래 주어진 사용하고 : R에서 MLE 오류 : 'vmmin'의 유한 값이 유한 값이 아닙니다.
set <- GrandAverage[, 5:7];
Beh.Parameters <- function (lambda, alpha, temp) {
u = 0.5 * set$Gain^alpha + 0.5 * lambda * set$Loss^alpha
GambleProbability <- 1/(1 + exp(-temp * u))
loglike <- set$Decision*log(GambleProbability) +
(1- set$Decision)*log(1-GambleProbability)
return(-sum(loglike))
}
temp_s <- 0.1 #runif(1, 0.1, 1)
ML.estim1 <- mle(Beh.Parameters, start = list (lambda = 1, alpha = 1, temp = temp_s), nobs = length(set$Decision))
ML.estim2 <- mle(Beh.Parameters, start = list(lambda = 0.1, alpha = 0.1, temp = temp_s), nobs = length(set$Decision))
는 I는 3 개 개의 매개 변수 (람다, 알파 및 온도)를 추정하기 위해 MLE 함수를 사용하여 알파 않고 난 예컨대 이러한 출력 :
,745,151 5,
ML.estim1 호출 : MLE (minuslogl = Beh.Parameters = 목록 (람다 = 1, 온도 = temp_s)를 시작 = 길이 (세트 $ 결정) NOBS) 계수 : 람다 온도 1.298023 1.041057
나는 알파 매개 변수는 잘 작동하지만,하지 않고 그것을 실행하려고 나는 내가이 두 가지 오류를받은 포함 할 때 :
Optim을 (시작, F, 방법 = 방법, 헤센 오류 = TRUE, ...) :(시작, f, 메소드 = 메소드, 헤 시안 = TRUE, ...) : 'vmmin'의 값이 유한하지 않음 (첫 번째 MLE의 경우) 의 값이 아닌 유한 유한 차분 값[) MLE 두 번째에 대한
내가 미리 ... 감사 매트릭스, 특이 값 분해, BFGS 등 어떤 도움이 환영을 코딩하기 위해 노력했다.
보관 용 계정 링크가 작동하지 않습니다. – csgillespie
https://www.dropbox.com/s/fpw3obrqcx8ld1q/GrandAverage.RData?dl=0 – Oesj
내 나쁜 ... 지금은? – Oesj