제 1회 Data Science Meetup 후기
지난주 갑작스럽게 올린 공지에도 불구하고, 거의 서른분에 가까운 참가자분들과 함께 어제 Data Science Meetup을 성황리에 마칠 수 있었습니다. Meetup을 마치고 집에오는 길에 '오늘도 참 많이 배웠다'고 느꼈기에 '성공'이라는 말을 쓸 수 있을 것 같습니다. 여러가지 진행상의 미비점에도 불구하고 흥미있는 이야기를 전해주신 발표자 분들과 소중한 저녁 시간을 내주신 참가자 분들께 공을 돌리고 싶습니다. 물론 장소 및 다과 준비를 후원해주신 NexR의 한재선 박사님, 전희원님께도 다시한번 감사드립니다.
어제 모임의 성과가 더 많은 분들께 도움이 되었으면 하는 바램에서, 간단한 모임 후기 및 내용요약을 올려봅니다. 물론 Exponential Decay를 자랑하는 제 기억이 날아가기 전에 어제의 배움을 간직하고자 하는 의도가 큽니다 ;) 제가 행사 진행 관계상 메모를 많이 하지 못했기 때문에, 참가자 및 발표자 분들의 더 풍부한 후기를 기대해 봅니다. 관련 트윗을 올려주시거나 검색하시려면 해시태그 #dsci2012를 (관련 트윗 검색 링크) 써주시면 되겠습니다.
Opening & Introduction
제가 맡은 오프닝은 Data Science / Data Scientist에 대한 Jeff Hammerbacher와 Hillary Mason의 정의를 인용하는 것으로 시작했습니다. Jeff의 정의는 데이터 관련 제품과 의사결정이 필요한 조직의 관점에, Hillary의 정의는 Data Scientist가 가져야 하는 스킬의 다양성에 촛점을 맞춥니다.
Organizations use their data for decision support and to build data-intensive products and services. The collection of skills required by organizations to support these functions has been grouped under the term "Data Science". - J. Hammerbacher
A data scientist is someone who can obtain, scrub, explore, model and interpret data, blending hacking, statistics and machine learning – H. Mason
또한 이런 문제를 해결하기 위한 Technique은 시스템 인프라 / 데이터 준비 / 분석 및 프리젠테이션으로 나누어 보았습니다. 제가 처음에 만든 표에는 Data Preparation을 빼먹었었는데, 분석에 적합한 형태로 데이터를 준비하고 가공하는 것은 분석 및 그 이후 처리의 성패에 결정적인 경향을 주는 중요한 단계입니다. Exploratory data analysis는 그 자체가 목표이기도 하지만, 다른 문제 해결의 기반이 되기도 한다는 Insightful한 지적도 나왔습니다.
Data Scientist라는 새로운 직군을 규정하는 다음 다이어그램도 소개했습니다. 도메인에 대한 심도있는 이해를 바탕으로, 데이터 전처리 및 분석의 모델을 만들고, 이를 실제 구현하여 검증까지 할 수 있는 종합적인 스킬을 요구받는다는 측면에서 Data Scientist는 기존 Domain Expert, Programmer, Researcher와는 구별되는 개념입니다.
세션 직전에는 참가자분들의 소개가 있었습니다. 학교, 연구소 및 기업에서 오신 참가자 분들께서 어떤 Data Problem을 어떤 Technique을 사용하여 다루시는지에 대해 소개해 주셨습니다. 들으며 Data Science의 정의가 정말 폭넓다는 생각을 했스비다. 많은 분들께서 인터넷 / 통신 / 게임회사 등의 Log Data분석을 담당하고 계셨지만, SNS, 제품 설계 및 금융상품 디자인에 이르기까지 다양한 문제를 언급해 주셨습니다.
Presentation Session
이후에 각 참가자의 발표가 이어졌습니다. 저는 From Data Science to Information Retrieval라는 제목으로 정보 검색이라는 저의 연구분야를 Data Science관점에서 설명하고, 검색과 추천 기법간의 관계를 비교했습니다. 마지막으로, 검색 연구에 대한 간단한 소개 차원에서 저의 ECIR / CIKM 논문 주제였던 Field Relevance Model을 소개해 드렸습니다.
이후, Neowiz의 김경민님께서 Graph DB를 사용해 약 700만에 달하는 대용량 데이터 환경에서 Pairwise Affinity계산을 통하여 친구추천을 하는 기법을 다루어 주셨습니다. 서울대 대학원의 강민석님께서는 Social Graph, Music, Geolocation등 이종의 그래프 데이터를 하나의 Heterogeneous 그래프로 통합하고, 이 그래프에서 추출된 Path 정보를 결합하는 방식으로 추천 등 다양한 그래프 기반의 Task성능을 높이는 방법을 소개해 주셨습니다. KIST의 박호건 연구원께서는 SNS에서 마이닝한 시그널을 바탕으로 TV 스포츠 중계 편집을 자동화 / 지능화하는 솔루션을 설명해 주셨습니다. SNS 데이터가 전통적인 미디어라고 할 수 있는 TV 시청의 사용자경험을 최적화하는데 사용될 수 있다는 가능성이 새로웠습니다.
휴식에 이어 Zum Internet 김우승님의 Infrastructure관련 세션이 이어졌습니다. (우승님의 블로그에서 빅데이터에 대한 좋은 글을 많이 보실 수 있습니다.) RDBMS 기반으로 진행되던 고객사의 Log Mining작업을 Hadoop기반으로 바꾸는 과정에서 있었던 이슈를 상세히 설명해 주셨습니다. 현업에서 빅데이터 프로젝트를 하는데 있어서, 의사결정권자를 설득하는 어려움, 또한 적절한 조직구조의 중요성을 말씀해 주셨습니다. 또한 기존의 Analytical Technique (e.g., Machine Learning) 빅데이터 플렛폼에 효과적으로 사용되기 위해서 많은 수정 및 최적화가 필요하다는 말씀을 해주셨습니다.
마지막으로 제가, Data-driven Pursuit of Happiness라는 제목으로 길게는 10년간, 짧게는 최근 6개월간 진행한 Self-tracking 프로젝트에 대해 설명했습니다. 데이터를 통한 분석이 개인의 행복과 성취를 극대화하는데 도움을 줄 수 있다는 것이 요지였습니다.
Discussion
마지막으로 Data Science와 관련된 주제를 놓고 참가자들간의 열띤 토론이 있었습니다. 우선, 유행어처럼 사용되는 Big Data 및 관련 기법이 Data Science관점에서 어떤 의미를 갖는지에 대해 의견을 나누었습니다. 김우승님께서, 소량의 데이터를 분석하기나 대용량 데이터의 Sample을 분석하는 기법에 비하여 Big Data 관련 기술은 데이터 전체를 (모집단) 대상으로 하여 처리 및 분석이 일어난다고 명쾌하게 정리해 주셨습니다. Big Data Analytics에 대해서는 훨씬 많은 연구가 필요하다는 의견도 주셨습니다. (제가 이에 관련하여 Jimmy Lin 교수의 MapReduce 알고리즘 책, 혹은 최근에 나온 Mining Massive Dataset 책을 추천해 드렸습니다. 둘다 PDF로 공개되어 있습니다.)
하지만, Hadoop등의 기술이 Key-Value로 나누어질 수 있는 데이터에 대한 Batch Processing에 최적화된 관계로, 이와 다른 요구 사항이 있을 때에는 R이나 RDBMS등의 대체 솔루션을 사용해야 한다는 지적도 나왔습니다. 전희원님께서 데이터를 Memory한계까지 R에 로딩하여 처리했던 경험을 공유해 주셨습니다. 저의 경우에도 인턴 프로젝트에서 Exploratory Data Analysis를 위해 대용량 원본 데이터를 샘플링하여 MS SQL Server에서 작업을 진행했던 경험이 있습니다. 결국, Opening에서 소개한 표의 각 단계에 해당하는 분석 작업에 맞는 도구를 사용하는 것이 답이라는 결론이었습니다. 아직 Prototype에 머물고 있지만 HadoopDB와 같은 Hybrid Solution도 잠재적인 대안이 될 수 있겠습니다.
두번째로 Data Scientist의 Role과 Skill, 그리고 장기적인 Career Path에 대한 토론이 있었습니다. Data Scientist가 기존 개발자 및 연구자의 역할을 그럴듯하게 부르는 것에 지나지 않는다는 지적에 대해, 위에서 소개한 다이어그램에서처럼 다양한 역할을 종합적으로 수행하는 점에서 Data Scientist의 존재가치가 있다는 반박이 나왔습니다. 이와 관련하여, 예컨데 검색 모델을 만드는 과업에서 도메인 Expert 및 인프라 Engineer와 헙의해야 빠르고도 효과적인 모델 디자인이 가능하다는 말씀을 해주셨습니다. 이를 들으며 저는, Data Scientist가 각 분야에 대한 어느 정도의 전문성을 갖추고, 필요한 경우 전문가들과 협업할 수 있는 커뮤니케이션 스킬까지 갖춘 영화감독과 같은 존재가 되어야 하겠다는 생각을 했습니다.
기타 주제로, 특히 Big Data관련 기술이 구글, 야후를 위시한 미국 회사에서 나오고 있는 현황에서, 미국과 한국, 그리고 조직간의 기술 격차에 대한 질문도 있었습니다. 또한 데이터 분석 및 처리를 위한 기법 및 그 결과물을 재활용하는 방법에 대한 의견교환도 있었습니다. 이부분에 대한 제 기억이 희미한 관계로, 참가자 분들께서 채워주시면 감사하겠습니다,
Closing Remark
7시에 시작하여 11시가 넘어서 준비한 순서를 마치고 나니, 보람은 있었지만 따뜻한 저녁도 못드신 참가자 분들에 대한 죄송스러운 마음이 들었습니다. 시간이 너무 늦은 관계로 다음주에 뒷풀이(?) 및 대화의 시간을 갖기로 하고 헤어졌습니다. 휴가답지 않게 12시까지 저녁도 못먹었지만, 여러 고수님을 뵙고, 많이 배웠다는 마음에 뿌듯한 밤이었습니다. 아직 공식적인 학위도 받지 않는 학생 신분으로 이런 모임을 주최하는 것이 많이 주제넘는 일이라고 생각했지만, 참가자분들의 열성에 그런 마음을 잊을 수 있었습니다.
p.s. 마지막으로, 어제 제가 사용한 발표자료 (Opening / From Data Science to Information Retrieval / Data-driven Pursuit of Happiness 합본) 공유합니다. 발표자 분들께서 허락을 받는대로 다른 발표자료도 공유하도록 하겠습니다.
1st Data Science Meetup in Seoul [pptx]
NexR, Seoul, Korea, May 18, 2012.
또한, Meetup 참가자 및 발표자 분들께서 추가하실 사항이 있으시면, 더 많은 분들과 굥유될 수 있도록 여기 댓글로 남겨주시면 감사하겠습니다. 기타 의견 및 궁금증도 환영입니다!