2016-11-16 10 views
1

Accord.NET 사용 NaiveBayes 분류자를 만들었습니다. 6 개 정도의 이미지 처리 결과 집합을 기준으로 픽셀을 분류합니다. 내 이미지는 5MP이므로 50 개의 이미지로 이루어진 교육 세트는 매우 많은 교육 데이터 세트를 생성합니다.naivebayes 분류기를 점진적으로 훈련시킬 수 있습니까?

6 픽셀 당 int 배열 * 500 만 화소 * 50 이미지.

메모리에 모든 데이터를 저장하는 대신 NaiveBayes 분류자를 점진적으로 교육 할 수있는 방법이 있습니까? Learn()를 여러 번 호출하면 추가 할 때마다 이전 데이터를 매번 덮어 씁니다.

답변

0

지금 바로 Accord.NET을 사용하여 Naive Bayes 모델을 점진적으로 교육 할 수 없습니다.

그러나 Naive Bayes가 할 일은 데이터에 일부 배포본을 맞추기위한 것이므로 데이터의 크기가 매우 적기 때문에 데이터의 하위 샘플에서 모델을 익힐 수 있습니다. 한번에 모든 것보다.

이미지를로드하여 학습 세트를 작성하면 각 이미지의 픽셀을 x %로 무작위로 삭제할 수 있습니다. x의 다른 값에 대한 분류 자의 정확도를 플롯하여 모델의 메모리와 정확도 간의 최적의 균형을 찾을 수 있습니다 (힌트 : 이렇게 작은 모델과 많은 양의 교육 데이터의 경우, 데이터의 50 %를 떨어 뜨린 경우에도 차이가 있음).