[논문 리뷰] BERTopic: Neural topic modeling with a class-based TF-IDF procedure

Woong·2023년 8월 30일
0

컨퍼런스/세미나

목록 보기
12/12

개요

  • class 기반 TF-IDF의 variation 을 통해 토픽 추출
  • 문서 임베딩 생성, 임베딩 클러스터링, class 기반 TF-IDF 로 토픽 표현 (topic representation) 추출
  • BERT(Bidirectional Encoder Representations from Transformers) 를 통해 맥락적 단어-문장 벡터 표현을 생성

    • 유사한 텍스트가 vector space 에서 가깝도록 텍스트의 의미를 인코딩
  • 기존 토픽 모델링 기법은 클러스터의 중심(centroid)에 근접한 단어를 클러스터를 대표하는 토픽으로 가정

    • 이 가정이 성립하지 않고 클러스터 표현이 잘못되기도 함
  • BERTopic : 토픽 표현을 생성하기 위한 클러스터링 기법 + TF-IDF 의 class 기반 transformer

    • 사전 훈련된 언어 모델로 문서 임베딩 생성
    • 문서 임베딩 차원 감소
    • 토픽 표현 추출을 위해 class 기반 TF-IDF 개발
      • (centroid 기반 관점을 극복하기 위함)

document embedding

  • 동일한 토픽을 포함하는 문서는 의미론적으로 유사(semantically similar)하다고 가정
  • BERTopic 에선 SBERT(Sentence-BERT) 프레임워크를 사용하여 임베딩
    • 의미론적으로 유사한 문서를 클러스터링
    • 토픽을 생성하는데 직접적으로 사용하진 않음

document clustering

  • 차원의 저주 (the curse of dimensionality) 를 극복하기 위해 임베딩 차원 감소

  • UMAP 사용하여 임베딩 차원 감소

    • 고차원 데이터의 local/global feature 를 낮은 투영 차원 (lower prejected dimension) 에서 보다 잘 보존
    • 클러스터링 정확도 및 시간 측면에서 향상 입증됨
  • 임베딩 차원 감소 후 HDBSCAN 을 이용해 클러스터링

    • noise 를 outlier 로 모델링되도록 허용하는 soft-clustering 기법
    • -> 관련 없는 문서를 클러스터에 할당되지 않도록 하여 토픽 표현 향상

topic representation

  • 토픽 표현은 각 클러스터 문서를 기반으로 모델링

    • 각 토픽에 대해 클러스터 단어 분포를 기반으로, 토픽간 다른 점이 무엇인지 파악
      • -> TF-IDF 를 수정하여 용어(term)의 중요성(importance) 를 표현
  • 문서를 단순히 연결하여 클러스터 내 모든 문서를 하나의 문서로 취급

    • document 를 class 로 대체 (각 클러스터 별로 연결된 하나의 document 취급)
      • 논문 내에선 class 에 대한 TF-IDF 를 c-TF-IDF 로 지칭
    • 개별 문서 대신 클러스터에서 단어의 중요성을 모델링
      • -> 클러스터 내 topic 분포 생성
  • c-TF-IDF 표현을 가장 유사한 토픽과 병합(merge)

    • -> 토픽 수를 지정한 수로 줄이기

smoothing

  • 토픽의 global 표현은 시간과는 무관, local 표현에 시간
    • timestep (시간 구간) i 에 global IDF 를 곱해 local 표현을 생성
  • 각 timestep 별로 독립적인 토픽 표현 -> 선형적으로 진화(evole)하지 않는 토픽 초래
    • -> 선형적으로 진화하는 토픽은 t timestep 이 t-1 timestep 에 의존한다고 가정
  • 각 토픽과 timestep을 L1-norm 으로 벡터 분할 -> c-TF-IDF 벡터 정규화
    • 문서 크기로 인한 토픽 표현 불균형 방지
  • 각 timestep 의 토픽에 대해 t와 t-1 에서 정규화된 C-TF-IDF 벡터 평균을 구함
    • -> t-1 토픽을 통합해 t 토픽 표현에 영향을 미치게 하여 smooth 하게 조정

성능 시험

  • Top2Vec 은 Doc2Vec 임베딩에선 성능이 좋지만, 임베딩 교체시 토픽 일관성과 다양성이 하락
  • BERTopic 은 임베딩 모델 변경하여도 유연한 성능 (이라고 논문에서 주장)

Strengths, Weaknesses

  • 장점
    • 언어 모델에 관계없이 유연한 성능을 보인다
    • 임베딩 프로세스를 토픽 표현으로부터 분리하여 미세 조정에 대한 유연성
      • (임베딩, 토픽 표현 생성시 서로 다른 전처리 가능)
    • class 기반으로 변형한 c-TF-IDF 로 토픽을 단어 분포로 표현 가능
      • 토픽의 동적, 진화적 측면을 모델링
  • 단점
    • 각 문서가 하나의 토픽만 포함한다고 가정
      • HDBSCAN이 soft clustering 기법이므로 토픽 분포를 확률 행렬로 대용하여 대응
    • transformer 기반 언어 모델로 맥락적 표현(contextual representation) 을 허용하지만, 토픽 표현 자체가 bag-of-words 에서 생성
      • -> 빈도수 기반이므로 중요도를 나타내지 그 단어의 의미 자체를 표현하지는 않는다

0개의 댓글