Here은 nltk dev의 오래된 관련 코멘트입니다. 가장 진보 된 형태소 분석기와 같은 NLTK의 모든 영어 특정 같습니다
nltk.stem 모듈은 현재 3 개 형태소 분석기가 포함 포터 형태소 분석기, 랭커스터의 형태소 분석기 및 형태소 분석기를 기반으로하는 정규 표현식. Porter stemmer와 Lancaster stemmer는 모두 영어입니다. . 정규식 기반 스 트리머는 사용자가 원하는대로 정규식을 사용하도록 사용자 정의 할 수 있습니다. 따라서 정규식 스 트리머를 사용하여 영어 이외의 언어에 대해서 간단한 형태소 분석기를 작성할 수 있어야합니다. 프랑스어에 대한 예를 들어 :
from nltk import stem
stemmer = stem.Regexp('s$|es$|era$|erez$|ions$| <etc> ')
하지만 언어 별 정규 표현 자신을 마련 할 필요가 것입니다. 고급 모듈러의 경우 새 모듈을 추가하는 데 아마도 이 필요할 것입니다. (이것은 좋은 학생 프로젝트 수 있습니다.) 정규 표현식 형태소 분석기에 대한 자세한 내용은
: - 에드워드
주
http://nltk.org/doc/api/nltk.stem.regexp.Regexp-class.html
: 그가 제공하는 링크가 죽었 참조 현재 regexstemmer 설명서는 here입니다.
더 최근에 추가 된 은 프랑스어를 줄 수 있습니다. 테스트 해 보겠습니다 :
>>> from nltk.stem.snowball import FrenchStemmer
>>> stemmer = FrenchStemmer()
>>> stemmer.stem('voudrais')
u'voudr'
>>> stemmer.stem('animaux')
u'animal'
>>> stemmer.stem('yeux')
u'yeux'
>>> stemmer.stem('dors')
u'dor'
>>> stemmer.stem('couvre')
u'couvr'
약간의 결과가 있습니다.
당신이 원하는 것은 아니지만 시작일 것 같습니다.
참이 영어 이외의 언어에 대한 형태소 분석기가 실망 없습니다 것
프랑스어에서 작업 할 수 있습니다. 내가 실제로 끝내는 것은 구두점에 단어를 토큰 화 한 다음 나머지 한 문자로 된 기사 (예 : "l 앙상블"의 나머지 l)를 제거한 것입니다. 그런 다음 온라인에서 여러 게시물에 의해 참조 된 http://www.limsi.fr/Individu/anne/OLDlexique.txt에서 호스팅 된 단어와 해당 표제어 목록을 사용했습니다. 눈덩이 줄기가 너무 효과가있는 것처럼 보입니다. 감사합니다 Junuxx. :) – yelsayed