yandex / tomita-parser

Other
496 stars 112 forks source link

Странное поведение gram и GU #73

Open MartSlaaf opened 7 years ago

MartSlaaf commented 7 years ago

По крайней мере для женских имени и отчества очень странно выбираются граммемы: Например: "Елены" -> S, persn, nom, gen, sg, pl, f, anim "Анатольевны" -> S, patrn, nom, gen, sg, pl, f, anim

Таким образом не совсем понятно, как ловить, например, ИО в единственном числе и именительном падеже.

MartSlaaf commented 7 years ago

Хм. На самом деле проблема выглядит еще более забавной. Откуда такое сваливание я понял - мы скидываем в одну строку все граммемы от единой словарной статьи разных форм, но продолжаем различать по формам. Но вот дальше происходит странное. Вернувшись к примеру со словом "леса", зададим вот такое правило:

Lesa -> Word<gram='sg,pl'> interp (F.V);

Ожидаемо, не поймаем. Однако, сделав прокси-правило сразу же поймаем эти самые леса:

Proxy -> Lesa interp (F.V);
Lesa -> Word<gram='sg,pl'>;
MartSlaaf commented 7 years ago

Ну и, соответственно, конструкция вида

Proxy -> Lesa interp (F.V);
Lesa -> Word<GU='sg,pl'>;

Лишена этих недостатков. Совершенно, впрочем, неочевидно почему.

То есть выглядит так, что после перехода помета gram начинает вести себя как GU=&, а вот помета GU так не делает. Не нашел в документации указания на такое поведение.