정보공간_1

[6기 신촌 김상훈] 텍스트 마이닝 #1 본문

IT 놀이터/Elite Member Tech & Talk

[6기 신촌 김상훈] 텍스트 마이닝 #1

알 수 없는 사용자 2014. 9. 15. 14:41

안녕하세요. 신촌멤버십 22-2기 김상훈입니다.

이번 포스팅에서는 텍스트 마이닝에 대한 전반적인 개념에 대해 알아보겠습니다.


#소개

 텍스트 마이닝은 데이터 마이닝에 텍스트를 적용한 것으로, 텍스트 문서를 대상으로 컨텐츠에 포함된 명시적인 사실의 집합으로부터 메타적인 규칙을 추출하는 것입니다. 텍스트 마이닝은 비정형/반정형 텍스트 데이터에서 자연어처리 기술에 기반하여 방대한 텍스트 덩어리에서 의미있는 정보를 추출해내고, 다른 정보와의 연계성을 파악하여, 단순한 정보검색 그 이상의 결과를 얻어내는 것입니다. 컴퓨터가 인간이 사용하는 언어를 분석하고 그 안에 숨겨진 정보를 발굴해 내기 위해서 대용량의 언어자원과 통계적, 규칙적 알고리즘이 사용됩니다. 이번 포스팅에서는 이러한 텍스트 마이닝에서 사용되는 여러 자원들과 알고리즘에 대해 간단히 알아보겠습니다.


#사용 분야

 먼저 텍스트마이닝이 사용되고 있는 분야에 대해 알아보겠습니다. 주요 응용분야로는 문서 분류, 문서 군집, 정보 추출, 문서 요약 등이 있습니다. 문서 분류는 웹 크롤링을 통해 데이터를 수집할 때 텍스트 마이닝을 통해 해당 문서의 카테고리를 분석하고 이를 분류하는 것입니다. 맛집 데이터 수집을 예로 들면 블로그 포스팅을 분석하여 해당 포스팅이 어느 지역에 해당하는지 또는 음식이 한식,양식,중식인지 이러한 카테고리를 분석하고 이를 분류하는 것입니다. 문서 요약은 포털사이트나 뉴스사이트에서 뉴스 요약을 위해 자주 사용되는데, 뉴스 전문에서 가장 중요하다고 여겨지는 문장들을 추출하여 사이트 메인에 뉴스를 요약하여 보여줍니다.


#오피니언 마이닝

 또한 요즘에는 텍스트마이닝의 한 분류로 자리를 잡은 오피니언마이닝이 대두되고 있습니다. 오피니언 마이닝은 문서로부터 사용자가 게재한 의견과 감정을 나타내는 패턴을 이용해 특정 오브젝트에 대한 의견이 긍정인지 또는 중립, 부정인지를 찾아내는 기술입니다. 오피니언 마이닝은 특정 서비스 및 상품에 대한 시장규모 예측, 소비자의 반응, 입소문 분석 등에 활용되고 있습니다. 소셜미디어, 블로그, SNS를 통해서 많은 사람들의 의견들이 수 없이 쏟아져 나오는 지금 오피니언마이닝은 더욱 각광받는 기술이 될 것입니다.


#사용 기술 및 자원

*형태소 분석

 형태소 분석은 자연언어 분석의 첫 단계로써, 입력문자열을 형태소열로 바꾸는 것입니다. 다음은 한나눔형태소분석기를 사용하여 "학교에서조차도 그 사실을 모르고 있었다" 라는 문장의 품사를 분석한 것입니다.


* 사전

 사전 또한 텍스트마이닝에서 사용하는 중요한 자원입니다. 오피니언마이닝에서 사용하는 감성사전이 그 대표적인 예 인데, 감성사전에 맛있다라는 단어와 좋다라는 단어가 긍정이 0.9라는 수치를 가지고 있다는 정보를 가지고 있다면, "이 맛집 정말 맛있고 분위기도 좋았어요"라는 문장의 감성을 쉽게 분석할 수 있을 것입니다. 물론 이러한 분석을 용이하게 하기 위해서 의사결정트리, Naive Bayes, SVM 등의 알고리즘들이 사용되지만 사전은 그 기초가 되는 중요한 자원이 됩니다. 영어는 SentiWordNet에서 다양한 단어들을 분석하여 감성 사전을 구축해 놓았습니다. SentiWordNet 홈페이지 http://sentiwordnet.isti.cnr.it 에서 확인해 볼 수 있습니다.


* 의사결정트리

 의사결정트리는 어떻나 것에 대한 예측뿐만 아니라 실제로 어떠한 결과가 나오게되는 이유를 추론하는데 유용한 방법입니다. 의사결정트리를 이용한 데이터 분석 결과는 Human readable한 트리 구조로 표현되기 때문에 결과를 쉽게 이해하고 어떻게 결과가 도출되었는지 알 수 있다라는 장점이 있습니다.


* Naive Bayes Classifier

 Naive Bayes Classifier는 기반 확률 모델은 강한 독립가정을 적용한 베이즈 정리에 기반하고 있는 독립특징모델입니다. 구상 및 가정이 매우 단순함에도 불구하고 높은 정확도를 보이는 것이 특징입니다.


* Support Vector Machine

 SVM은 현재 세계적으로 가장 많이 사용디고 있는 부류알고리즘이며 Optimal hyperplane(초평면)과 kernel function(커널함수)를 사용하여 class를 분류합니다. 머신러닝을 통해 초평면 또는 커널함수를 최적화하여 최고의 예측률을 보여주는 조건을 찾아야합니다.



다음 포스팅에서는 의사결정 트리를 사용한 텍스트 마이닝에 대해 알아보겠습니다.