내용
1. LDA 기본 과정
2. LDA 알고리즘
LDA 기본 과정
LDA의 기본 가정
• LDA란, 문서에 내재되어 있는 토픽을 찾아가는 알고리즘
• 전체 문서는 여러 개별적인 문서들의 집합으로 구성되며,
• 하나의 개별 문서는 여러 개의 주제로 구성되고,
• 하나의 주제는 여러 단어들로 구성된다는 가정!

LDA 예시 문장으로 확인하기
• 아래와 같은 예시 문장
문서 1 : 우리 부모님은 건강을 위해 아침마다 수영을 하시고 저녁에는 산책을 합니다.
문서 2 : 나와 동생은 햄버거를 좋아합니다. 특히 치킨이 들어간 햄버거를 좋아하고, 어제는 피자를 먹었습니다.
문서 3 : 오늘은 나의 생일이라 햄버거를 먹었습니다. 그런데 살이 너무 많이 쪄서 산책과 수영을 시작했습니다.
• 문서 내에 몇 개의 토픽이 있을지는 사용자가 정의
• 위 예에서는 편의상 2개의 토픽(A, B)가 있다고 가정
• LDA를 진행하면
• 문서 1은 A 토픽이 존재하며, 그 단어는 빨간색으로 표시
• 문서 2는 B 토픽이 존재하고, 파란색으로 표시
• 문서 3은 A와 B 토픽이 둘 다 존재
• 할당된 단어를 확인할 결과 A는 ʻ운동’ B는 ʻ먹거리’로 토픽의 이름을 정할 수 있음
LDA 조금 더 구체적으로
문서 1 : 우리 부모님은 건강을 위해 아침마다 수영을 하시고 저녁에는 산책을 합니다.
문서 2 : 나와 동생은 햄버거를 좋아합니다. 특히 치킨이 들어간 햄버거를 좋아하고, 어제는 피자를 먹었습니다.
문서 3 : 오늘은 나의 생일이라 햄버거를 먹었습니다. 그런데 살이 너무 많이 쪄서 산책과 수영을 시작했습니다.
• 각 문서를 구성하는 토픽의 구성을 보면
• 문서 1 : 100% 토픽 A / 문서 2 : 100% 토픽 B / 문서 3 : 67% 토픽 A & 33% 토픽 B
• 또한, 각 토픽을 구성하는 단어를 보면
• 토픽 A : 건강 (20%) / 수영 (40%) / 산책 (40%)
• 토픽 B : 햄버거 (60%) / 치킨 (20%) / 피자 (20%)
• 이렇듯 확률이나 비율의 집합을 분포로 표현한 것을 Dirichlet 분포라고 함
• LDA는 문서 표면에 드러나지 않은 숨어있는 토픽의 확률 분포(Latent Dirichlet)를 가정하고 각 단어를 토픽에 할당(Allocation)하는 분석 방법
• LDA : Latent Dirichlet Allocation