TGViewer
asisakov asisakov @asisakov_channel · 4.08K subscribers
Post #135 490
Отбор признаков
VIF

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

Variance Inflation Factor (VIF/ VIF score) - критерий, который позволяет обнаружить мультиколлинеарность в признаках. Особенно важно его посчитать на вашем списке признаков перед тем, как обучать регрессию. Я думаю вы все понимаете, почему это важно именно для регрессии (попробуйте написать это в комментариях). Сорри за тавтологию, но при расчете VIF все же надо обучить регрессию (OLS)! Это необходимо для расчета метрики R2. В принципе если вы обучаете линейную модель с регуляризацей, то возможно и обойтись без этого критерия. Но применение регуляризации не гарантирует уменьшение признакового пространства. При этом после удаления линейно зависимых признаков мы сможем освободить значимость, которую забрала эта фича, между другими признаками в модели.

Как это работает. Мы берем все N числовых признаков в трейн выборке, далее итеративно пробуем предсказать каждый из этих признаков остальными N-1 оставшимися. Далее для каждой фичи мы рассчитываем метриук R2 и подставляем ее в формулу:

VIF = 1/(1-R2), где:
R2 - коэффициент детерминации модели регресси для нашего признака

Далее все просто. Если никакой зависимости не обнаружено, значит R2 -> 0, получаем VIF = 1 - фича не является линейно зависимой. Обычно порог для VIF выбирают равным 5. Если VIF > 5 - значит наблюдается высокая мультиколлинеарность признаков. В этом источнике предлагают порог для VIF брать равным 3.

Тут кстати человек написал, что "VIF измеряет количество завышенных дисперсий, вызванных мультиколлинеарностью".
Подробнее можно почитать тут и тут.
Есть еще какая-то интересная статья, но там доступ был закрыт, по возможности скиньте ее пожалуйста в коменты.

#ml
Telegram asisakov Как из 6000 признаков выбрать 10 наиболее нужных для модели? Допустим, мы нагенерили много признаков с использованием техник, описанных в посте выше. Что делать дальше? Неужели нам потом надо тянуть в модель их все и собирать для них отдельные витрины? С…
  • 👍 4
  • ❤ 2
More from @asisakov_channel
  1. Sep 24, 2026Post #1428
  2. Sep 24, 2026Оказывается недавно вышел Opus 5.5, который типа догоняет Fable 5.1, и при этом дешевле на…
  3. Sep 23, 2026Таки вы не Исаков, а Исааков 😏 Шекели жалко
  4. Sep 23, 2026Недавно во второй раз забанили в Клоде, было очень обидно за свою $20 подписку 😭 P.S. При…
  5. Sep 23, 2026Post #1424
  6. Sep 22, 2026Дайте мне повод сжечь токены, и я сделаю это! #meme
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →