Topic Modeling에 이용되는 대표적인 알고리즘

Topic = 어떤 주제를 구성하는 단어들(추상적), 문서의 집합에서 토픽을 찾아내는 프로세스

-> 한 토픽을 설명하기 위해 특정 단어들이 이용 될 것, --> 이 단어 집합을 찾으려는 것이 토픽 모델링이다.

=> Word-level semantic clustering

 

토픽 분석시에 사용되는 텍스트 분석 기법

1. LSA: 분절된 단어들에 벡터값을 부여하고 차원 축소를 하여 축소된 차원에서 근접한 단어들을 주제로 묶음

2. LDA: 확률을 바탕으로 단어가 특정 주제에 존재할 확률가 문서에 특정 주제가 존재할 확률을 결합확률로 추정하여 토픽 추출

-> 문서들은 토픽들의 혼합으로 구성되어져 있으며, 토픽들은 확률 분포에 기반하여 단어들을 생성한다고 가정. 데이터가 주어지면 LDA는 문서가 생성되던 과정을 역추적 

-> 각 문서의 토픽 분포와 각 토픽내의 단어 분포를 추정

-> LDA는 단어의 순서는 신경쓰지 않음



- TDM(Term Document Matrix)

: 문서에 나타난 단어를 표로 정리한 것

-> 단어가 문서에 몇 회 출현하였는지를 정리할 수 있음

-> tm패키지에서는 corpus라는 단위의 자료형을 사용

- corpus함수로 데이터를 corpus로 변환

- corpus로 데이터형태를 변환한 후 Term Document Matrix함수 사용

https://lovit.github.io/nlp/2018/09/27/pyldavis_lda/

https://junya906.blogspot.com/2018/11/topic-modeling-konlpy-nltk-gensim.html

https://m.blog.naver.com/PostView.nhn?blogId=rickman2&logNo=221334845853&proxyReferer=https:%2F%2Fwww.google.com%2F

(LSI)

https://bab2min.tistory.com/585

<LDA의 3가지 가정>

1. 문서는 여러 개의 토픽을 지닐 수 있고 한 문서는 특정 토픽을 얼마나 지녔는지의 확률 벡터로 표현된다.

2. 하나의 토픽은 해당 토픽에서 이용되는 단어의 비율로 표현된다.

3. 한 문서에서 특정 단어들이 이용될 가능성은 위의 두 확률 분포의 곱으로 표현된다.

 

LDA는 Probablistic Latent Semantic Indexing(pLSI)의 모델의 학습할 parameter의 개수를 줄여 over-fitting을 방지, 새로운 문서에 대한 topic vector를 inference할 수 있도록 개선한 모델

--> LDA의 이해는 pLSI의 이해부터 시작하는 것이 좋다.

 

단어를 dense vector의 형태로 표현하는 방법 == word embedding

dense vector를 word embedding결과라고 하여 embedding vector라고도 부름

 

 

+ Recent posts