SOM 알고리즘을 사용하여 일부 논문을 읽고 연구 중입니다. 나는 사람들이 그들의 데이터 세트를 SOM을위한 훈련/테스트 세트로 나누는 논리를 이해하지 못한다. 예를 들어, C4.5 의사 결정 트리가 사용되는 동안 훈련 된 구조에는 새로운 데이터 집합 (테스트)이 데이터를 분류 할 때 적용될 몇 가지 규칙이 포함됩니다. 그러나 SOM을 통해 시스템을 교육 한 후에는 어떤 종류의 규칙이나 비슷한 내용이 생성됩니까? SOM 시스템에 데이터를 100 % 적용하는 대신 훈련을 위해 30 %를 사용하고 테스트를 위해 70 %를 사용하면 어떻게됩니까? 미리 답변 해 주셔서 감사합니다.SOM에서 교육/테스트로 데이터를 분할하는 이유는 무엇입니까?
답변
미래에 새로운 데이터에 노출 될 것으로 예상되는 데이터 종속적 인 모든 시스템에 대해 테스트를 수행하기 위해 기존 데이터의 일부를 보유하면 배포 후 예측 방법을 견고하게 예측할 수 있습니다 . SOM의 경우 특정 데이터 임베딩을 배웁니다. 교육을 위해 모든 데이터를 사용하고 나중에 훈련 전 SOM을 데이터 이전에는 사용하지 않으려는 경우 - 어떻게 작동 할 것인지는 보장되지 않습니다 (현재 진행중인 작업에 대한 표현이 얼마나 좋은지). 보류 상태를 유지하면 제어 된 환경에서이를 테스트 할 수 있습니다. 데이터의 일부분에 대해 SOM 표현을 학습 한 다음이를 "보류 (테스트)"에 적용하면 "새로운 데이터를 얻고 내 SOM 그것 ". 데이터를 사용하는 모든 단일 알고리즘에도 동일하게 적용됩니다. 감독 여부에 관계없이이 모델을 기반으로 무언가를 배포하려는 경우 자신의 솔루션에 대한 신뢰 구축을위한 테스트 세트가 필요합니다. 반면에 "닫힌"데이터 집합에 대한 탐색적인 분석을 수행하는 경우 감독되지 않은 방법은 모든 데이터에 간단하게 적용될 수 있습니다 ("이 특정 데이터 집합의 구조가 무엇인지 묻는 경우).
SOM (감독되지 않은 기계 학습)이 다른 기계 학습 기술처럼 다루어 져야하는 이유를 알 수없는 것처럼 보입니다. "... 훈련 된 구조에는 새로운 데이터 세트 (테스트)가 적용될 때 적용될 몇 가지 규칙이 포함되어 있습니다. 이 데이터를 분류하는 데 .. "일반적으로
을, (SOM의 포함) 훈련 기간 동안, 당신은 우리에게
final weights
의 세트 를 (결국 목표 너의 말; " 이 될 규칙")을 기존의 보이지 않는 새 데이터 세트에 사용합니다. 교육 세트에는 다양한 기능 (일반적으로 )을 적용해야합니다.
이렇게하면 final weights
을 최대한 정확하고 신뢰할 수 있습니다. "SOM을 통해 시스템을 교육 한 후 어떤 종류의 규칙이 생성됩니까?"final weights
은 SOM에 적용되는 새로운 데이터에 적용되는 "규칙"을 구성합니다. 따라서 SOM은 final weights
의 값을 기반으로 결과를 제공합니다.
데이터를 교육 및 테스트로 나누면 숙련 된 SOM의 성능을 실제 업무에 적용하기 전에 자신감을 갖게됩니다.
테스트 세트를 사용하면 훈련 된 SOM이 얼마나 잘 수행되는지 확인할 수 있습니다. 교육 세트의 결과와 테스트 세트의 결과를 비교합니다. 교육을받은 SOM을 적용하고 사용하기 전에 이것은 중요합니다. 교육 세트 결과와 테스트 세트간에 큰 불일치가있는 경우 교육 세트를 검토해야합니다. 아마도 훈련 세트에 다양한 기능이 포함되어있을 것입니다.
간단히 말해서 교육 및 테스트 세트를 보유하면 구현 될 때 SOM의 성능을 보장 할 수 있습니다.here 언급 한 바와 같이 :
"... 우리는 테스트 파티션이 우리에게 우리의 예측 모델의 성능 을 정직하게 평가를 제공하기 위해 만들 수없는 훈련 데이터를 기반으로 결과의 어떤 수학적 추론의 양 및 조작을 할 것이다. 경험 많은 관찰자에게 확신 시켜라. "