@Soren H. Welling의 답변에 추가하십시오.
1. 무작위 산림에 대한 훈련 오류 척도로 OOB 훈련 오류를보고하는 것이 일반적으로 허용됩니까?
훈련 된 모델의 OOB 오류는 훈련 오류와 다릅니다. 그러나 예측 정확도의 척도 역할을 할 수 있습니다.
2. 전통적인 훈련 오류 척도가 인위적으로 낮다는 것이 사실입니까?
기본 설정을 사용하여 분류 문제를 실행하는 경우에 해당됩니다. 정확한 프로세스는 Andy Liaw 의 포럼 게시물에 설명되어 있습니다 .randomForest
있으며 R 패키지를 다음과 같이 .
대부분 훈련 세트의 성능은 의미가 없습니다. (이는 대부분의 알고리즘, 특히 RF의 경우에 해당합니다.) 기본 (및 권장) 설정에서 트리는 최대 크기로 커져서 대부분의 터미널 노드에 데이터 포인트가 하나만있을 가능성이 높습니다. 터미널 노드에서의 예측은 노드의 대다수 클래스 또는 고독한 데이터 포인트에 의해 결정된다. 항상 그런 경우를 가정 해 봅시다. 즉, 모든 트리에서 모든 터미널 노드에는 하나의 데이터 포인트 만 있습니다. 특정 데이터 포인트는 포리스트에있는 나무의 약 64 %에서 "가방 내"가되며 해당 트리는 모두 해당 데이터 포인트에 대한 정확한 예측을 갖습니다. 데이터 포인트가 부족한 모든 나무가 모든 나무의 과반수 투표로 잘못된 예측을하더라도, 당신은 여전히 결국 정답을 얻습니다. 따라서 기본적으로 RF에 대해 설정된 열차에 대한 완벽한 예측은 "설계 상"입니다.
이 동작을 피하기 위해 nodesize > 1
(나무가 최대 크기로 자라지 않도록) 설정하거나 sampsize < 0.5N
( 또는 나무의 50 % 미만이 주어진 점을 포함 할 수 있도록) 설정할 수 있습니다.( x나는, y나는).
3. 기존의 훈련 오차 측정 값이 인위적으로 낮은 경우 RF가 과적 합되는지 확인하기 위해 어떤 두 가지 측정 값을 비교할 수 있습니까?
nodesize = 1
and sampsize > 0.5
를 사용하여 RF를 실행하면 RF 의 훈련 오류는 항상 0에 가까워집니다.이 경우 모델이 과적 합인지 여부를 확인하는 유일한 방법은 일부 데이터를 독립적 인 유효성 검사 세트로 유지하는 것입니다. 그런 다음 10-CV 테스트 오류 (또는 OOB 테스트 오류)를 독립 검증 세트의 오류와 비교할 수 있습니다. 10-CV 테스트 오류가 독립 검증 세트의 오류보다 훨씬 낮은 경우 모델이 과적 합 될 수 있습니다.