Может ли увеличиваться при увеличении


11

Если β∗=argminβ‖y−Xβ‖22+λ‖β‖1 , может ли ‖β∗‖2 увеличиваться при λ увеличивается?

Я думаю, что это возможно. Хотя ‖β∗‖1 не увеличивается при увеличении λ (мое доказательство ), ‖β∗‖2 может увеличиваться. На рисунке ниже показана возможность. Когда λ увеличивается, если β∗ перемещается (линейно) от P к Q , то ‖β∗‖2 увеличивается, а ‖β∗‖1 уменьшается. Но я не знаю, как построить конкретный пример (т.е. построить X и y ), чтобы профиль β∗ демонстрировал такое поведение. Любые идеи? Спасибо.

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

Ответы:


10

Ответ - да, и у вас есть графическое доказательство в прямо здесь.ℓ2

Посмотрите определение эквивалентности векторных норм. Вы обнаружите, что где - размерность вектора . Следовательно, для нормы есть место для , по сравнению с нормой .

‖x‖2≤‖x‖1≤n‖x‖2,
nxℓ2ℓ1

Фактически, проблему, которую вы хотите решить, можно сформулировать так:

Найти такое, что , в то же время d

‖x+d‖2>‖x‖2
‖x+d‖1<‖x‖1.

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

2∑ixidi>−∑idi2
xi≥0xi+di≥0
∑idi<0.
dℓ2ℓ1

В вашем примере, , и и d≈[−0.4,0.3]Tx:=P≈[0.5,0.6]T

∑idi≈−0.1<0,
2∑iPidi≈−0.04>−0.25≈−∑idi2.

Но как это связано со строительством и ? Xy
— Цзыюан,

3

Спасибо за ответ @ TommyL, но он не имеет прямого отношения к построению и . Я как-то сам "решаю" это. Во-первых, когда увеличивается, не будет увеличиваться, когда каждое монотонно уменьшается. Это происходит, когда ортонормирован, в котором мы имеемXyλ‖β∗‖2βi∗X

βi∗=sign(βiLS)(βiLS−λ)+

Геометрически в этой ситуации перемещается перпендикулярно контуру нормы , поэтому не может увеличиваться.β∗ℓ1‖β∗‖2

На самом деле, Hastie et al. Упоминается в статье « Вперед поэтапная регрессия и монотонное лассо» , необходимое и достаточное условие монотонности профильных путей:

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

В разделе 6 статьи они построили искусственный набор данных на основе кусочно-линейных базисных функций, который нарушает указанное выше условие, демонстрируя немонотонность. Но если нам повезет, мы также можем создать случайный набор данных, демонстрирующий аналогичное поведение, но более простым способом. Вот мой код R:

library(glmnet)
set.seed(0)
N <- 10
p <- 15
x1 <- rnorm(N)
X <- mat.or.vec(N, p)
X[, 1] <- x1
for (i in 2:p) {X[, i] <- x1 + rnorm(N, sd=0.2)}
beta <- rnorm(p, sd=10)
y <- X %*% beta + rnorm(N, sd=0.01)
model <- glmnet(X, y, family="gaussian", alpha=1, intercept=FALSE)

Я намеренно позволил столбцам иметь высокую корреляцию (далеко от ортонормированного случая), а в истинной есть как большие положительные, так и отрицательные записи. Вот профиль (не удивительно, что активируются только 5 переменных):Xββ∗

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

и связь между и :λ‖β∗‖2

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

Таким образом , мы можем видеть , что в течение некоторого интервала , возрастает как увеличивается.λ‖β∗‖2λ

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.