우리는 거대한 데이터베이스를 가지고 훈련 데이터 D와 기계 학습 문제에 대한 전용 테스팅 데이터 T를 제공한다고 가정 할 수 있습니다. 이 데이터는 실제 문제의 여러 측면을 다루므로 그 구조가 매우 다양합니다. 신경망, SVM, 랜덤 포레스트 등의 알고리즘을 D와 함께 정의하지 않고 마지막으로 T에 대해 생성 된 모델을 테스트 할 때 특정 성능 측정 P (혼란 행렬, mse, ..)를 얻습니다.).n 개의 모델 중 최적 수를 훈련시키기 위해 훈련 데이터를 나누기
질문 : 문제를 더 작은 하위 문제로 나누면 더 나은 성능을 얻을 수 있습니다 (예 : D를 몇 개의 별개의 트레이닝 세트 D1, D2, D3 ...에 클러스터링하여 어떻게 최적의 클러스터를 찾을 수 있습니까? (클러스터의 수, 무게 중심, ...)
무차별적인 방식으로 나는 kNN 클러스터링을 클러스터 데이터의 무작위 수와 함께 사용하여 훈련 데이터 D1, D2로 유도하려고합니다. Dc. 이제 C 모델을 교육하고 T1, T2, ..., Tc 훈련 세트에 대해 테스트 할 것입니다. 여기서 동일한 kNN 클러스터링이 T를 C 테스트 세트 T1, .., Tc로 분할하는 데 사용되었습니다.
평균적인 성능 향상 (P1, P2, ..., Pc)을 제공하는 조합이 내가 원하는 것입니다.
내가 짐작하는 것보다 더 복잡한 방법을 알고 있는지 궁금한가요?
미리 감사드립니다.
그건별로 의미가 없습니다. 당신이하는 일에 대해 좀 더 공식적으로 노력하십시오. 그것은 현재 다음과 같이 들릴 수 있습니다 : 아주 다른 데이터 세트에 영향을 미치는 kNN에 의해 거대한 데이터를 작은 데이터로 분할하십시오; 이들 각각에 대한 분류자를 배우고 최선을 다하십시오. 분명히 이것은 일반화가 죽을 때 가능한 최악의 접근법에 가깝다. 무작위로 데이터 세트를 선택하는 것이 더 좋을 것입니다 (kNN 없음). – sascha
데이터 세트를 임의로 선택하는 것은 예 : 무작위적인 숲은 그 혜택을 알고 있습니다. 그러나 어쨌든 큰 문제를 하위 문제로 분리하면 하위 문제를보다 쉽게 처리해야합니다. 당신이 맞습니다, 단일 모델은 일반화에서 훨씬 더 나쁩니다. 왜냐하면 전체 가능한 공간의 작은 부분 집합 만 다루어야하기 때문입니다. 새로운 수신 데이터를 올바르게 클러스터링 할 수있는 좋은 사전 선택 단계를 갖는 것이 중요한 이유입니다. – Marcus
이미징은 서로 다른 천 조각을 구분해야하는 문제입니다.셔츠의 바지, 양복의 드레스 등. 이제 각각의 다른 카테고리에는 하위 카테고리가 있습니다. 바지는 청바지, cort, 양복 바지 등에서 구별 할 수 있습니다. 전체 데이터를 배우는 대신, 바지 전용 모델을 하나만 가질 수 있습니다. 이제는 청바지를 cort와 구분하는 문제가 줄어 들었습니다. 이제는 바지와 나머지를 구별 할 수있는 전처리 단계. 그리고 이미 바지라고 확신하는 경우에만 바지 모델을 사용합니다. – Marcus