Определение части речи слова?

Какие есть алгоритмы определения части речи слова?


Кроме перечисления окончаний в голову ничего не пришло.

<br/>
 /*<br/>
 Группы окончаний:<br/>
 1. прилагательные<br/>
 2. причастие<br/>
 3. глогол<br/>
 4. существительное<br/>
 */<br/>
 <br/>
 $groups = array(<br/>
 1 =&gt; array ('ее','ие','ые','ое','ими','ыми','ей','ий','ый','ой','ем','им','ым','ом','его','ого','ему','ому','их','ых','ую','юю','ая','яя','ою','ею'),<br/>
 2 =&gt; array ('ивш','ывш','ующ','ем','нн','вш','ющ','щ'),<br/>
 3 =&gt; array ('ила','ыла','ена','ейте','уйте','ите','или','ыли','ей','уй','ил','ыл','им','ым','ен','ило','ыло','ено','ят','ует','уют','ит','ыт','ены','ить','ыть','ишь','ую','ю','ла','на','ете','йте','ли','й','л','ем','н','ло','но','ет','ют','ны','ть','ешь','нно'),<br/>
 4 =&gt; array ('а','ев','ов','ие','ье','е','иями','ями','ами','еи','ии','и','ией','ей','ой','ий','й','иям','ям','ием','ем','ам','ом','о','у','ах','иях','ях','ы','ь','ию','ью','ю','ия','ья','я'),);<br/>
  • Вопрос задан
  • 13755 просмотров
Пригласить эксперта
Ответы на вопрос 10
@lugansk
Смотреть на суффиксы/окончания — не надёжно, сравните:
скал (род. п.) — генерал — знал

Эти слова относятся, к глаголам или к существительным?

Думаю, варианта два: или подключить словарь со словоформами (напр. грамматический словарь Зализняка) и искать по нему (но омонимы и омофоны будут проблемой: стекло (сущ.) — стекло (гл., пр.в.) и т.д.), или же попытаться реализовать простейший синтаксический анализатор, но тут проблемой будет свободный порядок слов в русском.

В любом случае, если нужна точность, просто это реализовать не получится.
Ответ написан
Milfgard
@Milfgard
Вот здесь ссылка на PDF про Мистем — company.yandex.ru/technology/mystem
Ответ написан
Комментировать
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Вот я тут ответил...
Если что - готов проконсультировать в личке.
Ответ написан
Комментировать
@lugansk
Третий вариант (гибридный :)):
1) смотрим по словарю,
2) если слово не нашлось, пытаемся выкинуть приставку из начала слова и снова смотрим,
3) если нашлось несколько вариантов, делаем синтаксический анализ.
Ответ написан
Комментировать
@gonzazoid
ага… русский — это существительное или прилагательное?
Если нужен действительно надежный результат — придется заморочиться на контекст.
Ответ написан
sielover
@sielover
делаешь, схож, крепеж, невтерпеж, рожь
Ответ написан
Комментировать
@kmike
язык программирования какой? в зависимости от языка и потребностей смотрите на phpmorphy, lemmatizer, pymorphy, mystem.
Ответ написан
Q2W
@Q2W
На aot.ru есть некий лемматизер, который делает морфологический разбор.
ИМХО, самый адекватный и функциональный инструмент для подобного рода задач.
Ответ написан
Комментировать
@ZaNaZR
Я нечто похожее пишу, ток на языке с++, , еще дам вам подсказку по точности , можно использовать предлоги для более точного определения, вы не могли бы мне не дать свою контактную информацию для совместного рассмотрения данной проблемы, у меня к вам есть несколько вопросов, буду признателен если вы мне ответите.
Ответ написан
Комментировать
@das07
Посмотрите яндекс api - https://tech.yandex.ru/dictionary/
Вот пример использования - best-language.ru/tools/chast-rechi
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы