[TIL]Day 80

이재희·2021년 2월 17일
0

TIL

목록 보기
80/312

문서분류

문서분류란?

  • 텍스트를 입력으로 받아, 텍스트가 어떤 종류의 범주에 속하는지를 구분하는 작업

다양한 문서 분류 문제들

  • 문서의 범주, 주제 분류
  • 이메일 스팸 분류
  • 감성 분류
  • 언어 분류

주제분류

  • CS논문 -> CS 주제분류(AI,DB 등등)

감성분류

  • 영화리뷰 긍부정
  • 어디에 쓰일 수 있을까?
    • 영화 : 리뷰가 긍정적인가 부정적인가
    • 제품 : 새로운 상품에 대한 반응
    • 정치 : 이 정치인에 대한 사람들의 생각은?
    • 예측 : 감성 분류를 기반으로 선거 결과를 예측
  • 감성의 여러 측면이 있을 수 있지만 여기선 간단한 작업에 집중
    - 감정적, 태도적, 성격적 측면
    - 이 텍스트는 긍정적인 태도를 보이고 있나? 아니면 부정적인 태도를 보이고 있나?

문서 분류 : 정의
input
- 하나의 문서
- 가능한 클래스의 집합 C = {c1,c2,...,cn}
output
하나의 클래스 c

문서 분류 방법들 - 규칙 기반 모델

  • 단어들의 조합을 사용한 규칙들을 사용
    ex) 어떤 단어가 들어가면 이거다 -> 메일에 주소가 블랙리스트가 있으면 스팸메일이다.
  • Precision은 높지만 recall이 낮음
  • Snorkel(규칙기반과 ML을 함께 사용하는 모델)
    • 각각의 규칙을 labeling function으로 간주
    • Graphical model의 일종인 factor graph를 사용해서 확률적 목표값을 생성하는 generative model
    • 프로젝트 초기 labeled data가 부족하거나 클래스 정의 자체가 애매한 경우(하지만 규칙을 생성하는 것은 쉽다고 가정)에 매우 유용한 방법
    • 확률적 목표값이 생성된 후에 딥모델 등 다양한 모델을 사용가능.

문서 분류 모델 - 지도학습
다양한 모델 사용 가능

  • naive bayes
  • logistic regression
  • neural networks
  • k-nearest neighbors

Naive bayes 분류기

  • naive bayes 가정과 Bag of Words 표현에 기반한 간단한 모델

Bag of Words 표현
가방에 단어를 몽땅 넣으면 순서가 없어진다

출처 https://www.programmersought.com/article/4304366575/

Naive bayes 분류기 - 수식화

  • 문서 d와 클래스 c

    P(cd)=P(dc)P(c)P(d)P(c|d) = \dfrac {P(d|c)P(c)} {P(d)}

profile
오늘부터 열심히 산다

0개의 댓글