|
안녕하세요.
카페 통해서 많은 도움을 받고 있는데, 저 또한 뭔가 도움을 드려야겠다 싶어서 이렇게 글을 올립니다.
먼저 저는 2008년도에 열렸던 데이터마이닝 챔피언쉽에 참여해서 부족한 실력이지만 상을 받았습니다.
현재도 꾸준히 진행되고 있는 대회인만큼 비록 지난 경험이지만 참고가 되었으면 합니다.
1. 참가 동기 (잡설입니다만..)
우선 저는 통계학과 학생임을 밝힙니다. 그리고 전공에 자신이 있는 학생은 아니었습니다. 수학 실력이 미천해서 전공 학점이 엉망이었지만, 컴퓨터를 통한 통계만큼은 자신감을 갖고 있었기에 그 당시 참가를 하겠다는 나름의 용기를 낼 수 있었습니다. (수학 실력과 전공에 대한 관심이 항상 비례하지는 않으니까요.)
먼저 참가하게 된 계기는 당시 통계학회가 저희 학교에서 열렸고, 그 행사장 한 쪽 벽면에 데이터마이닝 챔피언쉽 포스터가 붙어있었습니다. 스태프로 활동하던 저는 그 포스터가 눈에 들어왔고, 당시 2학년이었기 때문에 데이터마이닝에 관한 지식이 전무했지만, 왠지 나가고 싶어지더군요.
그래서 포스터 옆에서 담배를 피우던 친한 형(당시 석사과정이었습니다.)에게 출전을 권유했습니다. 함께 나가자구요.
그 형 또한 저돌적이었기에 바로 OK 사인이 나왔고, 저희는 그렇게 참가 신청을 했습니다. 무모할 정도로 즉흥적이었죠.
그 뒤 다다익선이라는 마인드로 동기 한 명을 더 끌어들였고, 저희 팀은 3명의 인원 구성으로 참가를 하게 되었습니다.
2. 오리엔테이션 참가
일단 참가 신청은 했으나..... 정보가 전무했습니다.
지방이라는 지역적 한계와 이전 대회 출전자가 없어서(누가누가 출전했었다는 전설만 내려오더군요.) 당장 걱정이었습니다.
그래서 처음으로 결심한 것이 오리엔테이션 참가였습니다. (당시에는 오리엔테이션 참가 인원을 제한하진 않았습니다.)
그렇게 저희는 서울로 무작정 올라왔고, SAS Korea에 입성했습니다.
주제와 데이터에 대한 설명을 듣고 간단한 질문을 했고, 이전 참가자의 조언을 듣게 되었습니다.
그 과정에서 전체적인 윤곽을 잡을 수 있어서 좋았고 무엇보다.. 경쟁자들의 눈빛을 보니 열심히 해야겠다는 동기부여가 되더군요.
이후 오리엔테이션이 끝나고.. 저는 이 건물에 다시 찾아오고 싶어졌습니다.
그래서 그 다짐의 일환(?)으로 소심하게 SAS에서 소변을 시원하게 본 후...(흔적을 남겼죠....) 다음에 다시 이 화장실을 쓰리라 다짐했습니다.
결과적으로 OT에서는 "지난 참가자의 조언"과 "데이터에 대한 상세한 설명", "주제에 대한 부연 설명"을 직접 보고 들었던 점이 좋았던 것 같습니다.
3. 대회 준비
시작할 때 가장 큰 문제는 저와 제 동기는 데이터마이닝 경험이 전무했다는 것이었습니다.
따라서 2개월 남짓한 대회 준비기간 중 데이터마이닝을 학습해야 하는 시간이 필요했습니다.
그래서 우선 학교 도서관에 가서 데이터마이닝에 관한 책들을 몇 권 빌렸고, 저희가 받은 주제인 "골드미스 고객군 분석"에 걸맞게 CRM에 관한 책들도 빌렸습니다.
그리고 약 2주간 집중적으로 학습을 했고, CRM 관련 서적도 보면서 핵심 주제이자 타겟인 "골드미스"에 관한 사전적/사회적 정의도 함께 찾아보는 시간을 가졌습니다.
1) 당시 대회 주제
저희가 받은 주제는 골드미스 고객군 분석입니다.
따라서 이 사람이 직업이 있는지, 결혼은 했는지을 우선 알아야 했기 때문에 이를 예측할 모형을 개발해야 했습니다.
그리고 그 모델을 기반으로 해서 데이터로부터 골드미스를 분류해내고,
이들의 특성을 파악해서 그에 맞는 마케팅 제언까지 작성하는 것이 저희가 수행할 내용이었습니다.
데이터는 기억으로는 10만개의 데이터이고 정제가 되지 않은 상태였습니다. 분석용과 적용용으로 2개의 데이터셋을 받았습니다.
분석용은 말 그대로 모델을 만들기 위해 직업유무, 결혼여부가 나와있는 데이터였고, 적용용은 분석용을 통해 만든 모델을 "적용"해 보기위해 직업유무, 결혼 여부가 나와있지 않은 데이터였습니다.
데이터 내 변수로는 고객 ID와 인구통계학적 정보, 구매 금액, 시간, 요일, 구매 품목 대분류, 직업유무, 결혼여부 등이었습니다.
2) 주제에 관한 논의
먼저 모델을 만들기 전에 주제를 명확하게 할 필요가 있었습니다.
"골드미스"가 누구인지, 사전적인 의미와 사회적인 의미는 어떻게 되는지를 파악해야만 더 좋은 모델을 만들 수 있을거라는 판단 때문이었습니다.
그리고 직업 유무는 어떻게 판단할 것인지, 결혼 여부는 어떻게 판단할 것인지에 대한 사항들을 구체적으로 정리했습니다.
(이 정리 내용을 토대로 무수히 많은 파생 변수들을 만들 수 있었습니다.)
3) 데이터 핸들링
저희가 받은 데이터는 정제되지 않은 데이터였으므로 이상치나 결측치 여부를 확인하는 과정을 먼저 거쳤습니다.
SAS 데이터셋 형태로 온전히 불러들여지는지 확인이 필요했는데, 이 당시에는 적절히 엑셀과 병행해서 데이터셋으로 생성했습니다. (엑셀에서 csv로 만든 후 SAS에서 데이터셋으로 불러들이는 과정) 그런데 별로 효율적이진 않았습니다.
그리고 중요하다고 생각되는 항목의 값이 없는 경우는 과감하게 삭제했습니다. 보간하는 방법도 있긴 하지만 삭제해도 충분히 큰 사이즈의 관측치가 있었기 때문입니다. 대신 삭제한 이유를 보고서에 그대로 적어냈습니다.
결과 발표 때 SAS에서 강조했던 것 중 하나가 "근거가 뒷받침 된 분석자의 주관적 판단"이었는데, 이렇게 삭제를 하거나 전처리를 한 부분이 있는지와 그 근거가 명확한지 여부도 심사 요점 중 하나였던 것 같습니다.
4) 변수 유의성 판단 및 파생변수 생성
핸들링이 완료된 데이터를 가지고 본격적으로 모델을 만들기 위한 사전 단계에 들어갔습니다.
먼저 타겟 변수와 통계적으로(선형적으로) 관련성이 있는지 여부를 확인했으며, 타겟 변수에 따라 차이를 보이는 변수들을 모두 추려냈습니다. 그렇게해서 필요성이 떨어지는 변수들을 제외시켰고, 상호작용이 있을 수 있는 몇몇 변수들은 결과와 상관없이 남겨두었습니다.
그리고 여러 변수들을 조합해서 파생변수들을 생성했습니다.
예를 들어 구매금액 - 환불금액 = 실제 구매금액 이라는 변수를 만들거나,
평일 오전구매금액 + 주말 오전 구매금액 = 오전 구매금액 이라는 변수를 만드는 식이었습니다.
줄일 수 있는 부분은 줄이고, 되도록이면 다양한 각도에서 볼 수 있게끔 하자라는 의도였습니다.
5) 모델 생성
이제 준비된 데이터를 가지고 모델을 생성하는 단계가 되었습니다.
타겟 변수를 두고, 여러가지 설명변수들을 입력해서 오분류율과 ROC커브 등을 확인했습니다.
이 과정에서 조금 아쉬웠던 부분은, E-miner 옵션 조작을 통해 오분류율을 낮출 수 있을거라는 맹목적인 믿음을 갖고 진행했다는 점입니다.
모델의 정확성이 중요한 평가의 기준이긴 하지만, '올인'해야하는 기준은 아니었던 것 같습니다.
저희는 소수점 이하의 오분류율에 집착한 나머지 수많은 날을 모델링 하는데에 소요했습니다.
(집착했던 정분류율 결과는 80% 이상으로 나쁘지 않았습니다만, 다른 팀들도 크게 높거나 낮지는 않은 것으로 기억합니다.)
그 보다는 모델 결과를 적용했을 때 확인할 수 있는 '현상'과 '특성'들을 더 잘 이해하는 것이 더 중요하지 않을까 생각됩니다.
아무튼 저희는 그렇게 직업유무 예측 모형과 결혼 여부 예측 모형 두 가지를 모두 만들 수 있었습니다만, 추가 분석을 위한 시간이 많이 남지 않게 되었습니다.
6) 데이터 적용 및 추가 분석
데이터 적용은 매우 쉽습니다.
적용용 데이터셋을 연결만 시켜주면 되는 과정이기 때문입니다. 그렇게 데이터 적용을 통해 직업유무와 결혼여부가 예측된 데이터를 얻었고 이를 통해 골드미스의 특성과 어떤 마케팅을 적용시킬 것인가에 대해 생각할 차례가 되었습니다.
그래서 분류된 데이터에 골드미스의 기준 (30~45세, 미혼, 직업여성)을 적용시켜 골드미스를 추려내었습니다.
먼저, 기혼 여성과 골드미스 간의 구매 패턴 차이를 확인했습니다.
어떤 물건을 언제 얼마만큼 사는지 안다면 보다 세부적인 마케팅이 가능할 것으로 생각했습니다.
그래서 골드미스가 식품과 아동복, 잡화 등에 구입하는 금액이 많은 것을 확인했습니다.
이 중 아동복은 '주변 사람에게 선물하기 위한 용도'로 가정을 하고 진행을 했습니다.
그리고 구매 시간과 금액 등을 확인(자세히 기억이 나지 않네요...)해서 최종적으로 어떤 점이 어떻게 다른지를 모두 확인했습니다.
7) 마케팅 제언 작성
당시 모 백화점과 함께 진행한 대회였기 때문에 결과를 바탕으로 한 마케팅 제언을 도출해 내는 것 또한 심사 기준의 하나였습니다.
저희는 골드미스가 보이는 구매 패턴을 활용하기로 하였고, 골드미스 고객군이 이벤트 반응률이 높음을 확인하여 그에 맞는 마케팅 제언을 도출해냈습니다.
여기서 아쉬웠던 부분은 앞에서 말씀드렸던 '오분류율'에 집착하는 바람에 마케팅 제언을 위한 심도있는 논의가 전혀 되지 않은 상태였다는 것입니다.
이 부분을 조금 더 신경썼더라면 더 좋은 결과를 얻지 않았을까 하는 아쉬움이 남습니다.
데이터마이닝은 결국 '무엇을 캐낼 것인가'를 정하고 '그것을 캐낸' 후, 이를 활용할 수 있는 '자원'으로 만들어 내는 과정이기 때문입니다. 저희는 '자원'으로 만드는 과정이 부족하지 않았나 생각합니다.
4. 결과 발표
며칠을 가슴 졸이며 기다린 끝에 결과가 발표되었습니다.
겉으로는 '우린 될거야'라는 자신감으로 포장했습니다만, 여름 방학 내내 투입한 우리의 시간이 '헛수고'가 되지 않을까하는
두려움에 내내 시달렸습니다.
다행히 1차 통과자 명단에 이름을 올렸고 저희는 2차 단계인 '발표 준비'를 하기 시작했습니다.
발표 시간이 기억으로는 30분 정도 주어진 것 같습니다. (질문시간 포함)
저희가 작성한 분석보고서가 100페이지 이상이었기 때문에 사실 부족한 시간이죠.
그래서 이 단계에서는 저희가 작성한 보고서를 '발표용'으로 요약하는 것이 핵심이었습니다.
5. 2차 발표
발표는 SAS Korea에서 진행되었습니다.
원하던대로 저는 화장실을 한 번 더 쓸 수 있었습니다.
먼저 발표시간 전에 와서 각종 사항들을 들었습니다. 이 후 타 팀의 발표는 참관이 불가능하기 때문에 저희 팀의 순서가 될 때까지
긴장을 풀면서 기다렸습니다. 1차 통과자 모두가 결국 수상을 하긴 합니다만, 심사위원들 앞에서 하는 발표인지라 몹시 긴장되더군요.
그렇게 저희의 차례가 다가왔고, 발표가 이뤄지는 곳으로 입장했습니다.
심사위원은 당시에 SAS Korea 분들과 모 백화점 분들(마케팅 및 데이터분석 실무자), 그리고 외부 심사위원인 대학교수님 이렇게 구성이 되어 있었습니다.
발표 내용을 모두 마치고 나면 본격적으로 날카로운 질문이 쏟아지기 시작합니다.
저희가 지적받았던 사항은 '인구통계학적인 사항에 따른 분석'을 해보았는가였습니다.
당시 데이터엔 민감한 개인정보들은 빠져있었지만, 지역명 변수가 포함되어 있었습니다.
이게 분석 당시에 놓쳤던 부분 중 가장 큰 부분 같습니다. 세분화 시켜 진행하기 위한 마케팅에서 '지역'이라는 세분화 요소를 빠뜨렸기 때문이죠.
그렇게 발표를 마치고 저희는 수상 후 사진 촬영과 밤까지 이어지는 기념 회식에 참가했습니다.
그 날은 긴장이 풀린 이후라 심사위원분들과 다른 팀 소속 인원까지 모두 재미있게 보냈던 것 같습니다.
그리고 부상으로 상금과 교육 상품권을 받았고, SAS Korea의 인턴쉽 기회를 얻게 되었습니다.
6. 마치며
대회 과정 자체가 길기 때문에 이 글에서 빠진 부분들이 상당히 있을 수 있습니다. 그리고 몇 년 전의 경험을 떠올리자니 한계가 있네요.
그리고 제가 기록한 내용들이 모두 '정석'은 아니라는 점을 먼저 이해해주시길 부탁드립니다.
저희가 어떤 주제를 어떤 목표로 가지고 어떻게 했는지 '참고'하셔서 앞으로 참여하실 분들께 도움이 되었으면 하는게 저의 작은 바람입니다.
'데이터로부터 무엇을 얻고자 하는가'를 명확하게 정의하고 임하신다면 틀림없이 좋은 결과가 있을 것으로 생각됩니다.
도전하세요!
|
첫댓글 좋은 경험담 남겨주셔서 감사합니다.
앞으로도 실무 경험담도 나눠주시면 감사하겠습니다^^
얻어가는 정보에 비하면 약소합니다 ^^
유용한 내용이 있으면 종종 정리해서 올리도록 하겠습니다~!
우와 진짜 대단하시네요, 또 이런 기록까지 세세하게 하셨군요. 저도 아무런 경력이 없다가 대회참가를 준비하는 마당에 매우 큰 도움이 되었습니다!!!