Patrick's 데이터 세상

LDA(Latent Dirichlet Allocation) 본문

Machine Learning/Topic Modeling

LDA(Latent Dirichlet Allocation)

patrick610 2022. 4. 8. 18:28
반응형
SMALL




토픽 모델링은 문서 집합에서 토픽을 찾아내는 프로세스.
LDA(잠재 디리클레 할당)는 토픽 모델링의 대표적인 알고리즘이다.

문서의 토픽 혼합으로 구성되어 있으며, 토픽들은 확률 분포에 기반하여 단어들을 생성한다 가정한다.



👉🏻 Summary



문서1 : 저는 사과랑 바나나를 먹어요
문서2 : 우리는 귀여운 강아지가 좋아요
문서3 : 저의 깜찍하고 귀여운 강아지가 바나나를 먹어요

만일 LDA에 위 3문장에서 2개의 토픽(토픽 개수 k=2)을 찾으라고 요청한다.


<각 문서의 토픽 분포>
문서1 : 토픽 A 100%
문서2 : 토픽 B 100%
문서3 : 토픽 B 60%, 토픽 A 40%

<각 토픽의 단어 분포>
토픽A : 사과 20%, 바나나 40%, 먹어요 40%, 귀여운 0%, 강아지 0%, 깜찍하고 0%, 좋아요 0%
토픽B : 사과 0%, 바나나 0%, 먹어요 0%, 귀여운 33%, 강아지 33%, 깜찍하고 16%, 좋아요 16%

토픽 A는 과일, 토픽 B는 강아지에 대한 토픽이라고 판단할 수 있다.



👉🏻 Assume


LDA는 앞서 배운 빈도수 기반의 표현 방법인 BoW 행렬 DTM, TF-IDF 행렬을 입력하여 단어 순서는 상관하지 않는다.

1) 문서에 사용할 단어 갯수 N 지정
2) 문서에 사용할 토픽 홉하을 확률 분포에 기반하여 결정
3) 토픽 분포에서 토픽 T를 확률적으로 고른다
60% 확률로 강아지 토픽 선택, 40% 확률로 과일 토픽 선택
4) 선택한 토픽 T에서 단어 출현 확률 분포에 기반해 문서에 사용할 단어를 고른다.
강아지 토픽을 선택하면, 33% 확률로 강아지란 단어 선택
5) 3, 4 반복하며 문서 완성

위 과정을 통해 문서가 작성된다는 가정 하에 LDA는 토픽을 뽑아내기 위해 위 과정을 역추적하는 역공학(reverse engineering)을 수행



LSA : DTM을 차원 축소하여 축소 차원에서 근접 단어들을 토픽으로 묶는다.
LDA : 단어가 특정 토픽에 존재할 확률과 문서에 특정 토픽이 존재할 확률을 결합 확률로 추정하여 토픽 추출







출처


https://wikidocs.net/30708

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

토픽 모델링은 문서의 집합에서 토픽을 찾아내는 프로세스를 말합니다. 이는 검색 엔진, 고객 민원 시스템 등과 같이 문서의 주제를 알아내는 일이 중요한 곳에서 사용됩니다. 잠 ...

wikidocs.net

반응형
LIST
Comments