[python] lemmatization과 stemming의 차이점은 무엇입니까?

언제 사용합니까?

또한 … NLTK 기밀 화는 품사에 의존 하는가? 그것이 더 정확하지 않습니까?



답변

짧고 밀도 : http://nlp.stanford.edu/IR-book/html/htmledition/stemming-and-lemmatization-1.html

형태소 분석과 lemmatization의 목표는 변곡 형태와 때로는 파생적으로 관련된 단어 형태를 공통 기본 형태로 줄이는 것입니다.

그러나 두 단어의 맛이 다릅니다. Stemming은 일반적으로 대부분의 경우이 목표를 올바르게 달성하기 위해 단어의 끝을 잘라내는 조잡한 휴리스틱 프로세스를 말하며 종종 파생 된 접미사 제거를 포함합니다. 간결화는 보통 단어의 어휘와 형태 학적 분석을 사용하여 일을 올바르게 수행하는 것을 말하며, 일반적으로 변곡 끝을 제거하고 단어의 기본 또는 사전 형태를 반환하는 것을 목표로합니다.

NLTK 문서에서 :

정리 및 형태소 분석은 특별한 정규화 사례입니다. 관련 단어 형식 집합에 대한 표준 대표를 식별합니다.


답변

Lemmatisation는 밀접한 관련이 유래 . 차이점은 형태소 분석기는 문맥에 대한 지식이 없어도 한 단어로 작동하므로 말의 일부에 따라 다른 의미를 가진 단어를 구별 할 수 없다는 것입니다. 그러나 형태소 분석기는 일반적으로 구현 및 실행이 더 쉬우 며 일부 응용 프로그램의 경우 정확도 저하가 중요하지 않을 수 있습니다.

예를 들어 :

  1. “더 나은”이라는 단어는 기본적으로 “좋은”것을 가지고 있습니다. 사전 검색이 필요하기 때문에이 링크는 형태소 분석에서 누락되었습니다.

  2. “walk”라는 단어는 “walking”이라는 단어의 기본 형식이므로 형태소 분석과 lemmatisation에서 모두 일치합니다.

  3. “회의”라는 단어는 문맥에 따라, 예를 들어 “마지막 회의에서”또는 “내일 다시 만나고 있습니다”라는 명사의 기본 형태 또는 동사 형태 ( “만남”) 일 수 있습니다. 형태소 분석과 달리, 도식화는 원칙적으로 상황에 따라 적절한 정리를 선택할 수 있습니다.

출처 : https://en.wikipedia.org/wiki/Lemmatisation


답변

차이점을 보여주는 두 가지 측면이 있습니다.

a
  1. 형태소 분석기 는 단어 의 형태소 를 동일하게 할 필요가없는 단어의 줄기를 반환합니다. 줄기가 그 자체로 유효한 어근이 아니더라도 lemmatisation 에서 유효한 단어 여야하는 단어의 사전 형식을 반환 할지라도 일반적으로 관련 단어가 동일한 줄기에 매핑되는 것으로 충분 합니다.

  2. 에서는 lemmatisation 단어의 품사가 먼저 결정해야하고, 정규화 규칙은 동시에 음성의 상이한 부분에 대해 상이 할 것이다 형태소 분석기 다른 가지고 단어를 구별 할 수 있으므로 컨텍스트 지식없이 한 단어에서 동작하고, 품사에 따른 의미.

참조 http://textminingonline.com/dive-into-nltk-part-iv-stemming-and-lemmatization


답변

형태소 분석 및 lemmatization의 목적은 형태 학적 변화를 줄이는 것입니다. 이것은보다 일반적인 “용어 충돌”절차와 대조적이며,이 용어는 어휘 적 의미, 구문 또는 직교 변형을 다룰 수 있습니다.

형태소 분석과 lemmatization의 실제 차이점은 세 가지입니다.

  1. 형태소 분석은 단어 형태를 (의사) 줄기로 줄이고, lemmatization은 단어 형태를 언어 적으로 유효한 음칭으로 줄입니다. 이러한 차이점은보다 복잡한 형태의 언어에서는 분명하지만 많은 IR 응용 프로그램에는 관련이 없을 수 있습니다.

  2. 정리는 변곡 적 분산만을 다루는 반면, 형태소 분석은 파생적 분산을 다룰 수있다.

  3. 구현 측면에서 lemmatization은 일반적으로보다 정교하고 (특히 형태 학적으로 복잡한 언어의 경우) 일종의 lexica가 필요합니다. 반면에 만족스러운 형태소 분석은 단순한 규칙 기반 접근 방식으로 달성 할 수 있습니다.

균질화를 명확하게하기 위해 품사 태깅에 의해 정리가 백업 될 수도 있습니다.


답변

MYYN이 지적한 바와 같이, 형태소 분석은 원래의 모든 단어와 관련이있는 기본 형태의 변곡 적이거나 때로는 파생적인 접미사를 제거하는 프로세스입니다. 정리는 하나의 단어를 얻는 것과 관련이 있습니다.이 단어를 사용하면 여러 가지 변형 된 형태를 그룹화 할 수 있습니다. 문맥을 무시하고 단어의 의미를 고려해야하기 때문에 이것은 형태소 분석보다 어렵습니다. 반면 형태소 분석은 문맥을 무시합니다.

어느 쪽을 사용할 것인지에 관해서는 문맥에서 단어의 의미를 얻는 데 응용 프로그램이 얼마나 의존하는지가 중요합니다. 기계 번역을 수행하는 경우 단어를 잘못 번역하지 않도록 lemmatization을 원할 수 있습니다. 1-3 단어 범위의 쿼리 중 99 %가 포함 된 10 억 개의 문서를 통해 정보를 검색하는 경우 형태소 분석을 할 수 있습니다.

NLTK의 경우 WordNetLemmatizer는 음성 부분을 사용하지만 음성을 제공해야합니다 (그렇지 않으면 기본값은 명사로 설정 됨). “dove”와 “v”를 전달하면 “dive”가 생성되고 “dove”와 “n”은 “dove”가 생성됩니다.


답변

lemmatization과 stemming의 차이점에 대한 예제 중심 설명 :

Lemmatization“car”와 “car”를 일치시키고 “car”와 “automobile”을 일치시킵니다.

Stemming“car”와 “cars”를 일치 시킵니다.

정리는 동일한 서브 시스템에 의해 여전히 처리되는 광범위한 퍼지 단어 일치를 의미합니다. 엔진 내에서 낮은 수준의 처리를위한 특정 기술을 의미하며 용어에 대한 엔지니어링 선호도를 반영 할 수도 있습니다.

[…] 예를 들어 FAST를 예로 들면, lemmatization 엔진은 단수 또는 복수와 같은 기본 단어 변형뿐만 아니라 “핫”일치 “따뜻함”과 같은 동의어 사전 연산자도 처리합니다.

물론 다른 엔진은 동의어를 처리하지 않지만, 저수준 구현은 기본 형태소 분석을 처리하는 것과 다른 하위 시스템에있을 수 있습니다.

http://www.ideaeng.com/stemming-lemmatization-0601


답변

ianacl
그러나 Stemming은 사람들이 같은 단어의 다른 모든 형태를 기본 형식으로 가져 오는 데 사용하는 거친 핵이라고 생각
합니다. 포터 Stemmer와 같은 것은 간단한 정규 표현식을 사용하여 일반적인 단어 접미사를 제거 할 수 있습니다

Lemmatization은 불규칙 동사의 경우 입력 단어
와 전혀 다르게 보일 수있는 실제 기본 형식으로 단어 를 가져옵니다.


댓글 달기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다