Ответ
Вес (коэффициент) признака в модели линейной регрессии количественно определяет влияние этого признака на целевую переменную.
Интерпретация: Коэффициент w_i для признака x_i показывает, на сколько единиц изменится предсказанное значение целевой переменной y, если значение признака x_i увеличится на одну единицу, при условии, что все остальные признаки остаются неизменными (ceteris paribus).
Пример модели:
y_pred = w_0 + w_1 * x_1 + w_2 * x_2
w_1 = 2.5: Увеличениеx_1на 1 приводит к ростуy_predна 2.5.w_2 = -0.8: Увеличениеx_2на 1 приводит к уменьшениюy_predна 0.8.w_0(intercept) — базовое значениеy_pred, когда все признаки равны нулю.
Практический пример с scikit-learn:
from sklearn.linear_model import LinearRegression
from sklearn.datasets import make_regression
from sklearn.preprocessing import StandardScaler
# Генерация данных
X, y = make_regression(n_samples=100, n_features=3, noise=0.1, random_state=42)
# Важно: для корректного сравнения весов признаки стоит стандартизировать
scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)
# Обучение модели
model = LinearRegression()
model.fit(X_scaled, y)
print("Коэффициенты (веса):", model.coef_)
print("Свободный член:", model.intercept_)
# Вывод может быть: Коэффициенты: [45.2, -12.1, 0.5]
# Это означает, что первый признак имеет наибольшее положительное влияние.
Ключевые моменты:
- Знак коэффициента указывает на направление связи (прямая/обратная).
- Масштаб признаков критически важен. Веса несравнимы, если признаки имеют разные единицы измерения (например, возраст в годах и зарплата в рублях). Стандартизация или нормализация решает эту проблему.
- Высокое абсолютное значение веса указывает на сильное влияние признака, но это верно только при корректном масштабе данных.