2017-01-25 9 views
-1

트윗 세트를 묶고 싶습니다. 나는 이미 트윗을 가져 와서 정리하고, Naive Bayes 분류기를 적용하여 긍정적이고 부정적인 두 파일로 나누었습니다. 마지막으로, 나는 각 트윗 사이의 유사성을 검색하려면 다음을 수행 한 : 이제이가, 내가 개까지 추가 할 수 있습니다 다음 단계를 생각하고 다른 각 문장 상대의 유사성을 측정하도록되어의미 론적 분석 후 클러스터링하기

with open("positive.txt", "r") as pt: 
     lines = pt.readlines() 
     for lineA in lines: 
      vectorA = text_to_vector(lineA) 
      for lineB in lines: 
       vectorB = text_to_vector(lineB) 
       cosine = get_cosine(vectorA, vectorB) 
       print lineA, "\n", lineB, "\n", "Cosine:", cosine 

모든 문구에 대한 값은 모든 문장에 대한 문장 n의 관계에 대한 모든 코사인 값을 더하고,이를 수행하고 KMeans와 같은 것을 적용한 후에 올바른 방법을 취하고 있는지 확실하지 않습니다. 여기, 그래서 어떤 도움을 많이 주시면 감사하겠습니다.

+1

많은 선택 사항이 있지만 내 경험에 따르면 모두 짹짹에서 작동하지 않습니다. 당신은 중복 (쉬운), 거의 중복 (더 큰 도전, 규모). 하지만 클러스터 - 너무 많은 쓰레기가 트위터에서 작동합니다. –

답변

1

클러스터링 할 문서 집합 (내용에 따라 다름)이있는 경우 가장 쉬운 방법은 Cluto 도구를 사용하는 것입니다. 기본적으로 두 단계로 실행해야합니다.

첫 번째 단계는 모든 문서를 포함해야하는 입력 파일 (각 줄에 하나의 문서)을 취하는 doc2mat 프로그램을 실행하는 것입니다. doc2mat 프로그램은 각 문서에 대한 tf-idf 벡터 표현으로 구성된 행렬 파일을 작성합니다.

그러면이 매트릭스 파일을 클러스터링 결과를 생성하는 vcluster 프로그램에 공급해야합니다. vcluster에 참조 클래스 파일을 입력하면 클러스터링 결과를 평가할 수도 있습니다.

+0

첫 번째 단계를 수행 한 후에 k-means를 적용 할 수 있습니까? 또한 링크를 제공하기 위해 치료를 둘러싼 vcluster를 찾지 못하는 것 같습니까? 마침내 당신은 당신의 마지막 진술에 대해 자세하게 설명 할 수 있습니까? 내가 아프지 만 그것을 시험해보고 그것을 확인하자마자 곧바로 답을 확인한다고 생각하지 않습니다. –

+0

예 ... u ... K- 수단을 적용 할 수 있습니다 ... vcluster의 문서를 살펴보십시오 ... 매개 변수 중 하나가 걸리면 'clmethod'입니다. K- 수단은 '직접'이어야합니다 ...이 설명서를 읽으십시오 http://glaros.dtc.umn.edu/gkhome/fetch/sw/cluto/manual.pdf – Debasis