Очень интересно
1. "2 миллиона строк в матрице эмбеддингов, но только 330 тысяч из них реально используются." - вот это новость
2. "уменьшает число строк в ней с 2 миллионов до 500 тысяч, размещая в каждой строке новой матрицы средневзвешенное из строк старой матрицы" - это какое-то приближение, да? по идее, надо просто переобучить с размером 500к
3. "20К слов, 100К n-грамм ... дала 96.6% сходство с оригиналом" - 20к очень мало, мне кажется такой словарь, покроет может быть 40% слов в новостных статьях, точно знаю, что чтобы покрыть 95% нужен словарь 250к. Получается fasttext почти только на н-граммах. Может быть 96.6% потому измеряется сходство на 4 небольших датасетах
4. В коде предлагается использовать модель через "gensim.models.fasttext.FastTextKeyedVectors.load". Как это работает? Gensim ничего не знает про квантизацию.
5. "В ближайшем будущем я перейду от сжатия словных эмбеддингов к созданию компактной модели фразных эмебддингов для русского языка" - это интересная тема, давай посотрудничаем. Я сейчас обкатываю компактную модель для NER для русского
https://github.com/natasha/slovnet.