May 6th, 2020

Восстановление согласованного текста из списка лемм с помощью OpenNMT

Иногда возникает задача, обратная лемматизации: имеем список лемм, надо восстановить  исходный согласованный текст. При лемматизации из-за омонимии теряется часть информации:

Из "кошка ловит мышку" после леммаизации получаем "кошка ловить мышка".
Из "кошку ловит мышка" тоже получаем "кошка ловить мышка".

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

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

Collapse )