Paper review/Natural Language Processing

BERTopic: Neural topic modeling with a class-based TF-IDF procedure

언킴 2023. 2. 20. 14:45
반응형

Contents

     

    Abstract

    토픽 모델링은 수집된 문서 내에서 잠재되어 있는 토픽을 추출하는 기법이다. 본 연구에서는 Clustering task를 기반으로 토픽을 추출하는 기법인 BERTopic 기법을 제안한다. BERTopic은 class-based TF-IDF 기법을 통해 토픽을 추출한다. 구체적으로 사전 학습된 트랜스포머 모델을 사용해 문서 임베딩을 생성한 후, class based TF-IDF 기법을 사용하여 토픽 representation을 생성한다.

     

    Introduction

    전통적인 토픽 모델링 기법으로는 LDA(Latent Dirichlet Allocation)과 NMF(Non-Negative Matrix Factorization) 기법이 있다. 그러나 이와 같은 기법은 단어 간의 관계(Relationship)를 고려하지 못한다는 단점이 존재한다. 이와 같은 문제를 고려하여 임베딩을 생성하기 위해 Top2Vec, Doc2Vec, HDBSCAN 등과 같은 기법을 활용하여 토픽 모델을 구축하였다. HDBSCAN과 같은 기법의 경우 Clustering 기법이기 때문에 군집의 중심(Centroid)에 근접한 단어가 해당 군집을 대표하는 토픽이라는 것을 가정한다. 그러나 실제로 문서의 토픽이 클러스터의 중심 부근에 있지 않을 수도 있기 때문에 모든 문서에 대해 위 가정이 성립하지 않는다. 

     

    본 연구에서는 위 문제를 해결하기 위해 BERTopic 기법을 제안한다. BERTopic 기법은 클러스터링 기반 기법과 class-based TF-IDF 기법을 사용하여 토픽 representation을 생성한다. 구체적으로, 먼저 document-level 정보를 바탕으로 사전학습된 모델을 사용하여 문서 임베딩을 도출한다. 그 다음으로, 문서에 대한 군집을 생성하기 전에 차원을 축소하고 class-based TF-IDF 기법을 적용하여 각 토픽에 대한 topic representation을 생성한다. 

     

    BERTopic

    Introduction에서 설명했듯, BERTopic은 Document Embedding, Document Clustering, Topic Representation 총 3단계로 구성되어 있다. 먼저 Document Embedding 단계에서는 Sentence-BERT(SBERT)를 사용하여 문서 임베딩을 생성한다. 그 다음 단계인 Document Clustering 단계에서는 PCA, t-SNE 보다 성능이 우수하다고 알려진 UMAP을 사용하여 차원을 축소한다. 그 다음으로 군집화를 하기 위해서 Hierarchical-DBSCAN(HDBSCAN)을 사용하여 문서를 군집화한다. 마지막 단계인 Topic Representation 단계는 class-based TF-IDF 기법을 사용한다. 

    \[ W_{t, c} \ tf_{t, c} \cdot \log(1 + \frac{A}{df_t}) \]

    $t$는 빈도를 의미하고, $c$는 클래스를 나타낸다. 이때 $c$는 각 군집에 대한 단일 문서로 연결된 문서 collection을 의미한다. 

     

    Dynamic Topic Modeling

    기본적으로 전통적인 토픽 모델링은 정적 모델링으로 Sequential 정보를 고려하는 것이 어렵다. 반면에 BERTopic의 경우 c-TF-IDF 를 활용하기 때문에 동적 모델링이 가능하다. 이를 위해 문서의 토픽의 시간적 특성이 글로벌적으로 영향을 미치지 않는다고 가정한다. 즉, 같은 단어가 다른 시간대에 확인되더라도, 서로 다른 표현이 도출된다. 예를 들어, 자동차와 관련된 global token이 1990년에는 "자동차", "오토바이" 등이 도출되지만, 2023년이나 그 이후에는 "테슬라", "자율주행"등과 같은 단어가 토픽으로 추출될 것이다. 

     

    Evaluation

    본 연구에서는 BERTopic의 성능을 검증하기 위해, LDA, NMF, T2V-MPNET, T2V-Doc2Vec, CTM 기법을 베이스라인으로 구축하고 실험을 진행하였다. TC는 topic coherence를 의미하고, TD는 topic diversity를 의미한다. TC는 Normalized Pointwise Mutual Information (NPMI)를 평가하며, -1에서 1사이의 값을 가진다. TD는 토픽의 다양성을 의미하며, 0에서 1사이의 값을 가진다. 

     

    실험 결과, TC의 경우 Trump 데이터셋에서는 가장 우수한 성능을 보였고, 20 NewsGroups, BBC News에서는 경쟁력있는 성능을 보여주었다. 그 다음으로는 모델의 안정성을 검증하기 위해 BERTopic에서 다양한 언어 모델을 사용하여 실험을 진행하였다. 

    그 다음 실험은 Dynamic Topic Modeling에 대한 것이다. 실험 결과, TC는 매우 우수한 것으로 확인되며, TD에 대해서도 나쁘지 않은 성능을 보이는 것을 확인하였다. 

    마지막 실험은 Wall Time, 즉 소요 시간을 의미한다. 실험 결과, MP-NET SBERT를 사용한 CTM의 경우 다른 모델에 비해 매우 느린 것을 확인할 수 있다. CTM의 경우 성능이 우수하지만, 속도를 비교하면 BERTopic이 매우 효율적인 것을 확인할 수 있다. 

     

     

    Strengths

    BERTopic의 장점은 총 3가지로 정리할 수 있다. 첫 번째, BERTopic은 언어 모델에 상관없이 매우 경쟁력 있는 성능을 유지하는 것을 확인할 수 있다. 두 번째, 토픽 모델링 단계와 문서를 생성할 때 서로 다른 전처리 방법을 수행할 수 있다. 예를 들어, 토픽에서는 불용어를 제거하고 싶지만, 문서 임베딩을 생성하기 전에는 제거하지 않는 방법도 가능하다. 세 번째, class-based TF-IDF 방법을 사용함으로써 토픽을 단어의 분포로 나타낼 수 있다. 

     

    Weakness

    그러나 BERTopic의 모델 역시 완벽한 것은 아니기 때문에 다음과 같은 문제점이 존재한다. 첫 번째, BERTopic은 각 문서들이 오로지 하나의 토픽으로 구성되어 있다는 것을 가정한다. 즉, 문서 내에 다양한 토픽이 존재하지 않는다는 것을 가정한다. 두 번째, BERTopic 자체는 transformer 기반이기 때문에 문서의 contextual 정보를 고려할 수 있으나, topic representation 은 BoW에서 생성되기 때문에 이를 직접적으로 설명하는 것이 어렵다.