래피드마이너 데이터 초간편 분석 10편모델 검증~~~!!!앞서 9편에서 모델의 성능을 평가하기 위해training과 testing에 동일한 데이터를 사용하였습니다.하지만 위의 방법으로는"새로운 데이터에 대해서도 비슷한 성능을 보일까?"라는 모델의 유효성에 대해서는검증할 수 없습니다.모델 검증이란, 새로운 데이터를 이용하여 모델을 테스트하는 것을 말합니다.예를 들어, 100개의 데이터가 있으면 80개의 데이터를 이용해 모델을 만들고20개의 데이터로 테스트하는 것 입니다.이 과정에서 유의해야 할 점은우리가 선택한 데이터가 성능에 아무런 영향을 미치지 않도록이 작업을 여러번 수행해 주어야 한다는 것입니다.이를 수행하는 오퍼레이터가 바로 'Cross Validation' 입니다.Cross Validation을 수행하기 전에 더 자세히 알아보도록 하겠습니다.먼저 '04-testing the model'을 불러오고데이터와 'Filter Examples'를 제외한 나머지 오퍼레이터는 제거해 줍니다. 'Cross Validation' 오퍼레이터를 파라미터 패널로 드래그 앤 드롭합니다.'Cross Validation'의 파라미터 패널을 보면 number of folds 파라미터가 있습니다.해당 파라미터 값을 10으로 하면 데이터 세트를 10개의 하위 집합으로 나누고그 중 9개는 모델 형성에 1개는 검증으로 쓰는 것을10번 반복하게 됩니다.이미지를 보면 더 쉽게 이해하실 수 있습니다.위의 화면은 Folds를 5개로 한 '5' Cross Validation 입니다.데이터를 5개의 하위집합으로 만들고 그 중 4개는 모델을 만들고 남은 1개의 집합으로 모델을 검증합니다.이 과정을 반복하여 각기 다른 데이터 집합으로 모델을 만들고 성능을 평가하여이를 평균 성능으로 제공해줍니다.'Cross Validation' 오퍼레이터를 보면 두 장으로 겹쳐져 나오는 것을 볼 수 있습니다.이는 하위 프로세스를 가지는 것을 의미합니다.'Cross Validation'을 두 번 클릭해 봅니다.두 개의 새로운 창이 있습니다.하나는 training을 위한 창이며 다른 하나는 testing을 위한 창입니다.따라서 왼쪽 창에서는 모델을 만들고, 오른쪽 창에서는 테스트 데이터셋을 적용하고 성능을 측정해야 합니다.'Decision Tree' 오퍼레이터를 왼쪽 창에 드래그 앤 드롭하고tra는 tra와 mod는 mod끼리 포트를 연결시켜 줍니다.이 과정으로 통해 training 데이터들이 의사결정나무에 전달되고 모델을 만듭니다.'Apply Model'과 'Performance' 오퍼레이터를 오른쪽 창으로 드래그 앤 드롭합니다.모델을 적용시키기 위해 mod 포트와 mod 포트를 연결시켜주고unl에는 test 데이터를 연결시켜 줍니다.마지막으로 Performance를 다음과 같이 연결시킵니다.모든 준비가 완료되었으니 상위 프로세스로 돌아가 봅시다.상위 프로세스로 돌아갈 때는 상단의 파란색 process를 클릭해주면 됩니다.'Cross Validation'의 per 포트를 결과포트와 연결하고 실행합니다.실행결과, 표와 함께 accuracy가 제공됩니다.해당 표는 혼동행렬이라고 이야기하며 주로 모델의 성능을 평가할 때 많이 사용됩니다.10개의 모델에 의해 나온 accuracy는 82.11% 임을 알 수 있습니다.표의 'true.loyal', 'true.churn'은 실제값을 뜻하고'pred.loyal', 'pred.churn'은 예측값을 의미합니다.첫번째 행을 보면 491+87=578즉, 578명의 실제로 충성스러운 고객이 있습니다.실제로 충성스러운 고객이였음에도 불구하고 87명을 이탈할 사람으로 예측하였습니다.총 578명 중 491명을 맞췄으므로$\frac{491}{578}\times 100=84.95\%$491578×100=84.95%다음과 같이 계산하여 84.95%가 나오게 됩니다.그렇다면 Accuracy의 값은 어떻게 나오는 걸까요?Accuracy는 총 데이터의 갯수 분에 올바르게 예측한 데이터의 갯수로 계산됩니다.$\frac{491+248}{900}\ \times 100=82.11\%$491+248900 ×100=82.11%실제로 loyal인데 loyal으로 예측한 데이터(491개)와 실제로 churn인데 churn으로 예측한 데이터(248개)를더하고 총 데이터의 갯수로 나눠주면 됩니다.마지막으로 해당 프로세스를 '05-cross validation'으로 저장해줍니다.지금까지 모델 검증에 대해 알아보았습니다.래피드마이너에 대해 더 궁금하시면?!!플랜투비즈니스컨설팅으로 문의주세요~~