랜덤 포레스트가 MNIST의 2.8 % 테스트 오류보다 훨씬 더 나을 수 있습니까?


10

나는 MNIST, CIFAR, STL-10 등에 Random Forests를 적용하는 것에 대한 문헌을 찾지 못했기 때문에 순열 불변의 MNIST로 직접 시도 할 것이라고 생각했습니다 .

에서 R , 나는 시도했다 :

randomForest(train$x, factor(train$y), test$x, factor(test$y), ntree=500)

2 시간 동안 실행되었으며 2.8 % 테스트 오류가 발생했습니다.

나는 또한 시도 scikit가 배울 와 함께,

RandomForestClassifier(n_estimators=2000,
                       max_features="auto", 
                       max_depth=None)

70 분 후 2.9 %의 테스트 오류가 발생했지만 n_estimators = 200 대신 7 분 후에 2.8 %의 테스트 오류가 발생했습니다.

OpenCV를 사용하여 시도했습니다.

rf.train(images.reshape(-1, 28**2), 
         cv2.CV_ROW_SAMPLE, 
         labels.astype('int'))

6.5 분 동안 실행되었으며 rf예측에 사용 하면 테스트 오류가 15 %가되었습니다. 랜덤 포레스트에 대한 파이썬 바인딩이 params적어도 버전 2.3.1에서 인수 를 무시하는 것처럼 보이기 때문에 얼마나 많은 나무를 훈련했는지 알 수 없습니다 . 교체 때문에, 내 의심 - 나는 또한 분류 문제를 해결하려는 것이 아니라 회귀보다 OpenCV의을 명확하게하는 방법을 알아낼 수 astype('int')로하면 astype('float32')동일한 결과를 제공합니다.

에서 신경망 의에 대한 순열 불변 훈련은 아마 하나 개의 CPU에 2 시간 이상이 걸릴 것이지만 MNIST 벤치 마크, 예술의 상태는 0.8 % 테스트 오류입니다.

랜덤 포레스트를 사용하는 MNIST에서 2.8 % 테스트 오류보다 훨씬 더 잘 수행 할 수 있습니까? 일반적인 합의는 랜덤 포레스트가 최소한 커널 SVM만큼 우수하다는 것이며 1.4 % 테스트 오류를 ​​얻을 수 있다고 생각했습니다.


5
임의의 포리스트는 한 번에 1 개의 변수 (즉, pixel)를 결정합니다. 따라서 이미지 처리에 좋지 않습니다. 보다 의미있는 결정 변수를 개발하기 위해 일종의 전처리 (예 : PCA 등)를 사용하는 것이
좋습니다.

정확하게 seanv507가 말한 것. OpenCV에는 기능 추출을위한 많은 기능이있어 임의 포리스트에서 사용할 유용한 설명 변수를 감지 할 수 있습니다.
JEquihua

3
나는 일반적인 합의는 랜덤 포레스트가 최소한 커널 SVM만큼 좋은 것이라고 생각했다 . 그러한 합의는 없습니다.
Marc Claesen

답변:


15

랜덤 포레스트를 사용하는 MNIST에서 2.8 % 테스트 오류보다 훨씬 더 잘 수행 할 수 있습니까?

아마 요 그러나 이것이 기본적으로 제공되는 것과 동일한 기능을 사용한다는 의미는 아닙니다. 의사 결정 트리는 일반적으로 한 번에 하나의 피처 만 분할하므로 이와 같은 높은 차원의 문제에서는 제대로 작동하지 않습니다. Random Forest는 의사 결정 트리의 유용성을 확장하지만 여전히 같은 문제가 있습니다. RF를 사용하여 2.8 %를 초과하려면 일부 기능 사전 처리를 수행하고 기능을보다 유용한 하위 세트로 변환해야합니다.

신경망 및 커널 SVM은 암시 적으로 일부 기능 변환 / 엔지니어링을 수행합니다. 따라서 어떤 의미에서 랜덤 포레스트는 추가 작업 없이도 아주 가까워 졌다는 점이 인상적입니다 (실제로 RF가 인기를 얻은 이유는 "충분히 좋은"결과를 얻는 것이 어리석은 일이었습니다).

나는 일반적인 합의는 랜덤 포레스트가 최소한 커널 SVM만큼 좋다는 것입니다.

그러한 합의는 없습니다. 정확도 측면에서 비슷한 결과가 종종 있지만 강점 / 약점이 다른 알고리즘은 매우 다릅니다. 많은 문제에서 정확도는 비슷하지만, 다른 SVM은 좋은 마진으로, 일부 RF는 좋은 마진으로 승리합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.