Множественная линейная регрессия весьма полезна для понимания. Здесь зависимое значение зависит от нескольких независимых значений. Таким образом, он объясняет взаимосвязь между одной непрерывной зависимой переменной и двумя или более независимыми переменными.

Y = b0 + b1x1 + b2x2 + b3x3 + …

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

Обработка категориальных значений может быть сложной задачей, поскольку для этого требуется знание предметной области, например, если у нас есть почтовый индекс в качестве одного из предикторов, и поскольку он является числовым и уникальным, мы не можем поверить в него как в обычный числовой параметр. Нам нужно рассматривать это как категориальную переменную. Используя Label Encoder и OneHotEncoder (Избегайте фиктивных переменных-ловушек), мы можем изменить эту категориальную переменную в обычной переменной. Но рассмотрим случай, когда существует 500 различных почтовых индексов, было бы кошмаром обрабатывать такое количество предикторов и выяснять значимость каждого значения для конечного значения. Однако знание предметной области может помочь нам сократить количество столбцов с почтовым индексом в разных регионах города, таких как Север, Юг, Запад и Восток. Итак, здесь мы сократили полные 100 предикторов до 4 предикторов. Таким образом, вместо 100 разных почтовых индексов вы получаете 4 региона: север, юг, восток или запад (или в зависимости от того, насколько конкретно вы хотите его получить).

Теперь другая задача после обработки категориальных переменных - выбрать наиболее мощные предикторы, управляющие зависимой переменной. Используя обратное исключение, мы должны обучить нашу модель, учитывая все предикторы и неоднократно удаляя незначительный вклад в зависимости от P-Value, R-квадрат, RMSE и здравого смысла.

Используя библиотеку statsmodel Python, мы можем узнать P-значение каждого столбца и установить значение значимости 0,05 (стандартное значение может варьироваться в зависимости от данных) и удалить столбец, имеющий сравнительно более значимое значение, чем 0,05, т.е. помогает p-value доказать, что нулевая гипотеза верна. Итак, с точки зрения P-значения, мы должны выбрать все столбцы, которые доказывают неверность нулевой гипотезы (в зависимости от моего простого понимания). Кроме того, рассмотрите значение R-квадрата, которое должно быть от 0 до 1. Большее значение R-квадрата и меньшее P-значение хорошо для модели.

Как только мы получим идеальную комбинацию списка предикторов с идеальным значением P-значения и R-квадрата, все готово.

Наконец, мы можем обучить нашу модель оставшимся лучшим предикторам и протестировать данные тестирования.