Модель fastText - одно из самых эффективных векторных представлений слов для русского языка. Однако её прикладная польза страдает из-за внушительных (несколько гигабайт) размеров модели. В этой статье мы показываем, как можно уменьшить модель fastText до пары десятков мегабайт, не слишком потеряв в её качестве. Спойлер: квантизация и отбор признаков работают хорошо, а матричные разложения - не очень. Также мы публикуем пакет на Python для этого сжатия и пример компактной модели для русских слов.
Я не первый, кто пытается это сжать fastText: сами разработчики fastText давно предусмотрели этот режим для своих классификаторов, сжимая их на порядк