2012-12-21 2 views
0

가능한 중복 :
How to get frequently occuring phrases with Lucene루씬 가장 흔한 단어 나 단어 그룹을 찾기위한

내가 인덱스에서 가장 발생하는 단어 또는 단어 그룹을 찾을 필요가

대부분 발생하는 텍스트가있을 수 있습니다 의미 단어 그 자체 또는 단어 그룹. 트위터 인기 주제와 매우 비슷합니다 (물론 해시 태그 요소가 없음). Lucene은 그렇게 할 수있는 방법을 제공합니까? 아니면 방대한 데이터에서이를 수행 할 수 있습니까? 질문이 명확하지 않으면 좀 더 구체적인 예를 들려 줄 수 있습니다. 나는 방법으로 자바를 사용하고있다. 그리고 Lucene 3.5.

빠른 편집에는 "단어 그룹"에 최대 3 단어를 포함 할 수 있습니다. 큰 텍스트에서 "날씨"가 500 번 "날씨가 좋음"이 300 번, 단어 그룹이 "날씨가 좋다"라는 단어가 90 번 있다고 가정 해 봅시다. 나는 "날씨가 좋다"고 생각하는 것이 중요하다는 것을 알아야합니다. 그리고 물론 모든 색인 된 단어를 볼 필요가 있습니다 ...

감사합니다. 당신은 최대 길이 3 연속 토큰 대부분의 발생 순서를 찾으려면 질문에 설명 된대로

답변

0

, 문제는, 가장 빈번한 N-g에 대한 검색으로 볼 수있는 경우 How to get frequently occurring phrases with Lucene
당신은 아마 '돈 Solr은 this little code을 참조하십시오. 생성 된 N 그램을 각각 계산해야하며 원하는 임계 값보다 큰 횟수만큼 나타나는 것을 유지해야합니다. 이러한 Ngram을 효율적으로 계산하는 것이 더 어렵습니다. 그것들이 많지 않다면 (예를 들어 tham 1 ~ 2M이 적음) HashMap을 사용할 수 있습니다.
재미있는 카운트 최소 스케치 알고리즘을 시도해 볼 수있는 양이 많을 경우 implementation이 있지만 개인적으로 사용하지 않았으며 얼마나 좋은지 모릅니다.

관련 문제