강력한 문서 클러스터링 모델은 큰 문서 세트를 효율적으로 처리 할 수 있으므로 필수적입니다. 이 모델은 일반 연구를 포함하여 많은 분야에서 도움이 될 수 있습니다. 대형 출판물을 검색하는 것은 느리고 지루한 일이 될 수 있습니다. 이러한 모델은이 시간을 크게 줄일 수 있습니다. 우리는 미리 훈련 된 버트 모델의 다양한 변형을 조사하여 더 큰 말단 내에서 문서를 나타내는 단어 임베딩을 가장 잘 생성 할 수있는 것을 찾았습니다. 이러한 임베딩은 PCA를 사용하여 치수가 줄어들고 K-Means로 클러스터링되어 코퍼스 내의 주제를 가장 잘 구별 할 수있는 모델에 대한 통찰력을 얻습니다. 우리는 SBERT가 테스트 된 버트 변형 에서이 작업에 가장 적합한 모델임을 발견했습니다.
전제 조건 :
종속성 :이 프로젝트는이 코드를 실행하는 데 필요한 여러 파이썬 라이브러리를 사용합니다. 코드를 설치하려면 Anaconda 프롬프트에서 아래 코드 스 니펫을 실행하십시오.
pip install -r requirements.txt
파이썬 노트 : 두 개의 파이썬 노트가 있습니다 : [1] NLP_FINL_PROJECT_CODE.IPYNB 및 [2] BERT COSINE 유사성 test.ipynb
nlp_final_project_code.ipynb에는 클러스터링을위한 Bert 텍스트 임베드를 평가하기위한 코드 기반이 포함되어 있습니다. 우리는 차원 감소에 PCA를 사용하고 클러스터링에는 k- 평균을 사용했습니다. 임베딩은 별도로 계산되고 ./data 폴더의 CSV 파일에 저장됩니다.
Bert Cosine 유사성 test.ipynb에서는 문서 간의 유사성을 포착하는 Bert 임베딩의 능력을 테스트하고 있습니다. 이를 위해 콘텐츠 1) 유사한 파일 그룹 및 2) 그룹의 다른 파일 그룹을 기반으로 파일을 수동으로 그룹화했습니다. 그런 다음 각 그룹 간의 코사인 유사성을 측정했습니다. 우리는 BERT 임베드가 사방 된 표현에 기초하여 문서 간의 유사성을 감지 할 수 있다고 가정했다. 우리는 또한 Bert의 다른 변형보다 더 나은 표현을 제공하는 것으로 입증 된 SBERT를 평가했습니다.