2014-01-27 4 views
1

평균 제곱 오류가 발생하면 506 행의 데이터 집합이 있습니다. 평균 제곱 오류가 발생하면 평균 제곱의 평균을 계산합니다. 내가 찾은 오류들. 이것은 내가 그것을 실행할 때마다 변하고 있습니다. 예상 되나요? 그렇다면 누군가 내가 왜 그것을 실행 할 때마다 변하는 지 설명해 주시겠습니까?lm 함수를 사용하여 교차 유효성 검사를 두십시오.

내가 먼저 행을 셔플, CV 아웃 하나를 남겨하려면, DF 그런 다음 데이터 프레임

df <-df[sample.int(nrow(df)),] 

, 난 (506 개) 데이터 프레임에 dataframe을 분할하고 MSE를 (LM)과 얻을 보내 각 데이터 프레임 (이 경우 각 행)에 대해

fit <- lm(train[,lastcolumn] ~.,data = train) 
pred <- predict(fit,test) 
pred <- mean((pred - test[,lastcolumn])^2) 

그리고 나서 내가 가진 모든 MSE의 평균을 취합니다.

이 모든 것을 실행할 때마다 나는 다른 의미를 갖습니다. 예상 되나요?

+1

재현 가능한 예를 제공해주십시오. –

+0

@MatthewLundberg, 희망이 편집은 도움이 – pa1geek

+0

재현성있는 샘플 데이터를 제공합니다. 좀 더 편리하면 많은 내장 데이터 세트 ('? data' 참조) 중 하나를 사용할 수도 있습니다. –

답변

2

나가기 교차 유효성 검사는 유효성 패러다임입니다. 예측을 위해 어떤 알고리즘을 사용하고 있는지 예측해야하며 예측 알고리즘에서 매개 변수가 임의로 초기화되는지 여부를 확인해야합니다. 초기 알고리즘이 무작위로 변경되면 기본 알고리즘이 실행될 때마다 다른 결과를 설명 할 수 있습니다. 사용중인 추정기/예측 알고리즘에 대해 언급해야합니다. 예를 들어 Gaussian Mixture Model을 사용하는 경우 LOOCV에서 성능이 항상 동일하지 않은 가능한 알고리즘이 될 수있는 평균 및 공분산에 대해 다른 초기화로 분류 할 수 있습니다. 가우시안 혼합 모델 및 K 평균 알고리즘은 일반적으로 평균을 나타 내기 위해 데이터 요소 선택을 임의 화합니다. 또한 가우시안의 수를 추정하기 위해 정보 이론적 기준을 사용하면 혼합 된 가우스의 수는 다른 초기화로 바뀔 수 있습니다.