Благодаря все более совершенным алгоритмам машинного обучения и глубокого обучения можно решить практически любую проблему с помощью соответствующих наборов данных. Однако по мере увеличения сложности модели их становится все труднее интерпретировать. Когда вы говорите об интерпретируемости моделей машинного обучения, первое, что приходит на ум, – это линейная регрессия. Линейная регрессия – это модель, которая довольно проста и легко интерпретируется. Помимо простоты, она включает в себя различные проблемы интерпретируемости, особенно в плане нарушения предположений линейной регрессии. Предположения линейной регрессии можно также назвать мультиколлинеарностью.

Что такое мультиколлинеарность?

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

Вы можете взять любую переменную из вашей повседневной жизни. Например, вы любите перекусывать чипсами во время просмотра телевизора – уровень удовлетворенности возрастает, если вы смотрите больше телевизора и едите больше чипсов. Теперь, когда вы подумаете о том, что может занять вас и сделать счастливым, какое занятие покажется вам интересным и окажет большее влияние на уровень вашего счастья? Будете ли вы чувствовать себя счастливее, когда едите чипсы или когда смотрите телевизор?

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

Типы мультиколлинеарности

Мультиколлинеарность состоит из двух различных типов. Первый тип мультиколлинеарности – структурный. Она является побочным продуктом. Поскольку вы создаете это предположение с помощью существующей независимой переменной, вы можете легко его отследить. Независимая переменная x первого типа является квадратичной. Например, при структурной мультиколлинеарности считается, что у вас есть набор данных и вы используете log для нормализации или масштабирования признаков. Второй тип – мультиколлинеарность данных, которая более опасна, чем структурная. Такую мультиколлинеарность сложнее выявить и интерпретировать. Если вы используете кадр данных pandas, он уже встроит этот тип мультиколлинеарности.

Обнаружение и устранение мультиколлинеарности

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

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

Используя другие переменные, мы можем найти соответствующее значение R2. Чтобы найти это значение, обучите свою регрессионную модель, используя переменные-предикторы. Вы можете вычислить значение VIF с помощью значения R2. Выходные данные будут такими:

Из приведенной выше формулы хорошо видно, что и значение R2, и коэффициент инфляции дисперсии будут увеличиваться одновременно. Когда значение R2 выше, это указывает на то, что другие независимые переменные правильно объясняют целевую независимую переменную. Теперь, чтобы решить, оставить или удалить переменную, мы рассмотрим пороговое значение коэффициента инфляции вариации.

Значение коэффициента инфляции дисперсии должно быть желательно небольшим. Однако такое значение может привести к удалению независимых переменных из набора данных. Поэтому эксперты обычно принимают пороговое значение Variance Inflation Factor равным пяти. Это означает, что если значение любой независимой переменной больше пяти, то она будет удалена. Но идеальное пороговое значение будет зависеть от конкретной проблемы.

Заключение

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