Інтерпретація змінних графіків трасування LASSO


15

Я новачок у glmnetпакеті, і досі не знаю, як інтерпретувати результати. Може хто-небудь, будь ласка, допоможе мені прочитати наступний сюжетний сюжет?

Графік отримували, виконавши наступне:

library(glmnet)
return <- matrix(ret.ff.zoo[which(index(ret.ff.zoo)==beta.df$date[2]), ])
data   <- matrix(unlist(beta.df[which(beta.df$date==beta.df$date[2]), ][ ,-1]), 
                 ncol=num.factors)
model  <- cv.glmnet(data, return, standardize=TRUE)

op <- par(mfrow=c(1, 2))
plot(model$glmnet.fit, "norm",   label=TRUE)
plot(model$glmnet.fit, "lambda", label=TRUE)
par(op)

введіть тут опис зображення

Відповіді:


20

На обох графіках кожна кольорова лінія представляє значення, прийняте за іншим коефіцієнтом у вашій моделі. Лямбда - це вага, що надається терміну регуляризації (норма L1), тому, коли лямбда наближається до нуля, функція втрат вашої моделі наближається до функції втрати OLS. Ось один із способів ви можете вказати функцію втрат LASSO, щоб зробити це конкретним:

βлассо=аргмін [RSS(β)+λL1-норма(β)]

Тому, коли лямбда дуже мала, рішення LASSO повинно бути дуже близьким до рішення OLS, і всі ваші коефіцієнти є в моделі. У міру зростання лямбда термін регуляризації має більший ефект, і ви побачите менше змінних у вашій моделі (оскільки все більше коефіцієнтів буде нульовим).

Як я вже згадував вище, норма L1 є терміном регуляризації для LASSO. Можливо, кращим способом для цього є те, що вісь x - це максимально допустиме значення, яке може приймати норма L1 . Отже, коли у вас невелика норма L1, у вас багато регуляризації. Тому нульова норма L1 дає порожню модель, і при збільшенні норми L1 змінні будуть "входити" в модель, оскільки їх коефіцієнти приймають ненульові значення.

Сюжет зліва та сюжет праворуч показують вам одне й те саме, лише в різних масштабах.


2
Дуже акуратна відповідь, дякую! Чи можна вивести "кращих прогнозів" з наведених вище графіків, тобто кінцевої моделі?
Mayou

4
Ні, для цього знадобиться перехресна перевірка чи інша процедура перевірки; він розповість, яке значення норми L1 (або еквівалентно, який журнал (лямбда)) дає модель з найкращими можливостями прогнозування.
JAW

11
Якщо ви намагаєтеся визначити ваших найсильніших прогнозів, ви можете інтерпретувати сюжет як доказ того, що змінні, які рано входять до моделі, є найбільш прогнозними, а змінні, які вводяться в модель пізніше, мають менш важливе значення. Якщо ви хочете "найкращої моделі", це, як правило, здійснюється шляхом перехресної перевірки. Тут вам запропоновано загальний метод досягнення цього пакету glmnet : stats.stackexchange.com/a/68350/8451 . Я настійно рекомендую вам прочитати короткий Lasso главу в есліі (3.4.2 і 3.4.3), який можна завантажити безкоштовно: www-stat.stanford.edu/~tibs/ElemStatLearn
Девід Маркс

@David Marx, на які цифри вгорі сюжету посилаються? як вибрати найкращу модель за допомогою перехресної перевірки.
jeza

@DavidMarx був деякий час, але для всіх, хто цікавиться цим питанням, це кількість коефіцієнтів при цій вазі, що не дорівнює нулю.
Ian Belcher
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.