[▲왼쪽부터 MF팀 분석파트 이유정 사원, 김범주 차장]

유저들은 우리 게임에 대해 어떤 이야기를 나눌까? 오늘은 게시판에 무엇이 또 이슈일까?

게임을 만드는 개발자나 관련 업무 종사자라면 당연히 관심을 가질 수밖에 사안이다. 물론 직접 팬사이트나 카페 찾아다니며 글을 읽어도 되긴 하지만 방대한 인터넷에서 자신이 원하는 정보를 찾기란 쉽지 않다. 또 찾았다고 하더라도 파편화된 정보로 인해 오히려 정확한 이슈를 짚어내지 못할 수도 있다.

그렇다고 마냥 외면하기도 힘들다. 유저 동향 분석은 트렌드를 파악하기 위해서라도 매우 중요하고 버그나 해킹 등 민감한 문제에 대응하기 위해서라도 필수로 해야할 업무다.

김범주 MF팀 분석파트 차장과 이유정 MF팀 분석파트 사원은 29일 넥슨 판교 사옥에서 진행된 ‘넥슨 개발자 컨퍼런스 2014’에서 ‘R을 이용한 피파온라인3 소셜 분석’이라는 흥미로운 주제로 강연을 진행했다. 파트1에서는 버즈 분석을 하게 된 배경과 시행착오에 대한 공유, R을 이용한 버즈 분석 사례를 공유했으며 파트2에서는 외부 소셜 데이터 수집을 위한 크롤링 방법과 함께 R을 자동화해서 시각화하는 방법을 소개했다.

약간 어려운 단어가 나오기는 하지만 이렇게 이해하면 쉽다. ‘인터넷에 오가는 이야기를 수집해 한눈에 볼 수 있도록 작업하는 것’ 이런 활동을 총칭해 소셜 분석이라고 한다. 소셜 분석에는 여러가지 방법이 있지만 이유정 사원이 선택한 것은 버즈(BUZZ) 분석이다. ‘윙윙거리다’라는 사전적 의미가 말해주듯 버즈 분석은 트위터, 소셜 등 소셜 미디어의 웅성거림을 분석하는 것. 그럼 '피파 온라인3'에서는 어떻게 유저 동향을 파악하는지 한번 확인해보자.



■ “피파온라인3 유저들은 커뮤니티에서 어떤 이야기를 나눌까?" -소셜 분석 하기


[▲이유정 MF팀 분석파트 사원]

소셜 분석은 왜 필요할까? 이유정 사원은 첫 번째로 "자료의 객관화를 위해 꼭 필요한 작업이다"고 말했다. 가령 개발팀에서 '이번 업데이트 반응 어떻습니까?'라고 물어봤을 때 그냥 '좋은 것 같습니다'라고 말하면 참고 자료가 되지 못한다. 좋은 것 같다는 의미가 너무 애매하고 포괄적이기 때문이다.

하지만, 커뮤니티에서 글 중 언급된 글 70%, 그중 긍정동향 60%, 그래픽 언급 60%, 이런식으로 수치화시키면 동향을 파악하기 훨씬 쉽게 된다. 두 번째 이유는 유저 커뮤니케이션을 위해서다. 쉽게 말해 유저가 어떤 생각을 하고 최근 이슈가 무엇인지 파악하기 위해서 분석 작업이 필요하다는 것이다.

[▲유저 동향을 수치화시키면 더 알아보기 쉽다]

왜 필요한지 알았으니 이제 진짜 분석을 해보자. 앞서 소셜 분석 중 하나인 '버즈 분석'을 한다고 언급했다. 버즈 분석을 하기 위해서는 툴이 필요하다. 분석 툴은 여러가지가 있지만 '피파온라인3'에서는 'R'을 사용했다. 프리웨어이기 때문에 접근성이 좋고 무엇보다 활용할 수 있는 오픈소스가 많다. R을 이용해 분석을 하면 과연 어떻게 나올까?

[▲R은 일단 무료라는 게 가장 큰 장점이다]

[▲기존 패키지를 이용해]

[▲시각화 작업을 했더니]

[▲결과물이 이렇게 되었다]

보는 바와 같이 엉망이 되었다. 이 자료를 통해 알 수 있는 것은 유저들이 'ㅋ'를 쓸 때 5번(ㅋㅋㅋㅋㅋ)을 가장 많이 선호한다는 사실 하나다. 기존 패키지로 작업을 했을 때 참고했던 것이 바로 '세종 단어집'이다. 하지만, 유저들은 위 이미지처럼 단어사전에 없는 단어를 편하게 사용한다. '피파온라인3 사전'을 만들지 않으면 버즈 분석은 무의미했다.



■ 분석 과정 -피파온라인3 사전부터 만들기


[▲버즈분석의 길은 멀고도 험난하다. ]

버즈분석은 총 4단계의 과정이 필요했다. 가장 먼저 해야 할 일은 '피파온라인3 사전'을 만드는 것이다. 게임을 하는 유저들은 알겠지만 일반적으로 유저들은 채팅에 최적화된 단어를 사용한다. '파이어볼'을 '파볼'로 부르는 게 대표적인 예다. '피파온라인3' 역시 마찬가지로 특히 선수들의 이름의 경우 친근함을 표시하거나 채팅 편의를 위해서 다양하게 이름을 짓는다. 유명 축구 선수 '즐라탄'를 정리하려면 이브라, 라탄 등 선수 이름을 동의어처리 해줘야 한다.

각종 커뮤니티 사이트에 하루 동안 올라오는 '피파온라인3' 관련 게시물은 약 2천 건 정도. 양이 너무 많기 때문에 3일 치 정도 끊어서 작업한다. 괴롭긴 하지만 긍부정 사전을 만들기 위해서 모든 글을 다 읽으며 단어를 확인해야한다. 지루하고 노가다이긴 하지만 버즈 분석에서 가장 중요한 작업이기도 하다.

[▲정리하자면 이런 식이다]

[▲단어 정리를 위해서는 게시판 모든 글을 찾아서 확인해야한다]


피파온라인3 단어 사전 작업이 끝나면 단어 분석, 추이 분석, 긍부정 분석이 가능해진다. 단어 분석이란 단어의 연관성을 확인하는 것이다. 통계 자료를 보면 베일이라는 단어가 나왔을 때 상당히 높은 확률로 호날두가 언급되는 것을 확인할 수 있다. 추이 분석은 해당 단어가 일주일 동안 어떻게 언급되고 있는지는 한눈에 보여준다. 마지막으로 긍부정 분석은 해당 키워드가 유저들에게 어떻게 인식되는지 확인하는 것이다.

[▲단어의 연관성을 한 눈에 볼 수 있다]

[▲언제 어떤 키워드가 관심이 높았는지 보여준다]


[▲수치화시키면 이런식으로 세부적으로 알 수 있다]

[▲시각화 작업을 하면 이슈 키워드를 한 번에 알 수 있다]



■ 외부 데이터 수집을 위한 크롤링 방법 -R을 시각화하는 방법


[▲김범주 MF팀 분석파트 차장]

외부 소셜 분석 강연은 김범주 MF팀 분석파트 차장이 맡았다. 외부 소셜 분석은 내부 분석과 다르게 자체적으로 데이터를 가지고 있지 않다. 그래서 크롤링이라고 하는 데이터 수집 작업이 필요하다.

크롤링을 할 수 대표적인 방법이 바로 구글이다. 구글 키워드 검색으로 각종 데이터를 수집해 엑셀에 붙여넣기하면 크롤링의 기본은 끝나는 것이다. 하지만 수천개의 글을 엑셀로 하나씩 작업하기는 너무 힘들다.

그래서 김범주 차장이 사용한 것이 바로 '웹 크롤링' 방식이다. asp의 XMLHTTP를 활용해 HTML 태그값을 없애고 순수한 텍스트만 뽑아 엑셀로 정리했다. 덕분에 기존 수작업의 노동을 피할 수 있었으며 실시간 데이터 수집도 가능해졌다.

[▲수많은 커뮤니티와 소셜 미디어의 데이터를 가져와야 한다]

[▲크롤링한 데이터를 엑셀로 모으고 R에서 시각화 작업을 한]

[▲이런식의 과정을 거쳐 R자동화가 이루어진]

[▲시각화 작업을 통해 얻은 결과값]



■ 시각화 작업 -실제 업무에 활용하자


시각화 작업이 끝나면 이제 결과물을 확인할 시간이다. 재미있는 점은 같은 날짜에 데이터를 취합하더라도 내부 커뮤니티와 외부 커뮤니티의 유저 동향이 다르게 나타난다는 것이다.

김범주 차장은 "일단 모여 있는 사람의 성향부터 다르기 때문에 결과물이 다를 수밖에 없다"며 5월 18일자 시각화 자료를 보면 내부 커뮤니티에서는 게임 이야기가 주를 이뤘지만 외부 커뮤니티에서는 아스날 우승 등 스포츠에 대한 이슈가 많았다"고 말했다.

김범주 차장과 이유정 사원은 시각화된 자료를 바탕으로 실제 업무에 적용시켰다. 사무실에 별도로 대형 모니터를 설치해 실시간 이슈를 모니터링할 수 있도록 만들었으며 담당자들이 이슈에 대응할 수 있도록 버즈레포트를 만들어 배포했다. 순수하게 유저 동향을 파악하기 위해 진행한 프로젝트였지만 이제 실무에서 활용할 수 있는 의미있는 분석 자료로 활용이 가능했다.

김범주 차장은 "아직은 해당 자료를 유저 동향을 파악하는 단계에 그치고 있지만 머물고 있지만 데이터를 유저들과 쌍방커뮤니케이션 할 수 있는 방안을 모색해 보고 싶다"고 전했다.


[▲공통된 부분도 있지만 확실한 성향 차이가 있다]

[▲4월 1일 만우절 스페셜 이벤트 자료, 김흥국이 단연 압도적이다]

[▲4월 24일 팀컬러 업데이트 자료, 어떤 키워드가 이슈인지 한눈에 확인할 수 있따]

[▲부정적인 단어를 모으면 이슈 대응이 가능해진다]

[▲실시간 이슈 모니터링을 할 수 있도록 만들었다]

[▲담당자들이 이슈에 빠르게 대응할 수 있도록 버즈레포트를 만들었다]