최하위 회귀 분석 vs. 올가미


39

최소 각도 회귀와 올가미는 매우 유사한 정규화 경로를 생성하는 경향이 있습니다 (계수가 0을 초과하는 경우를 제외하고 동일합니다).

둘 다 사실상 동일한 알고리즘으로 효율적으로 맞출 수 있습니다.

한 가지 방법을 다른 방법보다 선호하는 실질적인 이유가 있습니까?


이 시점에서 답변을 재평가 한 경우 다른 "허용 된"답변을 선택 하시겠습니까?
Aaron Hall

답변:


13

"무료 점심 없음"이론은 통계적 추론 알고리즘 사이에 선험적 차이가 없음을 시사한다. 즉, LARS 또는 LASSO가 가장 잘 작동하는지는 특정 데이터 세트의 특성에 달려있다. 실제로, 두 가지를 모두 시도하고 작동에 사용할 (또는 앙상블을 사용) 결정하기 위해 신뢰할 수있는 일반화 성능 추정기를 사용하는 것이 가장 좋습니다. LARS와 LASSO의 차이가 다소 적기 때문에 성능 차이도 약간 적을 수 있지만 일반적으로 확실하게 확인할 수있는 방법은 한 가지뿐입니다!


이 경우 가능한 '앙상블 방법'을 확장 할 수 있습니까?
chl

35

단계별 모드에서 사용되는 LARS 알고리즘은 욕심 많은 방법으로, 일관된 추정량을 산출하지 않습니다 (즉, 샘플 수를 늘릴 때 안정적인 결과로 수렴하지 않음).

반대로 LASSO (및 LASSO 모드에서 사용되는 경우 LARS 알고리즘)는 볼록한 데이터 피팅 문제를 해결합니다. 특히,이 문제 (L1 불이익 선형 추정기)에는 입증 된 많은 특성 (일관성, 희소성)이 있습니다.

따라서 단계적으로 선호하는 이유가 없다면 LASSO 모드에서 LARS를 사용하거나 LASSO에 다른 솔버를 사용하려고합니다.


9

LASSO는 알고리즘 자체가 아니라 연산자입니다.

정규화 된 문제에 대해 효율적인 알고리즘을 도출하는 방법에는 여러 가지가 있습니다. 예를 들어, 2 차 프로그래밍을 사용하여 직접 처리 할 수 ​​있습니다. 나는 이것이 당신이 LASSO라고 부르는 것 같아요.1

또 다른 하나는 단순성, 순방향 절차와의 연관성 (아마도 탐욕스럽지 않음), 매우 건설적인 증거 및 쉬운 일반화로 인해 매우 인기가 있습니다.

최신 2 차 프로그래밍 솔버와 비교해도 LARS가 훨씬 더 효율적일 수 있습니다.


9

앞에서 언급했듯이 LARS는 Lasso 문제, 즉 최소 제곱 문제 를 해결하는 특별한 방법 입니다. 그것의 성공은 표준 최소 제곱 회귀와 비교할 수있는 점근 적 노력이 필요하기 때문에 2 차 프로그래밍 문제의 해결에 필요한 것보다 뛰어난 성능을 제공한다는 사실에서 비롯됩니다. LARS의 이후 확장은 또한 및 항을 최소 제곱 함수에 포함하는보다 일반적인 탄력적 그물 문제를 해결했습니다 .l 1 l 2l1l1l2

이 답변의 목적은 오늘날 LARS가 좌표 하강확률 적 좌표 하강 방법에 의해 감독 된 것으로 보인다는 점을 지적하는 것 입니다. 이러한 방법은 특히 간단한 알고리즘을 기반으로하는 반면, 성능은 LARS보다 성능이 더 높은 것 같습니다 (종종 1-2 배 더 빠름). 예를 들어 볼 이 논문 프리드 등의 Al을한다.

따라서 LARS를 구현할 계획이라면하지 마십시오. 몇 시간이 걸리는 좌표 하강을 사용하십시오.


1
LARS를 구현하지 않고 좌표 강하를 +1하는 경우 : 좌표 강하보다 나은 설정이 있습니다 (예 : 매우 드문 소규모 및 모드 크기 문제의 경우 경험적 비교를 위해 Julien Mairal의 논문 참조). 제대로 구현하기가 어렵고 좌표 하강보다 훨씬 어렵습니다.
Gael Varoquaux

3

올가미 솔루션의 계산은 2 차 프로그래밍 문제이며 표준 수치 분석 알고리즘으로 해결할 수 있습니다. 그러나 최소 각도 회귀 절차가 더 나은 방법입니다. 이 알고리즘은 올가미 문제의 특수 구조를 이용하며 모든 값에 대한 솔루션을 동시에 계산하는 효율적인 방법을 제공합니다 .λ


내 의견은 다음과 같습니다.

질문은 두 부분으로 나눌 수 있습니다. 고차원 케이스와 저 차원 케이스. 반면에 최적의 모델을 선택하기 위해 어떤 기준을 사용할 지에 따라 다릅니다. LARS의 원본 논문 에서 최상의 모델을 선택하기위한 기준으로 입증 , 논문의 '토론'에서도 SVS 및 CV 기준을 확인할 수 있습니다. 일반적으로 LARS와 Lasso 간에는 작은 차이가 있으므로 완전히 무시할 수 있습니다.Cp

또한 LARS는 계산 속도가 빠르고 안정적입니다. 올가미는 빠르지 만 LARS가 속도 문제를 이기게하는 알고리즘 간에는 약간의 차이가 있습니다. 반면에 R에는 예를 들어 'glmnet'이라는 대체 패키지가 있습니다.

요약하면, 라와 올가미에 대해 고려할 수있는 중요한 것은 없습니다. 모델을 사용하려는 컨텍스트에 따라 다릅니다.

개인적으로 고차원 및 저 차원 모두에서 R에서 glmnet을 사용하는 것이 좋습니다. 다른 기준에 관심이있는 경우 http://cran.r-project.org/web/packages/msgps/ package를 사용할 수 있습니다 .


1

일부 맥락에서, 최소 제곱 솔루션의 정규화 된 버전이 바람직 할 수 있습니다. 예를 들어 LASSO (최소 절대 수축 및 선택 연산자) 알고리즘은 | β | 매개 변수 벡터의 L1 노름 인 1은 주어진 값보다 크지 않습니다. 마찬가지로, α |으로 최소 제곱 페널티의 제한되지 않은 최소화를 해결할 수 있습니다. β | 1이 추가되었으며, 여기서 α는 상수입니다 (이것은 구속 된 문제의 라그랑지안 형태입니다).이 문제는 2 차 프로그래밍 또는보다 일반적인 볼록 최적화 방법과 최소 각도 회귀 알고리즘과 같은 특정 알고리즘을 사용하여 해결할 수 있습니다. L1- 정규화 된 제제는 일부 문맥에서 0이 아닌 매개 변수 값이 더 적은 용액을 선호하는 경향으로 인해 유용합니다. 주어진 솔루션이 의존하는 변수의 수를 효과적으로 줄입니다. [11] 이러한 이유로 LASSO 및 그 변형은 압축 감지 분야의 기본입니다.


5
이와 관련하여 Wikipedia에서 직접 복사하여 붙여 넣는 것처럼 보이지만 실제로는 질문에 대답하지 않습니다.
NPE

3
(-1) 최소한, 당신은 en.wikipedia.org/wiki/Least_squares의 LASSO 방법에 관한 위키 백과의 인용문을 인정해야합니다 !!! BTW 11 번째 참조를 붙여 넣는 것을 잊었습니다.
chl

나는 링크를 넣는 것을 잊었다. 그것은 사실이지만, 어쨌든 나는 이것이이 질문에 대한 좋은 대답이라고 생각한다. 내가 쓴 것 같아서 죄송합니다
mariana soffer

이 경우 올가미 페이지 를 참조하면 더 도움이됩니다 . 이제 질문은 Lasso가 실제로하는 것이 아니라 LAR과 Lasso의 장단점에 관한 것입니다. LARS 알고리즘은 Lasso와 같은 다른 추정기에 대한 솔루션을 생성하도록 쉽게 수정 될 수 있습니다. 그것은 경우에는 잘 작동 하지만 scikit-learn.sourceforge.net/modules/glm.html 에서 인용 한 것처럼 잡음의 영향에 민감합니다 (잔류 물의 반복적 인 반복을 기반으로하기 때문에). . np
chl
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.