2010년 5월 29일 토요일

Text Mining 2

텍스트마이닝의 정의


텍스트마이닝은 데이터마이닝 기법의 텍스트 적용이라는 관점으로 1차적으로 정의할 수 있습니다.
이런 맥락에서 텍스트마이닝을 다음과 같이 정의할 수 있습니다.

  • 텍스트 마이닝

     -  텍스트 문서를 대상으로, 컨텐트에 포함된 명시적인 사실의 집합으로부터 메타적인 규칙을 추출하는 것


이 정의는 데이터 마이닝의 텍스트에 대한 응용 이상을 벗어나지는 않습니다.  여기서 초점을 ‘텍스트’에 두면  ‘텍스트’를 대상으로 한다는 점에서 텍스트 마이닝은 데이터 마이닝과는 구별되는 특성을 가질 수 있습니다.
이를 반영하여, Wikipedia에서는 텍스트 마이닝을 다음과 같이 정의하고 있습니다.

  • 위키피디어의 텍스트 마이닝 정의

 


 


























  • 텍스트마이닝과 데이터마이닝의 비교


















특성추출(Feature Extraction)

1. 특성추출의 정의


데이터마이닝에서의 특성 추출(Feature Extraction)은 알고리즘 적용 대상인 입력 데이터가 처리하기에 너무 거대하고 데이터 내부에도 중복이 매우 심할 때, (즉 데이터는 많지만, 실제 ‘정보’는 많지 않을 경우) 해당 입력 데이터를 특성들의 집합의 형태로 요약된 표현으로 변환하는 것입니다.
텍스트마이닝에 있어 입력 데이터인 문서/텍스트에 대한 특성 추출 결과는 명사 위주의 키워드를 특성으로 보고, 그들의 벡터 형태로 표현됩니다.
이러한 모델은 각 키워드간의 연관 관계를 고려하지 않은 형태의 추상화이고, 보통 “Bag of Words” 모델이라고 부릅니다.

2. Bag of Words 모델

이는 자연어 처리 및 정보 검색에서 사용되는 텍스트 간략화/추상화를 위한 가정이다. 여기에서 텍스트는 순서가 없는 단어의 집합으로 가정됩니다. (문법 및 단어 순서는 무시됩니다.)
이 모델을 통한 특성 추출 결과는 단어 별로 빈도 등의 가중치를 적용한 Word-Weight의 벡터이다. 이것이 텍스트마이닝에서 흔히 이야기하는 ‘특성 벡터’입니다.

image:semantic_technology_03_5_1.jpg

문서요약(Document Summarization)

1.문서분류의 정의
문서 요약 (혹은 문서 자동 요약:  Automatic Document Summarization)은 컴퓨터 프로그램을 이용해 문서의 축약 버전을 생성하는 작업입니다.
문서 요약 과정을 통한 생산물은 원래 문서의 중요한 부분을 담고 있어야만 합니다.
정보의 홍수로 인하여 일관성(coherence)있고 정확한 요약문의 필요성은 높아져가고 있습니다. 이러한 문서 요약 기술의 활용은 구글과 값은 검색 엔진에서 볼 수 있습니다.

2. 문서 요약 기법

크게 나누어 볼 때 두 가지 접근 방법이 있습니다. 추출 요약(extraction)과 생성 요약 (abstraction)입니다.
추출 요약은 시스템이 판단할 때 중요하다 생각하는 문서의 일부분 (중요 구/문장/절)을 선택하여 제공하는 것입니다.
이에 비해 생성 요약은 원본 문서의 내용을 더 간결하게 바꿔 쓰는(paraphrasing) 작업이 추가됩니다.
즉 생성 요약은 추출 요약보다 원문을 더 강력하게 축약한다고 볼 수 있습니다. 그러나 이러한 작업은 자연어 생성 기술을 필요로 하고, 이는 아직은 성숙되지 않은 기술 분야라는 문제가 있습니다.

3. 평가

현재의 가장 큰 이슈는 평가의 문제입니다.  ‘좋은’ 요약이라는 인간의 판단은 매우 주관적이고 편차가 크므로, 이를 자동화하기는 매우 어려운 것이 현실입니다.
물론 수작업으로 평가할 수 있겠으나, 이는 시간과 노동집약적일 뿐 아니라, 평가하는 인력이 요약문뿐만이 아닌 원문 또한 읽어야 한다는 문제가 있습니다.
다른 이슈는 일관성(coherence)과 문서 내용을 충분히 반영하는 지 여부(coverage)입니다.

자동군집(Document Clustering)

1. 문서군집화의 정의

문서 군집화(Document Clustering, 혹은 텍스트 군집화(Text Clustering))는 데이터 군집화(Data Clustering)와 깊은 관계가 있습니다.
데이터 군집화는 데이터들을 각각 다른 그룹으로 분류하여, 각 그룹 내의 데이터들이 유사성을 가질 수 있도록, 즉 공통적인 특성을 공유할 수 있도록 하는 기법입니다.
이를 위한 데이터 간 근접 정도를 거리 척도(distance measure)를 이용하여 구하게 됩니다.

문서 군집화는 비지도적 문서 구조화, 자동 토픽 추출, 고속 정보 검색 혹은 필터링을 구현하는 데 사용됩니다.

2. 문서 검색과 연계된 활용

예를 들어서, 웹 검색 엔진은 가끔 수천 페이지의 검색 결과를 돌려줄 때가 있고, 이로 인해 사용자는 적합한 정보를 식별하거나 살펴보기 어렵게 됩니다.
이럴 때 군집화 기법을 적용해 자동적으로 검색된 문서들을 의미 있는 범주들로 묶어서 사용자에게 편의를 제공할 수 있다. 이를 적용한 사례들은 다음과 같습니다.

< 사례 clusty.com >
image:semantic_technology_03_3_1.jpg

< 사례 KERIS 주제별 보기 >
image:semantic_technology_03_3_2.jpg



자동분류(Document Classification)

1. 문서분류의 정의

문서 분류/범주화 (Document Classification/categorization)은 문서를 그 내용을 기준으로 하여 하나 혹은 그 이상의 범주(category)에 할당하는 것입니다.
문서 분류 작업은 두 종류로 나누어 생각해 볼 수 있습니다.
지도적(Supervised) 문서 분류는 샘플 문서들에 대한 정확한 분류 결과를 외부의 정보로서 제공되어 이를 참고할 수 있고, 비지도적(Unsupervised) 문서 분류의 경우는 외부의 정보를 참조하지 않고 수행해야만 합니다.
물론 반지도적(Semi-supervised) 문서 분류가 있을 수 있습니다. 이 경우에는 문서의 일부분에 대하여 외부 메커니즘에 의해 분류되어 있을 수 있습니다.

2. 문서 분류 기법

문서 분류에 활용되는 각종 기법들은 다음과 같습니다.

  • Naive Bayes Classifier
  • Tf-idf
  • Latent Semantic Indexing
  • Support Vector Machines
  • Artificial Neural Network
  • kNN
  • decision trees (such as ID3)
  • Concept Mining


그리고 이러한 접근 방법들은 자연어 처리에 기반을 두고 있다.


3. 응용

가장 간단하게 이를 적용해 볼 수 있는 사례는 스팸 필터링입니다. 메일 문서가 스팸인지/아닌지에 대한 이항(binary) 분류를 적용하여 접근할 수 있습니다.

이 글은 스프링노트에서 작성되었습니다.

댓글 없음:

댓글 쓰기