матрица важности
importance matrix
Замер того, на какие веса модель реально опирается: через неё прогоняют корпус настоящего текста и записывают, насколько каждый вес двигает вывод. Квантователи используют это, чтобы решить, что можно смять, а что надо защитить. Рецепты IQ в llama.cpp названы в её честь.
Мысль о том, что часть весов несущая, легко высказать и бесполезно держать в голове, пока кто-нибудь не измерит, какие именно. Обычный K-quant работает по фиксированному правилу: это семейство слоёв повышаем, то нет, одинаково для любой модели. Матрица важности заменяет правило данными той модели, что стоит перед вами.
Именно это делает возможными рецепты ниже четырёх бит. IQ3_XXS при 3,06 бита
на вес был бы непригоден как равномерное трёхбитное сжатие. Когда матрица решает,
куда придётся урон, модель на 284B влезает в машину со 128 ГБ.
Подвох в том, что матрица ровно настолько же репрезентативна, насколько текст, на котором её строили. Модель, отквантованная по английскому корпусу и потом пущенная на код, была измерена не на том.