+ 개발

토픽 모델링(Topic Modeling)의 이해와 활용

AI.Logger 2024. 9. 12. 00:16
  • 수업 내용 리마인드 및 아카이빙 목적의 업로드


 

토픽 모델링(Topic Modeling) 들어보셨나요? 문서들이 많을 때, 그 문서들이 어떤 주제를 다루고 있는지 자동으로 찾아내는 기법을 말해요. 예를 들어, 우리가 뉴스 기사를 수백 개 모아 놓고 주제별로 분류하려고 할 때 이 기법을 활용할 수 있답니다. 그중에서도 특히 많이 쓰이는 방법이 바로 LSA(잠재 의미 분석)LDA(잠재 디리클레 할당)예요. 오늘은 이 두 가지 기법을 하나하나 차근차근 설명해드릴게요.

 

1. 토픽 모델링이란?

토픽 모델링은 말 그대로 문서 속에서 주제(토픽)를 찾아내는 기법이에요. 예를 들어, 어떤 문서가 "경제"와 "기술"에 대한 이야기를 하고 있다면, 그 문서에서 "경제"와 "기술" 관련 단어들이 많이 등장하게 되겠죠? 이렇게 자주 등장하는 단어들을 바탕으로 그 문서의 주제를 찾아내는 과정을 토픽 모델링이라고 해요.

이 방법을 사용하면 문서 집합을 주제별로 나눌 수 있고, 각 문서가 어떤 주제를 다루고 있는지 쉽게 파악할 수 있어요. 그리고 이걸 잘 활용하면 트렌드 분석이나 문서 간의 유사성도 알아낼 수 있답니다.

 

2. LSA(잠재 의미 분석, Latent Semantic Analysis)

1) LSA란?

LSA는 문서 속에서 단어들이 함께 등장하는 패턴을 보고, 문서들이 어떤 주제를 다루고 있는지 알아내는 방법이에요. 간단히 말하면, 같은 문서에서 자주 등장하는 단어들이 같은 주제를 나타낸다고 보는 거예요. 예를 들어, "고양이"와 "귀엽다"라는 단어가 자주 같이 나온다면, 그 문서는 아마도 "귀여운 고양이"라는 주제를 다루고 있겠죠?

 

2) LSA는 어떻게 작동할까?

LSA는 TDM(문서-단어 행렬)이라는 걸 기반으로 해요. 이 행렬은 문서와 단어 간의 관계를 숫자로 표현한 거예요. 하지만 단순히 단어가 몇 번 등장했는지만 보는 건 의미를 충분히 반영하지 못해요. 그래서 LSA는 이 TDM에 숨겨진 의미를 찾아내기 위해 벡터 기반 분석을 사용해요.

 

3) SVD(특이값 분해)의 역할

SVD(특이값 분해)라는 수학적 기법이 LSA의 핵심이에요. TDM을 세 개의 작은 행렬로 쪼개서 더 간단하게 만드는 거죠. 이렇게 하면 차원을 줄여서 문서 간의 관계를 분석하기가 훨씬 쉬워져요. 이 과정을 통해서 문서와 단어의 유사도를 쉽게 파악할 수 있답니다.

 

4) LSA의 한계

LSA는 차원을 축소하면서 약간의 정보 손실이 있을 수 있어요. 그래서 의미가 왜곡될 가능성도 있지만, 문서들 간의 유사성을 빠르게 파악할 수 있는 장점이 있어요.

 

3. LDA(잠재 디리클레 할당, Latent Dirichlet Allocation)

1) LDA란?

LDA는 문서 속에 여러 가지 주제가 섞여 있다고 가정하고, 각 단어가 어느 주제에 속하는지를 확률적으로 할당하는 기법이에요. 예를 들어, 어떤 문서가 "경제"와 "기술" 주제를 섞어서 다루고 있다면, 문서 내에서 등장하는 단어들이 경제와 기술 관련 주제에 각각 나뉘어 속하게 되는 거죠.

 

2) LDA의 작동 방식

LDA는 디리클레 분포라는 걸 사용해 문서 안에 있는 주제들의 비율(θd)과 주제 내에서 어떤 단어들이 많이 등장하는지(Φk)를 계산해요. 이 과정에서 각 단어가 어느 주제에서 나온 것인지 확률적으로 정하는 거죠.

LDA가 작동하는 단계는 다음과 같아요.

  • 문서에서 주제들이 차지하는 비율을 정해요.
  • 각 주제에서 많이 나오는 단어들을 정해요.
  • 문서 속 단어들이 어떤 주제에서 나왔는지 확률적으로 선택해요.

3) Generative 모델과 Inference 모델

  • Generative 모델은 문서가 어떻게 생성되었는지를 설명해요. 즉, 문서가 여러 주제를 섞어서 만들어졌다고 보는 거죠.
  • Inference 모델은 문서의 데이터를 바탕으로 주제와 단어 간의 관계를 추론해요. 이 과정을 통해 LDA 모델을 학습하게 됩니다.

4) Gibbs Sampling

LDA에서 주로 사용하는 기법은 Gibbs Sampling이에요. 각 단어에 임의의 주제를 할당한 뒤, 이 할당을 반복적으로 재조정하면서 최적의 주제를 찾아내는 과정이에요. 조금 복잡해 보이지만, 쉽게 말해 계속해서 맞는 주제를 찾아가는 방법이라고 생각하면 돼요.

 

5) LDA의 한계

LDA는 샘플링 방식이기 때문에 매번 실행할 때마다 조금씩 다른 결과가 나올 수 있어요. 또, 주제의 수(K값)를 설정하는 것도 까다로워요. 주제 수를 잘못 설정하면 결과가 원하는 대로 나오지 않을 수 있답니다.

 

4. LSA와 LDA의 차이점

  • LSA는 차원을 축소해서 단어와 문서 간의 관계를 찾는 방법이고, LDA는 단어들이 어떤 주제에 속하는지를 확률적으로 계산해요.
  • LSA는 수학적 기법(SVD)을 사용하고, LDA는 확률 모델을 기반으로 해요.
  • LSA는 문서들 간의 유사성을 분석하는 데 강점이 있고, LDA는 주제 간 비율을 파악하는 데 더 적합해요.