Быстрая морфология русского языка на Rust
Тезисы

Для NLP часто возникает задача нормализации слов. Подход словарной морфологизации демонстрирует отличные результаты. Наверное, самая популярная библиотека для морфологизаций слов русского и украинского языка — Pymorphy2, написанная на Python.


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


В связи с тем, что Pymorphy2 не отвечал нашим требованиям по производительности, а также не позволял легко интегрироваться с остальной инфраструктурой, мы переписали его на Rust и получился morph-rs, о нём и пойдёт рассказ.

Для NLP часто возникает задача нормализации слов. Подход словарной морфологизации демонстрирует отличные результаты. Наверное, самая популярная библиотека для морфологизаций слов русского и украинского языка — Pymorphy2, написанная на Python.


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


В связи с тем, что Pymorphy2 не отвечал нашим требованиям по производительности, а также не позволял легко интегрироваться с остальной инфраструктурой, мы переписали его на Rust и получился morph-rs, о нём и пойдёт рассказ.

Видеозапись доклада
Появится здесь после конференции
Информация о спикере
Вета Косарева
Rust-разработчик, Крибрум
Занимаюсь переводом с человеческого на компьютерный язык
  • Вета Косарева
    Rust-разработчик, Крибрум
    Занимаюсь переводом с человеческого на компьютерный язык
Все доклады