Warning) 아래 코드들은 버전이 바뀌어 정상적으로 작동되지 않을 수도 있습니다. 따로 버전을 명시하지 않았기 때문에 에러가 발생되면 조금씩 수정해 나가면서 사용하시길 바랍니다. 또한, 형편없는 저의 실력으로 코드들이 다소 비효율적일 수 있음을 미리 말씀드립니다. 우연히 이 글을 보게 되신 분들은 참고해주시기 바랍니다. 


STEP 1. 프로젝트 계획

(1) 분석 목적과 목표

평소에 텍스트 분석에 관심이 많아 유튜브 강의나 책을 통해 조금씩 공부를 하고 있습니다. 대학에서는 경영학을 전공하고 있고 특히 서비스, 마케팅과 관련된 수업을 많이 들었던 터라 지금 공부하고 있는 데이터 사이언스가 서비스 기획이나 마케팅에서 어떻게 활용될 수 있을지 항상 고민을 해왔습니다.

텍스트 마이닝(Text Mining) 또는 텍스트 분석(Text Analysis)이 경영과 접점을 이룰 수 있는 부분은 고객들의 데이터를 활용하는 것이지 않을까 생각합니다. 특히, 고객 데이터 중에서 회사 내부 DB에 저장되는 정형화된 데이터(구매 내역, 사이트 활동 시간 등) 외에 소셜이나 웹사이트에서 얻을 수 있는 비정형 텍스트 데이터에 대한 관심이 날로 커져가는 것 같습니다. 저 또한 고객들이 인터넷 상에 남기는 텍스트 데이터에서 어떻게 하면 인사이트를 발견할 수 있을지 많은 관심을 가지고 있습니다.

따라서, 이번 토이 프로젝트에서는 고객 리뷰 데이터를 가지고 텍스트 분석을 진행하여 상품 기획이나 마케팅 전략 수립에 대한 간단한 제언을 하는 연습을 해보았습니다. 이후 설명 과정에서도 말씀 드리겠지만 분석 결과가 그리 유의미하지는 않으며 상식적인 선에서도 충분히 알 수 있는 결과가 도출되었습니다. 때문에 프로젝트 결과물에 대한 기대는 하기 어렵다고 말씀드릴 수 있습니다. 다만, 빈도 분석과 LDA 토픽 모델링을 적용해보았다는 점, 그리고 한글 텍스트 전처리 과정을 직접 경험해보았다는 점에서 개인적인 의의를 두고 있습니다. 

이번에 활용한 텍스트 데이터는 냉동 만두 구매 고객들의 쇼핑몰 리뷰 데이터입니다. 냉동 만두 리뷰를 선택한 것은 별다른 이유는 없고 이 프로젝트를 기획하던 당시 풀무원 만두를 먹고 있었기 때문입니다. 물론 비비고, 풀무원 브랜드의 냉동 만두 사례가 학교 수업 시간에 포지셔닝, 브랜딩 파트에서 많이 활용되는 것을 익히 알고 있기 때문에 이러한 도메인 지식을 활용하면 좋은 분석 결과가 나오지 않을까 하는 기대가 있기도 하였습니다. 

결론적으로 이번 토이 프로젝트의 목표은 냉동 만두 구매 고객들의 리뷰 데이터를 분석하여 쇼핑몰에서 만두를 구매하여 소비하는 고객들의 행동과 상황을 확인하는 것입니다. 그리고 이를 활용해 향후 제품 개발과 마케팅 전략에 어떻게 활용할 수 있을지 살펴보는 것입니다.


(2) 데이터 수집 계획

국내에 정말 많은 온라인 쇼핑몰이 있긴 하지만 데이터 수집을 용이하게 하기 위해서는 몇 개의 쇼핑몰로 제한할 필요가 있습니다. 그리고 충분한 sample 수를 얻기 위해 가능한 큰 규모의 온라인몰에서 데이터를 수집하는 것이 좋습니다. 국내 대형 온라인몰 중에는 쿠팡, SSG, 롯데몰 등 대형 유통회사들이 꽤 많지만 저는 네이버쇼핑에서 리뷰 데이터를 수집하였습니다.  한 쇼핑몰의 데이터만 가져오기보다는 여러 쇼핑몰의 데이터를 수집하는 것이 더 객관적인 sampling이 될 수 있을 거라 생각되었기 때문입니다. 하지만, 막상 데이터를 수집한 결과 몇몇 온라인 몰에 집중되어 있어 네이버 쇼핑 데이터를 통해 수집한 의미가 퇴색되긴 하였습니다.  이에 대해서는 추후에 다시 말씀드리도록 하겠습니다.

텍스트 분석을 위해 어느정도의 데이터가 있으면 좋은 지에 대해서는 기준은 없습니다. 많은 데이터가 있으면 그만큼 좋은 결과를 얻을 수 있긴 하지만 수집과 전처리 과정에서 그만큼 많은 시간이 소요됩니다. 사실 제가 많이 고민되었던 부분은 얼만큼의 sample을 수집할지였습니다. 일반적으로 토픽 모델링에 많이 활용되는 뉴스 텍스트는 다양한 토픽들과 다채로운 단어들이 사용되기에 분석 결과의 객관성(?)을 확보하기에 유리합니다. 하지만 리뷰 데이터의 경우 그 길이가 매우 짧고 내용이 한정되어 있어 적은 데이터 sample로는 편향된 결과가 도출되지 않을까 하는 걱정이 되었습니다. 가령, 리뷰 데이터에는 '정말 좋습니다^^', '잘 쓸게요~' 등 단순한 표현들이 많고 리뷰들간 중복되는 것들도 정말 많습니다. 그래서 충분히 많은 데이터를 수집하고자 하는 욕심이 있었습니다. 실제로 리뷰에 대해 토픽 모델링을 시행한 몇몇 사례들을 살펴보니 보통 10만개 이상의 데이터를 수집하는 경우가 많았습니다. 그러나 너무 많은 데이터를 수집하기에는 중간 전처리에 대한 부담이 있어 2만개 데이터를 수집하는 것으로 타협하였습니다.


(3) 분석 방법 선정

3-1) 빈도 분석을 통한 WordCloud 생성

전처리 과정을 거친 텍스트 데이터에 대해서 단어별 빈도를 확인하고 WordCloud를 생성하도록 하겠습니다. WordCloud를 통해 전체 리뷰 데이터에서 많이 언급된 단어들을 확인하고 냉동 만두 구매 과정에서 생기는 다양한 생각과 경험들을 한눈에 살펴보도록 하겠습니다.

3-2) LDA 토픽 모델링으로 주요 토픽과 핵심 단어 추출

텍스트 데이터에 LDA 토픽 모델링을 적용하여 전체 리뷰 텍스트의 주요 토픽들을 도출하겠습니다. 그리고 각 토픽별 핵심 단어들을 추출하여 앞서 WordCloud를 통해 얻어낸 인사이트를 조금 더 구체화하여 보겠습니다. WordCloud도 마찬가지이지만 토픽 모델링의 경우 분석된 결과에 대해 추가적인 해석의 과정이 필요합니다. 이는 분석하는 사람의 몫이며 도메인 지식과 개인의 분석 역량에 따라 다양하고 주관적인 해석 결과가 나올 수 있습니다. 불행 중 다행인지는 모르겠지만 이번에 도출된 결과물의 경우에는 도메인 지식 없이도 누구나 충분히 해석이 가능한 것으로 보입니다. 


(4) 프로젝트 플로우 차트 (Flow Chart)

+ Recent posts