LASSO 솔루션 컴퓨팅을위한 GLMNET 또는 LARS?


13

LASSO 문제에 대한 계수를 얻고 싶습니다

||YXβ||+λ||β||1.

문제는 glmnet과 lars 함수가 다른 답변을 제공한다는 것입니다. glmnet 함수의 경우 대신에 여전히 다른 답변을 얻습니다.λλ/||Y||λ

이것이 예상됩니까? lars 와 glmnet 의 관계는 무엇입니까 ? glmnet이 LASSO 문제에 더 빠르다는 것을 알고 있지만 어떤 방법이 더 강력한 지 알고 싶습니다.λλλ


deps_stats 데이터 세트의 크기가 너무 커서 LARS가이를 ​​처리 할 수없는 반면 glmnet은 큰 데이터 세트를 처리 할 수 ​​있습니다.

mpiktas (Y-Xb) ^ 2 + L \ sum | b_j |의 해를 찾고 싶습니다 그러나 특정 L에 대한 계산 된 계수에 대해 두 알고리즘 (lars & glmnet)에서 요청할 때 다른 대답을 얻습니다. 또는 두 기능에 대해 잘못된 람다를 사용하고 있습니다.


1
문제를 설명하는 예를 제공하십시오. 또한 알고리즘의 힘을 어떻게 정의합니까?
mpiktas

1
몇 가지 프로젝트에서 glmnet 및 lars 패키지를 사용했습니다. 제한된 경험으로 glmnet을 구현하는 데 많은 문제가있었습니다. glmnet은 데이터 프레임에 사용되는 변수 유형에 관한 버그 수정이 필요하다고 생각합니다. 게다가, glmnet은 혼란스러운 문서를 가지고 있습니다. 나는 lars를 사용하게되었고 결과에 매우 만족했습니다. 문제의 크기를 신경 쓰지 마십시오 .lars가 해결할 수 있다고 생각합니다.
deps_stats

"문제는 glmnet과 lars 함수가 다른 답변을 제공한다는 것입니다." 나는 같은 문제를 가지고있다. 대답이 있습니까?
부여

계수에 대한 답이 크게 다릅니 까? 그리고 원래 게시물을 읽는 것만 glmnet으로도 LARS 구현에서도 단일 람다 솔루션을 요구해서는 안됩니다 . 바이어스와 분산의 스펙트럼에 따라 모든 범위의 솔루션을 제공합니다. 실제 계수를 비교하기가 어렵습니다. 그러나 여전히 동일한 변수는 비슷한 순서로 0이 아닌 값이어야합니다.
시어 파크

답변:


14

내 경험상 LARS는 작은 문제, 매우 드문 문제 또는 매우 '넓은'문제 (샘플보다 훨씬 더 많은 기능)에 대해 더 빠릅니다. 실제로 전체 정규화 경로를 계산하지 않으면 계산 비용이 선택한 기능 수에 의해 제한됩니다. 반면에 큰 문제의 경우 glmnet (좌표 하강 최적화)이 더 빠릅니다. 무엇보다도 좌표 하강은 우수한 데이터 액세스 패턴 (메모리 친화적)을 가지고 있으며, 부분적으로 적합하기 때문에 매우 큰 데이터 세트의 데이터에서 중복성을 활용할 수 있습니다. 특히, 상관 관계가 높은 데이터 집합으로 인해 어려움을 겪지 않습니다.

우리 ( scikit-learn 의 핵심 개발자 )가 왔다는 결론은 데이터에 대한 사전 지식이 충분하지 않은 경우 glmnet (또는 강의 최적화 최적화)을 사용하여 알고리즘에 대해 이야기해야한다는 것입니다 구현보다).

Julien Mairal의 논문에서 흥미로운 벤치 마크를 비교할 수 있습니다.

http://www.di.ens.fr/~mairal/resources/pdf/phd_thesis.pdf

1.4 절, 특히 1.4.5 (22 페이지)

Julien은 문제에 대한 그의 분석이 비슷하지만 약간 다른 결론을 내립니다. 나는 이것이 매우 광범위한 문제에 매우 관심이 있었기 때문이라고 생각합니다.


귀하의 답변은 대부분 CW (metaoptimize.com/qa)에서 이루어집니다 ... 이유가 무엇입니까?
chl

1
사람들이 오타, 잘못된 단어를 고칠 수 있다면 좋다고 생각하기 때문에, 나는 대답의 지속적인 개선이라는 아이디어를 좋아합니다. 이것이 모범 사례와 반대 되는가?
Gael Varoquaux

2
나는 두세 오타가 지나가는 것을 고쳤다. 게시물을 수정하는 데 필요한 하위 담당자를 생각하지 않는 한 CW 자체와는 아무런 관련이 없습니다! 그러나 사용자는 모든 편집을 제안 할 수 있습니다. 그러나 귀하의 응답 CW를 만드는 것은 그들로부터 담당자를 얻을 수 없습니다. 나는 당신이 담당자를 따르지 않았을 것 같지만, 당신의 응답이 항상 잘 들어 왔을 때, 나는 단지 궁금했습니다.
chl

1

여러 기능이 완벽한 공선 성을 갖는 경우 LASSO는 고유하지 않습니다. 그것을 증명하는 간단한 생각 실험이 있습니다.

3 개의 랜덤 벡터 , , 가 있다고 가정 해 봅시다 . , 에서 를 예측하려고합니다 . 이제 = = 라고 가정하십시오 . 최적의 LASSO 솔루션은 , . 여기서 는 LASSO 페널티의 영향입니다. 그러나 최적은 , 입니다.x 1 x 2 y x 1 x 2 y x 1 x 2 β 1 = 1 - P β 2 = 0 P β 1 = 0 β 21 - Pyx1x2yx1x2yx1x2β1=1Pβ2=0Pβ1=0β21P


2
@dsmcha, 이것을 말해서 미안하지만, 나는 그 예를 너무 좋아한다고 생각하지 않습니다. 반응은 두 예측 변수와 동일합니까? 내 견해로는 병리학을 뛰어 넘습니다.
추기경

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.