더북(TheBook)

문서의 행렬 표현

문서를 분류하려면 문서를 기술하는 표현을 문서로부터 추출하고, 이로부터 분류를 예측하는 알고리즘을 만들어야 한다. 문서의 행렬 표현 방식은 이러한 목적으로 가장 많이 사용되는 기법이다.

단어-문서 행렬과 문서-단어 행렬

단어와 문서의 행렬로 Corpus를 표현하려고 할 때는 TermDocumentMatrix( ) 또는 DocumentTermMatrix( )를 사용한다. 이들 중 TermDocumentMatrix( )는 주어진 문서들로부터 단어를 행, 문서를 열로 하는 행렬을 만든다. 반대로 DocumentTermMatrix( )는 문서를 행, 단어를 열로 표현한다.

표 10-15 단어-문서 또는 문서-단어 행렬

tm::TermDocumentMatrix : 코퍼스로부터 단어-문서 행렬을 만든다.

tm::TermDocumentMatrix(
  x,  # 코퍼스
  # 제어 옵션
  # - bounds: 태그가 global인 리스트로 단어의 최소, 최대 허용 출현 횟수를 지정한다.
  # 예를 들어, list(global=c(3, 10)) 3회 미만 또는 10회 이상 발견된 단어를 제외한다.
  # 기본값은 모든 단어를 포함시키는 list(global=c(1, Inf))다.
  # - weighting: 행렬의 각 셀에 저장할 값을 계산하는 가중치 함수를 지정한다. 기본값은 단어의
  # 출현 횟수를 세는 weightTf다.
  # 이외에도 weightTfIdf, weightBin, weightSMART를 지정할 수 있다.
  control=list(),
  ...  # weighting에 추가로 넘겨줄 인자
)

반환 값은 단어-문서 행렬이다.

tm::DocumentTermMatrix : 코퍼스로부터 문서-단어 행렬을 만든다.

tm::DocumentTermMatrix(
  x,  # 코퍼스
  # control ...의 의미는 TermDocumentMatrix()와 같다.
  control=list(),
  ...,
)

반환 값은 문서-단어 행렬이다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.