데이터이야기

DB 노하우, 데이터직무, 다양한 인터뷰를 만나보세요.

[기술 5기] 증권사 빅데이터를 활용한 고객 패턴분석(하)

데이터 이야기
작성자
dataonair
작성일
2014-09-23 00:00
조회
6398


[기술 전문가 5기 최우수 프로젝트]

We think big!

증권사 빅데이터를 활용한 고객 패턴분석(하)



We’re ‘ThinkBig’, We think big! 빅데이터 아카데미 기술 5기 최우수 팀으로 선정된 ‘ThinkBig’입니다. Big Data 의미와 함께, 사고의 한계를 벗어 던지고 더 넓은 곳으로 나아갈 수 있는 팀이 되고자 하는 기원을 이름에 담았습니다. 박종욱 팀장을 중심으로 김영민/안병현/양승영 팀원이 한 조가 되어 진행했으며, 이상훈 멘토의 지원을 받았습니다. 정식 멤버는 아니었지만 김석수(가천대), 양윤기(The ECG) 씨가 참관 팀원으로 참여해 값진 결과가 나올 수 있도록 도움을 주었습니다.



세분화한 고객 정보로 마케팅 최적화

빅데이터를 이용해 증권사 고객의 특성을 파악하고, 고객군을 세분화해 고객군별 프로파일을 바탕으로 최적의 마케팅 방향을 설정해 보자. 우리팀이 찾았던 재미있었던 많은 결과들을 보여주고 싶지만, 고객 정보를 다루는 기업의 데이터이다 보니, 모든 것을 밝힐 수가 없다는 점을 이해해 주기를 바란다.

높은 연령대의 고객
가장 먼저 찾았던 내용은 증권사 고객의 연령 분포였다. 관계자로부터 들었던 고객들의 연령이 실제 데이터가 말해주는 것과는 달랐다. 경제활동이 활발한 30대 후반에서 40대가 많을 것으로 예상했다. 분석결과 50대 중후반의 고객이 가장 많은 것을 확인할 수 있었다. 이를 바탕으로 실질적으로 경제활동이 매우 활발한 30~50대 초반의 고객을 유치할 만한 대비책 마련이 매우 시급해 보였다.

고객군별 프로파일
거래특성별 클러스터링을 통해 도출된 7개의 군집을 비즈니스적으로 이해할 수 있도록 다시 4개의 군집으로 묶었다. 첫 번째 군집은 전체 고객 중 0.25%밖에 없는 ‘핵심 고객군’이다. 증권사와 접촉이 매우 잦은 편이며, 거래가 매우 활발한 특성을 갖는다. 또한 포트폴리오 구성을 볼 때, 어느 한쪽에 치우치지 않고 다양한 금융상품에 고르게 분산 투자하는 특성을 보인다. 안전 자산에 대한 선호도가 매우 높은 고객군이기도 하다. 전문 투자자문 서비스를 받고 있는 재력가이거나, 주로 자신의 증권을 위탁하는 기업 오너로 세부적으로 구분할 수 있다. 무엇보다 놀랄만한 사실은 매우 적은 고객군 임에도 고객의 잔고가 증권사 전체의 93%를 차지하고 있다는 점이다. 뿐만 아니라, 증권사의 수익 비중의 97% 정도를 차지하는 매우 중요한 고객군이다.

이를 바탕으로, 기업 오너는 자산을 분산 투자하도록 유도하고, 계속해서 핵심 고객의 지위를 유지할 수 있도록 VIP 관리 서비스를 발굴 및 제공하는 것이 중요하다는 판단을 내렸다. 0.25%의 소수 고객이 증권사 전체 수익의 대부분을 차지하므로, 해당 고객들로 인해 기업의 영업 이익률이 좌지우지될 수 있다. 따라서 증권사 영업이익의 원천을 다각화하는 전략이 매우 중요하다는 결론을 내렸다.

두 번째 군집은 전체 고객 중 5%를 차지하는 ‘장려 고객군’이다. 평균 거래 기간이 15년 정도로 길고, 최종 거래 경과일수가 1달 이내로 대체가 거래가 활발한 고객군이다. 이 고객군은 대부분 금융사 등급이 높고, 우수고객으로 관리대상에 등록돼 있다. 안정 또는 위험 중립형의 거래 특성을 보이며, 전체 잔고 비중 6% 정도로 핵심 고객군 이외에 가장 견실한 고객군이라 볼 수 있다.

이를 바탕으로 해당 고객군에게는 종합자산관리 마케팅 등을 통해 포트폴리오 다양화를 유도하고 고객의 자산을 증권사의 상품으로 옮길 수 있는 방안 수립이 필요하다고 판단했다.

세 번째 군집은 전체 고객 중 8% 정도를 차지하는 ‘관리 사각지대 고객군’이다. 평균 거래기간이 17년 이상으로 충성도가 높음에도 평균 8개월 정도의 낮은 접촉 빈도를 가진다. 다른 군집은 대부분 1개월 내에서 지속적인 접촉이 이루어 지는 반면, 거의 관리를 받지 못하는 고객으로 볼 수 있다. 포트폴리오 구성은 주로 주식관련 비중이 높아, 다소 공격적인 성향을 가진 유형으로 분석된다. 고객의 잔고는 0.14%를 차지하며, 수익의 비중은 0.02% 정도로 미미하다.

이를 바탕으로 해당 고객군에게는 주식수익률대회 등 이벤트를 개최해 HTS나 MTS 등의 채널로 유도할 수 있는 마케팅 활동이 시급해 보였다. 또한 지속적인 접촉을 통한 활발한 거래를 유도하는 것도 중요하다는 판단을 내렸다.

마지막 군집은 87%로 거의 대부분의 고객을 차지하고 있는 일반/불량 고객군이다. 증권사와의 접촉이 매우 잦음에도 불구하고 거래가 거의 발생하지 않는다. 많은 분포도에 비해 뚜렷한 거래 성향을 보이지 않으며, 잔고는 1% 정도를 차지하고 증권사 수익에 0.2% 정도밖에 기여를 하지 않는다. 고객군별 프로파일링 결과, 해당 증권사는 일반 소규모 고객보다는 자산이 많은 우수 고객에 집중하여 영업하는 것을 확인할 수 있었다. 하지만 수익 비중의 기반이 다수의 고객이 아닌 일부 특수한 고객에 한정된 측면을 볼 때, 소규모 고객의 이탈로 기업의 기반이 흔들릴 수 있다는 점은 다소 위험한 부분이다.

고객별 맞춤 상품 추천
다음 링크의 두 영상을 보자. 상품 추천은 고객의 번호를 입력하여 해당 고객에게 맞는 상품을 추천하는 고객별 상품추천과, 포트폴리오를 입력하면 (혹은 그렇게 가입을 원하는 고객이 있다고 한다면) 입력된 데이터를 바탕으로 상품을 추천하는 고객 포트폴리오별 상품 추천, 이렇게 두 가지로 구분돼 있다.

http://www.youtube.com/v/Z9jbzLUtdiE
http://www.youtube.com/v/Fkf3TXuk1Gw

‘고객별 상품 추천’은 손님이 방문하는 순간부터 적절한 상품을 제시할 수 있다. 뿐만 아니라 온라인 매체(HTS, MTS)를 통하여 접속 고객에게 추천 상품을 노출시켜 효과를 극대화할 수 있다. ‘고객 포트폴리오별 상품 추천’은 아직 고객정보가 없는 새로운 고객이 가입하면 가입하려는 상품으로부터 추가 상품까지 함께 팔 수 있는 영업전략을 펼칠 수 있다. 더불어 영업사원이 다른 증권사의 고객을 방문하였을 때, 고객이 지금까지 이용했던 상품들을 토대로 어떠한 고객인지 분석하고, 그 고객에 맞춤 서비스를 제공함으로써 자사 고객으로 확보하는 전략을 펼칠 수도 있다.



기술 프로젝트가 맞나요

스티브 잡스의 핵심 역량 중에 많은 사람이 꼽는 것 가운데 하나가 바로 인문학적인 통찰력이다. 인문학적 통찰력은 데이터 사이언티스트의 중요한 역량으로 강조되고 있다. 그렇기에 빅데이터 교육과정에서도 인문학적인 통찰력에 대한 교육을 할 정도다. 하지만 정보기술을 전공한 많은 엔지니어 중에는 공학도로서 자신의 분야에서의 기술역량과 과학적이고 논리적인 사고력에만 중점을 둔 이들이 너무나 많다. ‘요즘 IT로 먹고 살기 힘들다’는 농담 섞인 말 속에는 어쩌면 이토록 한쪽으로만 편향된 역량 확보에만 관심을 기울인 사람이 많기 때문일 수도 있다. 모두가 동일한 역량 향상에 집중할 때, 남과 다른 플러스 알파의 역량을 가졌을 때 진정한 경쟁력이 될 수 있다는 것은 너무나 당연한 말이다.

인문학적으로 보면, 기술은 인간에게 편의성을 제공하고 불가능하다고 여겼던 무언가를 가능하게 만드는 것에 의미와 가치가 있다. 우리가 스마트폰을 사용하는 이유는 그 기술에 감탄하였기 때문이 아니라, 스마트폰이 우리에게 가져다 주는 편리함과 혜택이 있기 때문인 것과 같다. 많은 엔지니어와 분석가가 (일반인이) 이해하기도 어려운 화려한 내용을 가져오면, 대부분의 반응은 ‘이게 뭐야’이라는 반응뿐이다. 결국 중요한 건 기술 그 자체가 아니라 그 수 있는 수준이어야 한다.

빅데이터 기술전문가 과정이라 해서 오로지 ‘기술’ 부분에만 집중했다면 결국 다른 사람들에게 어떤 의미로 다가설 수 있었을까 ThinkBig팀에 프로젝트라는 것은 단순히 지금까지 배운 것을 확인하는 숙제로서의 의미뿐 아니라, 이를 뛰어넘어 ‘가치’와 ‘재미’를 담아 전달할 수 있는 결과물을 만드는 과정이었다. 어떻게 하면 프로젝트의 결과가 사람들에게 통찰력을 줄 수 있는가를 놓고 끊임 없이 고민했고, 메시지를 전달할 수 있는 스토리를 만들기 위해 노력하였다. 그렇기에 우리 팀의 결과물에는 기술적인 설명을 덜 강조했다. 인문학에서 말하는 것처럼, 기술은 목적을 이루기 위한 과정 안에 있을 때 비로소 빛날 수 있으며, 기술 자체가 목적이 될 순 없다고 생각했다. 하지만 결과를 얻기 위한 기반에는 기술이 깔려 있으며, 그 기술로 결과를 도출했다는 것을 생각해 본다면, 결코 기술의 중요성을 가볍게 볼 수 없다.



그래도 기술 전문가 과정인데...

필요에 따라 기술적인 요소를 적용하다 보니, 우리 팀이 적용한 기술이 어떤 것 인지를 표현하기 어려웠다. 분명 많은 기술을 사용하였으나 보고서에 소스 코드를 줄줄이 적어 놓을 수만은 없었기에, 적용했던 기술을 설명할 다른 방법이 필요했다. 어떻게 기술적인 요소를 빠뜨리지 않으면서 전달하는 내용을 명확히 할 것인지에 대한 아이디어는 결국 시스템 아키텍처 1장을 체계적으로 정립하자는 의견으로 좁혀지게 되었다.

처음 시스템 아키텍처를 그렸을 때는 Hadoop, MapReduce, Mahout 등 세세한 내용이 적혀 있는 기다란 목록과 같았다. 따라서 MECE(Mutually Exclusive, Collectively Exhaustive)하게 전체 기술을 포괄할 수 있는 무언가가 필요해 보였다. 결국 기술을 포괄적으로 아우를 수 있는 데이터 수집(Gathering) 계층, 스토리지 계층, 프로세싱 계층, 분석 계층, 시각화 계층이라는 5개 계층을 구성하여 기술 요소를 정립하기에 이르렀다.

데이터 수집 계층(Data Gathering Layer, DGL)은 분석할 데이터를 가져와서 데이터 스토리지 계층 (Data Storage Layer, DSL)로 넘겨주는 논리적인 계층이다. 우리 팀의 프로젝트에서는 증권사의 데이터를 가져오는 부분이다. 증권사 DB로부터 ETL 커넥션을 맺고 데이터를 지속적으로 끌어와서(Pulling) 스토리지에 넘겨 줄 수 있는 Sqoop을 사용했다. 이번 프로젝트를 위해서라고만 생각한다면, Sqoop을 활용하여 주기적인 데이터 수집 절차를 거칠 필요는 없었을 것이다. 하지만 PoC(Proof of Concept) 개념으로, 이번 프로젝트 결과를 실제 비즈니스에 활용했을 때의 가치를 증명하고 싶었다. 따라서 Sqoop을 사용하여 비즈니스에서도 충분히 활용이 가능하다는 점을 말하고 싶다.

데이터 스토리지 계층은 데이터를 실제로 저장하는 논리 계층이다. 우리 팀은 HDFS(Hadoop Distribution File System)로 구성했다. HDFS는 대용량 파일을 블록 단위로 쪼개어 저장하고, 각 블록을 여러 노드에 분산/중첩해 저장한다. 따라서 비즈니스 환경에서 폴트 톨러런스와 스케일아웃 기능을 제공할 수 있다.

데이터 프로세싱 계층(Data Processing Layer, DPS)은 DSL에 저장된 데이터를 필터링/요약/정렬/가공을 통한 파생변수 생성 등의 과정을 거쳐 분석용 데이터 마트를 구성하는 논리 계층이다. 우리 팀은 MapReduce와 HIVE를 활용해 구현했다. MapReduce는 구글에서 발표한 논문을 기초로, 매핑 작업과 리듀싱 작업을 활용해 각 노드 사이의 분산작업을 통해 데이터를 분석하는 방법론이라 할 수 있다. HIVE는 HiveQL이라는 SQL과 비슷한 구문을 통해 MapReduce를 직접 코딩하지 않고도 활용할 수 있도록 고안된 아키텍처 다. 따라서 우리 팀은 기존 MapReduce만으로는 개발시간이 너무 길고, 휴먼에러가 높을 가능성이 있어, 복잡하고 다양한 1회성 검증작업등에 HIVE를 많이 사용했다.

데이터 분석 계층(Data Analysis Layer, DAL)는 DPL에서 구성된 데이터 마트를 활용해 여러 분석 모델링을 실제 수행하여 결과를 얻어내는 논리 계층이다. 우리 팀은 mahout과 R을 활용했다. mahout은 각종 머신 러닝에 해당하는 알고리즘의 집합체로서 분산처리에 적합한 환경을 제공한다. 특히 하둡 위에서 MapReduce를 통해 분석할 수 있는 장점이 있다. R은 S를 전신으로 하고 있는 통계분석용 언어로서 CRAN을 통한 패키지 배포환경을 지원한다. 패키지 개발을 특정 단체가 중심이 돼서 하는 것이 아니라, 사용자가 직접 생성하고 CRAN을 통해 공유하는 것이 가능하다. 따라서 패키지 업데이트가 매우 빨라, 최신 분석 모델을 바로 적용할 수 있다는 장점을 가진다. 우리 팀은 mahout을 활용해 고객 거래 특성을 토대로 고객 세그먼테이션을 위한 클러스터링 (k-means)과, 고객에게 금융상품을 추천하기 위한 추천(Recommendation, Collaborative Filtering) 알고리즘을 사용했다. 또한 R을 활용해 소규모 마스터 데이터 탐색과 분포분석을 빠르게 진행할 수 있었다.

마지막으로 시각화 계층(Visualization Layer, VL)은 분석한 결과를 사용자가 직관적으로 이해할 수 있도록 시각화하는 논리 계층이다. 우리 팀은 데이터 탐색과 분포분석 결과를 R로 확인했다. 사용자 클러스터와 추천 결과는 WAS(Web Application Server)를 통해 D3를 활용하여 웹으로 시각화 했다.

dbin_312.jpg

<그림 9> ThinkBig 팀의 증권분석 시스템 아키텍처



안전과 모험 사이에서...

하둡 클러스터를 구축하고 그 안에 데이터를 밀어 넣는 것은 예상보다 빠르게 완료됐다. 시스템을 구축하고 데이터까지 확보되자, 분석 방법론대로 각 데이터의 분포부터 확인하는 길고 긴 데이터 탐색이 진행됐다. 이를 통해 이상치나 결측치를 제거하고 데이터의 대한 이해를 하는 작업까지는 다소 시간이 걸리더라도 순조롭게 진행되는 듯 하였다. 하지만 문제는 그 이후부터였다. 각 변수들의 상관성 분석까지 완료하고 나자, 적용할 만한 분석 모델을 바로 찾을 수가 없었다. 모두들 머리를 쥐어짜며 고민해 보지만 시간은 하염없이 흘러가기만 했다. 결국 이러한 상황에서 팀의 분위기가 흐트러지기 시작했다.



결국 두 의견으로 엇갈리기 시작했다. 하나는 ‘일단 결과를 빨리 얻을 수 있는 추천분석에 집중하여 함께 완료한 뒤에 다른 주제거리를 찾자’는 의견이었다. 다른 하나는 ‘추천 분석이라는 것 자체가 줄 수 있는 통찰(Insight)은 이미 예상되는 부분이고, 그러한 결과만으로는 우리가 애초에 얻고자 했던 의미 있는 결과라고 볼 수 없으므로 다른 결과에 집중하는 것이 옳다’는 것이었다. 어쩌면 이는 무엇이든 안정된 결과를 하나 얻고자 하는 ‘안전’과 더욱 값진 결과를 얻기 위한 ‘모험’ 사이의 갈등이었을지 모른다. 하지만 무엇 하나만 추구하게 되면 그 자체만으로 ‘리스크’라고 생각했다. 밤새 갑론을박을 거쳐 역할분담을 하여 어느 정도는 정리되는 듯 보였다. 기술에 자신이 있었던 팀원들을 모아 Mahout을 통해 추천분석을 완성하기로 하고, 나머지 팀원들은 데이터를 계속 들여다 보면서 새로운 분석 주제를 찾기로 하였다. 한 주가 지나자 모든 것이 원점이었다. 고객 대다수가 매우 적은 수의 상품만을 가입하였기에 추천분석의 예측치가 너무 낮아 바로 사용하기 힘들었다. 새로운 분석 주제를 찾기로 한 팀원들은 클러스터링을 거쳐 Iteration해 합리적이라 생각되는 12개나 되는 군집을 산출해 가져왔지만, 너무 많은 군집들 때문에 프로파일링을 통해 의미 있는 결과를 도출해내기가 쉬워 보이지 않를 검증하는 작업을 수없이 반복한 결과 (소위 삽질이라 부르는) 시행착오 데이터가 쌓이게 되었고, 결국 분석된 결과들을 하나로 모아서 정리할 수 있을 만한 스토리가 탄생했다.

만약, 안전과 모험 중에서 어느 하나만을 택하는 쉬운 길을 택했다면, 어쩌면 우리 팀은 프로젝트 기간 추천분석이나 군집분석 하나의 결과만을 가지고 실제로 비즈니스에서 활용할 만한 애플리케이션을 도출하지 못했을지 모른다. 하지만 개인이 아닌 팀이라는 특성을 활용한 적절한 분업과 팀원들의 열정은, 두 가지 주제를 함께 해낼 수 있도록 하는 원동력이었다.



Conclusion

에필로그

프로젝트 중반쯤에 팀장이었던 필자에게 예상하지 못한 일이 생겼다. 필자의 아들이 세상이 너무나 궁금했는지 8주나 일찍 태어난 것이었다. 축복 받을 일이었음에도 인큐베이터에 안쓰럽게 들어가있는 아이를 보니 제정신이 아니었다. 이 일 때문에 필자 주변의 모든 일이 멈춰버린 듯 했다. 당시 회사에서 중요한 프로젝트가 시작 단계에 있었고, 빅데이터 아카데미 수료 프로젝트에서도 팀장으로서 역할까지 해야 하는 상황이었는데, 모든 걸 놓아버리니 죄인이 된 기분이 들었다. 하지만 양해를 구할 때 모두들 너무나 당연한 듯 필자의 편의를 봐주는 모습이 정말 큰 위로가 되었다.

아무런 신경도 쓰지 못한 2주간의 공백 이후에 다시 모였을 때, 필자는 정말 깜짝 놀랐다. 생각보다 많은 부분이 진행되어서 오히려 따라잡기 힘들 정도였기 때문이다. 모두들 각자의 분야에서 전문가였기에, 확실한 책임배분(Role and Responsibility)을 토대로 묵묵히 자신의 역할에 최선을 다하고 있었던 것이다. 그 순간, 우리 팀의 가장 큰 강점을 발견할 수 있었다. 각자 시계 부품처럼 중요한 역할을 가지고 유기적으로 움직이지만, 공통된 목표를 바탕으로 서로의 빈자리마저 채울 수 있는 힘이 있었던 것이다.

필자가 생각하는 강한 조직이란 동일한 전문가로만 구성된 집단이 아니라, 다양한 사람이 모여서 상보적인 역할을 수행하는 조직이다. 이번 기술과정 5기에는 비슷한 사람들이 모여서 팀을 이룬 곳도 있었고, ThinkBig 팀처럼 서로 다른 조직과 배경을 가진 사람이 모여서 팀을 이룬 곳도 있었다. 팀마다 각자의 강점을 갖고 있겠지만, ThinkBig 팀이 강할 수 있었던 가장 큰 이유는 교육/기술/제조/금융/비즈니스 컨설팅 등을 아우르는 팀원들의 다양한 경험과 지식일 것이다. 그렇기에 한 사람의 시각으로 볼 수 없는 다양한 접근과 여러 분야에서의 검증, 서로간의 명확한 책임배분이 이번 프로젝트를 성공적으로 이끌 수 있었다.

끝으로 저보다 훨씬 많이 고생했을 팀원들과, 여러 조언을 아끼지 않은 멘토님, 열정적으로 강의해주신 강사님들, 빅데이터 기술 전문가 과정을 운영하신 KODB 관계자님들께 감사의 말씀 드립니다. (끝)













출처 : 한국데이터베이스진흥원

제공 : DB포탈사이트 DBguide.net