2011-03-14 2 views
8

텍스트를 문장으로 분리해야합니다. 나는 현재 OpenNLP의 문장 탐지 도구로 놀고있다. 또한 NLTK 및 Stanford CoreNLP 도구에 대해서도 들었습니다. 가장 정확한 영어 문장 검색 도구는 무엇입니까? 너무 많은 NLP 기능이 필요하지 않습니다. 문장 분리/감지에 적합한 도구 일뿐입니다.문장 분할을위한 가장 정확한 오픈 소스 도구는 무엇입니까?

나는 Lucene에 대해서도 들었지만 ... 너무 많이 들릴 수도 있습니다. 하지만 킥 - 엉덩이 문장 감지 모듈이 있다면, 나는 그것을 사용합니다.

+1

Perl의 경우 [Lingua :: EN :: Sentence] (http://search.cpan.org/~shlomoy/Lingua-EN-Sentence-0.25/lib/Lingua/EN/Sentence.pm)? – Konerak

답변

1

체크 lingpipe 구현 http://alias-i.com/lingpipe/docs/api/com/aliasi/sentences/IndoEuropeanSentenceModel.html

그들의 모델은 매우 강력하고 쉽게 구현할 수 - 가능한 모든 문장 분할에 몇 가지 사전/사후 규칙 (일명 regexps '에) 확인하고 모든 이잖아. 나는 그것이 GATE와 OpenNLP에서 더 잘 작동하는 것을 발견했다.

예로서이 추론 모델을 지원하는 다른 오픈 소스 프로젝트

+0

라이센스 비용은 꽤 비싸므로 로열티없는 라이센스를 사용하면 "처리 된 데이터는 자유롭게 사용할 수 있어야합니다"라고 요구합니다. – samxli

+0

그러면 현재 GPL 인 프로젝트 그래프 표현을 확인할 수 있습니다.하지만 다른 커미터를 찾은 경우 LGPL로 변경하려고 생각합니다. – yura

+0

방금 ​​프로젝트를 체크 아웃했습니다. 내일 테스트 할 예정입니다. :) 오늘 NLTK와 링가 :: EN :: CPAN의 문장을 살펴 보았습니다. NLTK는 괜찮 았어, 부정확했다. 링구아 :: EN는 주문 목록을 덩어리로 인식하는 데 어려움을 겪었습니다. 추가 약어 정의는 허용되지만 "1", "2"등은 인식 할 수 없습니다. – samxli

-4

http://code.google.com/p/graph-expression/wiki/SentenceSplitting 텍스트 마이닝 우수한 간단한 자원 텍스트 프로세싱 언어있다. 그것은 문장 분할을하는 데 전혀 문제가 없습니다.

는 www.perl.org

+1

perl에서 사용할 수있는 특정 문장 분할 모델이 있습니까? 다른 도메인의 경우 문장을 다르게 정의 할 수 있습니다. 또한, 마침표 등을 처리 할 수 ​​있어야합니다. – samxli

+0

Perl은 텍스트 처리, 패턴 일치 언어입니다. 약어 및 간격 문제를 처리 할 수 ​​있습니다. –

+0

이 답변은 NLTK, LingPipe 또는 기타 특정 NLP 도구에 대해 언급 한 다른 사람의 품질과 관련이 없습니다. 문장 분할은 정규 표현식 매칭보다 어렵습니다. 저는 바퀴의 재발 명을 권장하지 않습니다. –

2

는 NLTK this paper에 기재된 PUNKT 토크 나이의 구현을 포함한다. 나는 그것이 최선의 최선인지는 모르지만 아주 좋으며 가볍고 사용하기 쉽고 무료입니다.