Содействующие оценки для моделей, описанных в Линейной регрессии, полагаются на независимость образцовых условий. Когда условия коррелируются и столбцы матрицы проекта, X имеет аппроксимированную линейную зависимость, матрица (X T X) –1 становится близко к сингулярному. В результате оценка наименьших квадратов
становится очень чувствительным к случайным ошибкам в наблюдаемом ответе y, производя большое отклонение. Эта ситуация multicollinearity может возникнуть, например, когда данные собраны без экспериментального плана.
Ridge regression решает проблему путем оценки использования коэффициентов регрессии
где k является ridge parameter, и I является единичной матрицей. Маленькие положительные значения k улучшают создание условий проблемы и уменьшают отклонение оценок. В то время как смещено, уменьшаемое отклонение гребенчатых оценок часто приводят к меньшей среднеквадратичной погрешности, когда по сравнению с наименьшими квадратами оценивает.
Функция Statistics and Machine Learning Toolbox™ ridge выполняет гребенчатую регрессию.
Этот пример показывает, как выполнить гребенчатую регрессию.
Загрузите данные в acetylene.mat, с наблюдениями за переменными прогноза x1, x2, x3 и переменная отклика y.
load acetyleneПостройте переменные прогноза друг против друга.
subplot(1,3,1) plot(x1,x2,'.') xlabel('x1') ylabel('x2') grid on axis square subplot(1,3,2) plot(x1,x3,'.') xlabel('x1') ylabel('x3') grid on axis square subplot(1,3,3) plot(x2,x3,'.') xlabel('x2') ylabel('x3') grid on axis square

Отметьте корреляцию между x1 и другими двумя переменными прогноза.
Используйте ridge и x2fx, чтобы вычислить содействующие оценки для полилинейной модели с периодами взаимодействия для области значений гребенчатых параметров.
X = [x1 x2 x3]; D = x2fx(X,'interaction'); D(:,1) = []; % No constant term k = 0:1e-5:5e-3; betahat = ridge(y,D,k);
Постройте гребенчатую трассировку.
figure plot(k,betahat,'LineWidth',2) ylim([-100 100]) grid on xlabel('Ridge Parameter') ylabel('Standardized Coefficient') title('{\bf Ridge Trace}') legend('x1','x2','x3','x1x2','x1x3','x2x3')

Оценки стабилизировались справа от графика. Обратите внимание на то, что коэффициент периода взаимодействия x2x3 изменяет знак в значении гребенчатого параметра .