Коли я використовую кожен?
Також ... чи залежить лематизація НЛТК від частин мови? Чи не було б точніше, якби це було?
Коли я використовую кожен?
Також ... чи залежить лематизація НЛТК від частин мови? Чи не було б точніше, якби це було?
Відповіді:
Короткий і щільний: http://nlp.stanford.edu/IR-book/html/htmledition/stemming-and-lemmatilization-1.html
Мета як легенізації, так і лематизації - звести флективні форми, а іноді і похідні споріднені форми слова, до загальної основної форми.
Однак два слова відрізняються за своїм смаком. Зауваження зазвичай відноситься до грубого евристичного процесу, який рубає кінці слів з надією досягти цієї мети правильно більшу частину часу і часто включає видалення похідних афіксів. Під лематизацією, як правило, йдеться про те, щоб правильно робити справи, використовуючи словниковий запас та морфологічний аналіз слів, як правило, спрямований на вилучення лише флективних закінчень і повернення основної чи словникової форми слова, яка відома як лема.
З документів NLTK:
Лематизація та стримування - це особливі випадки нормалізації. Вони ідентифікують канонічного представника для набору споріднених словоформ.
Лематизації тісно пов'язана з випливають . Різниця полягає в тому, що стовбур працює над одним словом без знання контексту, і тому не може розрізняти слова, які мають різні значення залежно від частини мови. Однак, зазвичай, легкіше реалізувати та працювати швидше, а для деяких застосувань знижена точність може не мати значення.
Наприклад:
Слово "краще" має "добре", як і його лема. Це посилання пропущено, оскільки воно вимагає пошуку словника.
Слово "прогулянка" є базовою формою для слова "ходьба", а отже, це узгоджується як у витіканні, так і в лемматизації.
Слово "зустріч" може бути або базовою формою іменника, або формою дієслова ("зустрічатися") залежно від контексту, наприклад, "в нашій останній зустрічі" або "Ми зустрічаємося завтра знову". На відміну від стримування, лематизація може в принципі вибрати відповідну лему залежно від контексту.
Є два аспекти, щоб показати їх відмінності:
Парадигматичний повертають стебло слова, які не повинні бути ідентичні морфологічним корінь слова. Зазвичай достатньо, щоб споріднені слова відображали один і той же стебло, навіть якщо стебло саме по собі не є коректним коренем, тоді як при лематизації воно поверне словникову форму слова, яке повинно бути дійсним словом.
При лематизації слід спочатку визначити частину мови слова, а нормування нормалізації будуть різними для різних частин мови, тоді як стебмер працює над одним словом без знання контексту, і тому не може розрізняти слова, які мають різні значення залежно від частини мови.
Довідково http://textminingonline.com/dive-into-nltk-part-iv-stemming-and-lemmatilization
Метою як стримування, так і лематизації є зменшення морфологічних варіацій. Це на відміну від більш загальних процедур «термінового зв’язку», які також можуть стосуватися лексико-семантичних, синтаксичних чи ортографічних варіацій.
Справжня різниця між створенням і лематизацією є триразовою:
Стовбування зводить словоформи до (псевдо) стебел, тоді як лематизація зводить словоформи до лінгвістично допустимих лем. Ця різниця очевидна в мовах зі складною морфологією, але може бути неактуальною для багатьох ІР-застосувань;
Лематизація має справу лише з флекційною дисперсією, тоді як виникла може мати справу і з похідною дисперсією;
Щодо реалізації, то лематизація зазвичай є більш складною (особливо для морфологічно складних мов) і зазвичай вимагає певної лексики. З іншого боку, задоволення може бути досягнуто досить простими підходами, заснованими на правилах.
Лематизація також може бути підкріплена тегером часткової промови з метою розмежування омонімів.
Як зазначав MYYN, випливає із процесу видалення флективних, а іноді і похідних афіксів до базової форми, до якої, ймовірно, належать усі початкові слова. Лематизація пов'язана з отриманням єдиного слова, яке дозволяє згрупувати купу сформованих форм. Це важче, ніж спричиняти, оскільки воно вимагає врахування контексту (і, отже, значення цього слова), при цьому ігноруючи контекст.
Що стосується того, коли ви б використовували те чи інше, питання про те, наскільки ваша програма залежить від того, щоб правильно змістити значення слова в контексті. Якщо ви робите машинний переклад, ви, мабуть, хочете лематизації, щоб уникнути неправильного перекладу слова. Якщо ви займаєтеся пошуком інформації понад мільярд документів, 99% ваших запитів становлять від 1 до 3 слів, ви можете погодитися на вихід.
Що стосується NLTK, то WordNetLemmatizer використовує частину мови, хоча ви повинні її надати (інакше вона за замовчуванням має іменники). Передаючи його "голуб" і "v", дає "занурення", а "голуб" і "n" - "голуб".
Приклад пояснення щодо різниць між лематизацією та основою:
Лематизація обробляє відповідність "автомобіль" до "машини", а також "автомобіль" і "автомобіль".
Ручки для стригування, що відповідають "машині" та "машинам" .
Лематизація передбачає більш широкий спектр нечіткого зіставлення слів, який все ще обробляється тими ж підсистемами. Він передбачає певні прийоми обробки низького рівня всередині двигуна, а також може відображати інженерні переваги термінології.
[...] Беручи до прикладу FAST, їх механізм лематизації обробляє не лише основні варіації слів, наприклад, однини та множини, але й оператори тезаурусу, як, наприклад, "гарячий" збіг "теплий".
Це не означає, що інші двигуни не обробляють синоніми, звичайно, вони є, але реалізація на низькому рівні може бути в іншій підсистемі, ніж ті, що обробляють базову основу.
ianacl,
але я думаю, що "Стеммінг" - це груба хакерська робота, яку люди використовують, щоб отримати всі різні форми одного і того ж слова до базової форми, яка не повинна бути легальним словом самостійно.
Щось на зразок Porter Stemmer може використовувати прості регулярні вирази для усунення загальних суфіксів слова
Лематизація приводить слово до його фактичної основної форми, яка у випадку неправильних дієслів може виглядати не так, як вхідне слово
Щось на зразок морфа, яке використовує FSTs для приведення іменників та дієслів до їх основної форми
Проблема просто видаляє або стримує останні кілька символів слова, що часто призводить до неправильних значень та написання. Лематизація розглядає контекст і перетворює слово у його змістовно-основну форму, яку називають леммою. Іноді одне і те ж слово може мати кілька різних лем. Ми повинні визначити тег Частина мови (POS) для цього слова в конкретному контексті. Ось приклади, щоб проілюструвати всі відмінності та випадки використання:
Стемінг - це процес видалення останніх кількох символів певного слова, щоб отримати більш коротку форму, навіть якщо ця форма не має жодного значення.
Приклади,
"beautiful" -> "beauti"
"corpora" -> "corpora"
Викопування зубів можна зробити дуже швидко.
З іншого боку, лематизація - це процес перетворення даного слова в його базову форму відповідно до словникового значення слова.
Приклади,
"beautiful" -> "beauty"
"corpora" -> "corpus"
Лематизація займає більше часу, ніж випливає.