2013-03-20 2 views
0

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

Но для одного набора данных (корпус Бостона) коэффициенты гребня больше, чем коэффициенты наименьших квадратов. Возможно ли это? Что это значит? Или я сделал ошибку кодирования? .....

+0

Вы должны подтвердить правильность и правильность ответов. Пока вы этого не сделали. –

ответ

1

Кажется, что это не может быть проблемой на всех ...

1) В типичной задаче наименьших квадратов, вы должны выбрать бета вектор, который минимизирует

|| уХ * бета ||^2

2) Еще одна проблема, связанный (известный как проблема Lasso), чтобы найти бета-вектор, который сводит к минимуму

|| уХ * бета ||^2 + лямбда * || бета ||

3) Наконец, в коньковой регрессии, ваша задача состоит в нахождении бета-вектор, который сводит к минимуму

|| уХ * бета ||^2 + лямбда * || бета ||^2

Примечание что в задаче (2) выше ясно, что вы специально наказываете размер [beta_i] s.

С другой стороны, в задаче (3) выше вы производите наказание за различия в размерах betas_i. Я имею в виду, если у вас есть бета-версия вектора, небольшие бета-версии и большие бета-версии, ваши затраты по-прежнему будут большими. Представьте себе, что в задаче (1) вектор бета = [0,1; 0,0001]. В то время как для уменьшения «пропорционально» оба варианта beta_is в проблеме (2), похоже, являются хорошим решением, то же самое не происходит в проблеме (3), где лучше всего немного увеличить размер бета_2 = 0,0001, чтобы уменьшить размер бета_1 = 0,1.

Таким образом, если ваше решение проблемы (3) в matlab представляет beta_i s с более похожими размерами, кажется, что у вас все хорошо.

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

Смежные вопросы