msm 패키지를 사용하여 8 개 상태의 다중 상태 마킹 체인을 모델링하려고했습니다. 내 데이터 세트에는 전체적으로 약 11,000 개의 주제가 포함되어 있으며, 전체적으로 100,000 건이 약간 넘습니다.R msm 패키지 동결
나는과 같이, 데이터의 머리를 복용, 데이터의 여러 하위 집합에 MSM 기능을 실행하려고 :
mm2myTrajectoryMSM<-msm(role ~ year, subject=authId, data=head(mm2myMarkovRoles[,1:3,with=FALSE],7000), qmatrix=trajectory.qmatrix,death=1,control=list(trace=1,REPORT=1))
지금까지 내가 과거 ~ 7000 선을 얻을 수 없었다. 보고서 출력을 살펴보면 iter 값이 음수 값을 출력 할 때 함수가 멈추는 것으로 나타났습니다. 예를 들어, 여기에 데이터
initial value 19017.328402
iter 2 value 17808.111677
iter 3 value 17707.483305
iter 4 value -346782.085429 (freeze)
의 첫 번째 10K 행이 실행되지만 첫 번째 20K 행이 작동 50,000 행
initial value 92846.642840
iter 2 value 88466.007605
iter 3 value 88310.215979
iter 4 value 88276.433502
iter 5 value 88247.381022
iter 6 value -983685.709474
와
initial value 38101.266287
iter 2 value 35871.849676
iter 3 value 35796.410415
iter 4 value -721867.559664
iter 4 value -721867.559664
final value -721867.559664
converged
하지만 그러나 그것은 60010,80007 (전과목의 전체 기록을 캡쳐하고 있습니다)에서 작동하며, 그 후에는 시스템이 정지되거나 분석이 매우 오랜 시간이 걸리는 지 여부를 알 수 없습니다. 작업에 할당 된 1CPU는 최대 값이지만 RAM 리소스 한계 (서버의 96GB 중 1 % 인 <)가 거의 없습니다.
두 가지 질문이 있습니다. - 데이터가 특정 하위 집합에 걸려있는 이유는 무엇입니까? 2)이 함수의 런타임을 어떻게 예측할 수 있습니까? 지난 번에 내가 뛰게하고, 2 일 이상 갔다. 이상하게도, 많은 실행에 대한 계산 시간은 선형 적으로 조정 된 것처럼 보였지만 일단 임계 값을 초과하면 확장됩니다 ...?
흥미롭게도 Amazon EC2 서버에서 이와 동일한 프로세스를 실행했으며 전체 데이터 세트에서 1 분 이내에 응답을 받았습니다. 왜 이런 일이 일어나고 있는지 잘 모르겠습니다. –