в чем истинная разница между лемматизацией и стеммингом?

StackOverflow https://stackoverflow.com/questions/1787110

Вопрос

Когда я использую каждый?

Кроме того... зависит ли лемматизация NLTK от частей речи?Не было бы точнее, если бы это было так?

Это было полезно?

Решение

Коротко и плотно: http://nlp.stanford.edu/IR-book/html/htmledition/stemming-and-lemmatization-1.html

Целью как стемминга, так и лемматизации является приведение флективных форм, а иногда и деривационно связанных форм слова, к общей базовой форме.

Однако эти два слова различаются по своему вкусу.Стемминг обычно относится к грубому эвристическому процессу, который в большинстве случаев отсекает концы слов в надежде на правильное достижение этой цели и часто включает удаление словообразовательных аффиксов.Лемматизация обычно подразумевает правильное выполнение действий с использованием словарного запаса и морфологического анализа слов, обычно направленное на удаление только флективных окончаний и возвращение базовой или словарной формы слова, которая известна как лемма.

Из документов НЛТК:

Лемматизация и стемминг являются частными случаями нормализации.Они определяют канонического представителя набора родственных словоформ.

Другие советы

Лемматизация тесно связан с вытекающий.Разница в том, что основоположник оперирует одним словом без знания контекста, и поэтому не может различать слова, которые имеют разные значения в зависимости от части речи.Однако, как правило, ограничители проще в реализации и выполняются быстрее, а снижение точности может не иметь значения для некоторых приложений.

Например:

  1. Слово "лучше" имеет в качестве своей леммы слово "хороший".Эта ссылка пропущена в разделе stemming, поскольку для нее требуется поиск по словарю.

  2. Слово "прогулка" является базовой формой для слова "walking", и, следовательно, это соответствует как основам, так и лемматизации.

  3. Слово "встреча" может быть либо базовой формой существительного, либо формой глагола ("встретиться") в зависимости от контекста, например, "в нашем последнем встреча" или "Мы снова встречаемся завтра".В отличие от стемминга, лемматизация в принципе может выбрать подходящую лемму в зависимости от контекста.

Источник: https://en.wikipedia.org/wiki/Lemmatisation

Целью стемминга и лемматизации является уменьшение морфологической изменчивости.Это контрастирует с более общими процедурами «слияния терминов», которые также могут учитывать лексико-семантические, синтаксические или орфографические вариации.

Реальная разница между стеммингом и лемматизацией тройная:

  1. Стемминг сводит словоформы к (псевдо) основам, тогда как лемматизация сводит словоформы к лингвистически действительным леммам.Эта разница очевидна в языках с более сложной морфологией, но может быть несущественной для многих приложений IR;

  2. Лемматизация касается только флективной вариативности, тогда как стемминг может также иметь дело с деривационной вариативностью;

  3. С точки зрения реализации лемматизация обычно более сложна (особенно для морфологически сложных языков) и обычно требует некоторой лексики.С другой стороны, удовлетворительного стемминга можно достичь с помощью довольно простых подходов, основанных на правилах.

Лемматизация также может быть подкреплена тегом части речи для устранения неоднозначности омонимов.

Есть два аспекта, показывающие их различия:

  1. А стеммер вернет основу слова, которая не обязательно должна быть идентична морфологическому корню слова.Обычно достаточно, чтобы родственные слова соответствовали одной и той же основе, даже если основа сама по себе не является действительным корнем, а в лемматизация, он вернет словарную форму слова, которое должно быть допустимым словом.

  2. В лемматизация, то сначала необходимо определить часть речи слова, и правила нормализации будут разными для разных частей речи, а стеммер оперирует одним словом, не зная контекста, и поэтому не может различать слова, имеющие разное значение в зависимости от части речи.

Ссылка http://textminingonline.com/dive-into-nltk-part-iv-stemming-and-lemmatization

Как отметил MYYN, стемминг — это процесс удаления флективных, а иногда и деривационных аффиксов к базовой форме, с которой, вероятно, связаны все исходные слова.Лемматизация направлена ​​на получение одного слова, которое позволяет сгруппировать множество изменяемых форм.Это сложнее, чем стемминг, поскольку требует учета контекста (и, следовательно, значения слова), тогда как стемминг игнорирует контекст.

Что касается того, когда вы будете использовать тот или иной вариант, это вопрос того, насколько ваше приложение зависит от правильного определения значения слова в контексте.Если вы выполняете машинный перевод, вам, вероятно, понадобится лемматизация, чтобы избежать неправильного перевода слова.Если вы выполняете поиск информации по более чем миллиарду документов, при этом 99% ваших запросов состоят из 1–3 слов, вы можете согласиться на стемминг.

Что касается NLTK, WordNetLemmatizer использует часть речи, хотя вы должны ее предоставить (в противном случае по умолчанию используются существительные).Передача «голубя» и «v» дает «нырок», а «голубь» и «n» дает «голубь».

Приведенное на примере объяснение различий между лемматизацией и стеммированием:

Лемматизация ручки соответствие “машины” “машины” одновременно с соответствующими “машину” до “автозавода”.

Вытекающий ручки сопоставление “car” с “автомобилями” .

Лемматизация подразумевает более широкую область нечеткого подбора слов, которая по-прежнему обрабатывается теми же подсистемами.Это подразумевает определенные методы для низкоуровневой обработки в движке, а также может отражать инженерные предпочтения в терминологии.

[...] Взяв FAST в качестве примера, их механизм лемматизации обрабатывает не только базовые варианты слов, такие как единственное число противоператорам множественного числа, но также и тезауруса нравится, когда ”горячий" соответствует “теплый”.

Это не означает, что другие движки не обрабатывают синонимы, конечно они обрабатывают, но низкоуровневая реализация может находиться в другой подсистеме, отличной от тех, которые обрабатывают базовую основу.

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

анакл
но я думаю, что Стемминг — это грубый хак, который люди используют, чтобы свести все различные формы одного и того же слова к базовой форме, которая сама по себе не обязательно должна быть допустимым словом.
Что-то вроде Porter Stemmer может использовать простые регулярные выражения для устранения общих суффиксов слов.

Лемматизация приводит слово к его фактической базовой форме, которая в случае неправильных глаголов может совсем не походить на входное слово.
Что-то вроде Morpha, который использует FST для приведения существительных и глаголов к их базовой форме.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top