우리는 단어 임베딩을 할 때, LSA를 써서 단어 임베딩의 품질을 높였다.
LSA를 사용하면 중심 단어와 문맥 단어(주위단어) 간의 내재적인 의미를 효과적으로 보존하고, 입력 데이터의 노이즈,희소성(sparsity : 행렬에 0많은 것 해결) 을 보완 가능하다.
하지만 우리는 LSA의 성질을 사용하여 문장임베딩도 가능하다.
1. 일단 형태소 분석기를 통해 문서들 내의 명사를 추출한다.
2. TF-IDF행렬을 만든다. (단어가 특정 문서에 어느정도의 영향을 끼치고 있는가를 수치적으로 표현 가능)
3. LSA를 하여(TruncatedSVD이용) 품질을 보존 한 채, 차원축소
4. 특정 문서를 가장 특징지을 수 있는 단어들(특정 문서의 정보성이 높은 단어들 = TF-IDF가 높은 단어)을
문서를 대표하는 단어로 여김
5. 이를 통해 문서들간의 차이점과 유사점들을 수치적으로 받아올 수 있음(문장 임베딩 완료)
'Tensorflow 2 NLP(자연어처리) > 문장 임베딩' 카테고리의 다른 글
[4-5] 잠재 디리클레 할당(LDA, Latent Dirichlet Allocation)이란? + 베이즈 정리,깁스 샘플링 (0) | 2021.11.13 |
---|---|
[4-4] Word2Vec에서 Doc2Vec까지 (0) | 2021.11.13 |
[4-2] PCA(주성분 분석)와 SVD(특이값 분해) 차원축소를 완벽하게 이해하기 (0) | 2021.11.13 |
[4-1] 가중 임베딩, SIF(Smooth Inverse Frequency)란? (0) | 2021.11.13 |