L1 정규화는 언제 L2보다 우수합니까?


30

참고 : L1에는 기능 선택 속성이 있음을 알고 있습니다. 기능 선택이 완전히 관련이 없을 때 선택할 것을 이해하려고합니다.

  1. 사용할 정규화 (L1 또는 L2)를 결정하는 방법은 무엇입니까?
  2. L1 / L2 정규화 각각의 장단점은 무엇입니까?
  3. 먼저 L1을 사용하여 기능을 선택하고 선택한 변수에 L2를 적용하는 것이 좋습니다?

2
"L1 기능 선택"을 기능 공간의 정규화라고 부릅니다. 모델링 된 문제와 관련된 정보를 얻는 것으로 이해되는 기능 선택을 수행 하는 더 좋은 방법 이 많이 있습니다.

@mbq : "여러 가지 더 나은 방법"이 무엇인지 궁금하십니까?
amoeba는 Reinstate Monica가

답변:


31

사용할 정규화 (L1 또는 L2)를 결정하는 방법은 무엇입니까?

당신의 목표는 무엇입니까? 둘 다 계수에 불이익을 주어 모델 일반화를 향상시킬 수 있습니다. 결과와 반대의 관계를 가진 피처는 서로 "오프셋"할 수 있기 때문입니다 (큰 양수 값은 큰 음수 값에 의해 균형을 잡습니다). 공선 피쳐가있는 경우 발생할 수 있습니다. 데이터가 조금만 변경되면 모수 추정치가 크게 달라질 수 있습니다 (고 분산 추정치). 벌칙은 두 계수를 더 작게 억제 할 수 있습니다. (Hastie et al., Elements of Statistical Learning , 2nd edition, p. 63)

L1 / L2 정규화 각각의 장단점은 무엇입니까?

L1 정규화는 계수 규범을 제한하고 일부 계수 값을 0으로 고정하여 다중 공선 성 문제를 해결할 수 있습니다. 계산적으로 Lasso 회귀 (L1 페널티가있는 회귀)는 이차 프로그램으로 해결해야 할 특수 도구가 필요합니다. 관측치 N 보다 많은 피처가있는 경우 올가미는 최대 N 개의 0이 아닌 계수를 유지 합니다. 상황에 따라 원하는 것이 아닐 수도 있습니다.

L1 정규화는 기능 선택 방법으로 사용되기도합니다. 사용할 수있는 기능의 수에 하드 캡이 있다고 가정하십시오 ( 모든 기능의 데이터 수집 이 비싸거나 저장할 수있는 값의 수 등에 대한 엄격한 엔지니어링 제약이 있기 때문에 ). 원하는 개수의 0이 아닌 기능에 맞도록 L1 페널티를 조정 해 볼 수 있습니다.

L2 정규화는 계수 규범을 구속하고 모든 변수를 유지함으로써 다중 공선 성 문제를 해결할 수 있습니다. 계수를 정확히 0으로 추정하지는 않습니다. 어떤 이유로 희소 계수 벡터가 중요하지 않은 한 반드시 단점은 아닙니다.

회귀 설정에서는 관측치보다 더 많은 기능으로 회귀를 추정하는 문제에 대한 "고전적인"솔루션입니다. L2 정규화는 관측치보다 더 많은 피처가 있더라도 각 피처에 대한 계수를 추정 할 수 있습니다 (실제로 이것이 "릿지 회귀"에 대한 원래 동기였습니다).

대안으로, 탄성 그물은 L1 및 L2 정규화를 특별한 경우로 허용합니다. 업계의 데이터 과학자에게 일반적으로 사용되는 사례는 최상의 모델을 선택하기를 원하지만 L1, L2 또는 둘 다를 사용하여 처벌을받는 경우에는 신경 쓰지 않아도됩니다. 이와 같은 상황에서 탄성 그물이 좋습니다.

먼저 L1을 사용하여 기능을 선택하고 선택한 변수에 L2를 적용하는 것이 좋습니다?

나는 L1-then-L2 파이프 라인을 제안하는 출판물에 익숙하지 않지만 아마도 이것은 내 무지 일 것이다. 문제가없는 것 같습니다. 나는 문헌 검토를 수행 할 것입니다.

유사한 "단계별"파이프 라인의 몇 가지 예가 있습니다. 하나는 "이완 된 올가미 (relaxed lasso)"로, 올가미 회귀 분석을 두 번 적용 하고 한 번은 큰 그룹에서 작은 그룹의 피처로 다운 선택하고 두 번째는 모델에 사용하기위한 계수를 추정합니다. 이것은 각 단계에서 교차 검증을 사용하여 페널티의 크기를 선택합니다. 그 이유는 첫 번째 단계에서 교차 유효성을 검사하고 관련성이없는 예측 변수를 선별하기 위해 큰 형벌을 선택할 것입니다. 두 번째 단계에서는 교차 검증하고 더 작은 페널티 (따라서 더 큰 계수)를 선택할 것입니다. 이것은 통계 학습의 요소 에서 Nicolai Meinshausen ( "휴식 된 올가미")에 대한 인용과 함께 간단히 언급 됩니다. 전산 통계 및 데이터 분석 52 권 1 호, 2007 년 9 월 15 일, pp 374-393).

@amoeba 사용자는 L1-then-OLS 파이프 라인도 제안합니다. 이것은 L1 페널티의 크기에 대해 1 개의 하이퍼 파라미터 만 가지고 있기 때문에 좋을 수 있습니다.

일부 단계를 수행 한 다음 다른 단계를 별도로 수행하는 "단계별"분석 파이프 라인에서 발생할 수있는 한 가지 문제는 서로 다른 알고리즘간에 "가시성"이 없기 때문에 한 프로세스가 이전 단계에서 발생한 데이터 스누핑을 상속한다는 것입니다. 이 효과는 무시할 수 없습니다. 잘못 모델링하면 가비지 모델이 발생할 수 있습니다.

데이터 스누핑 부작용에 대비하는 한 가지 방법은 모든 선택을 교차 검증하는 것입니다. 그러나 증가 된 계산 비용은 엄청나게 입증 될 수 있습니다.


죄송합니다. 제 3 점에 대한 답변을 따르지 않았습니다. 설명 할 수 있습니까?
GeorgeOfTheRF

1
그것은 낙관론을 올바르게 설명하는 것입니다. 샘플 외부 데이터의 성능을 측정하는 것과 같은 이유로, 단계 사이에 정보 유출을 허용하지 않는 방식으로 모든 필터링 / 전처리 단계를 수행해야합니다. 전체 데이터 세트에서 기능을 선택한 다음 분석을 실행하면 노이즈에서 신호를 찾을 수 있습니다.
Sycorax는 Reinstate Monica가

승인. 그렇다면 ML 모델을 실행하기 전에 기능 선택에 권장되는 방법은 무엇입니까?
GeorgeOfTheRF

3
내 추천은 "하지 마십시오"입니다. stats.stackexchange.com/questions/164048 / ... 이 문제가 어떻게 발생할 수 있는지에 대한 예는 여기를 참조하십시오. 그러나 이것은 새로운 질문을해야한다는 초기 질문과는 충분히 다릅니다. (이것은 당신이 새로운 문제에 얻으실 추가 담당자에게 할 수 있습니다로, 당신의 이점에있다.)
Sycorax는 분석 재개 모니카 말한다

3
(+1) 나는 L1-follow-by-L2가 문헌에서 논의 된 것을 보지 못했지만 나에게는 의미가있다. L1-follow-by-OLS (일명 "LARS-OLS hybrid")와 L1-follow-by-L1 (relaxed lasso)이 있으므로 L1-follow-by-L2를 고려할 수도 있습니다. 두 하이퍼 파라미터가 교차 검증되는 한 실행 가능한 정규화 전략이어야합니다.
amoeba는

19

최적의 예측을 원한다면 일반적으로 L2를 사용하십시오. 예측 차별을 희생 할 때 parsimony를 원한다면 L1을 사용하십시오. 그러나 파시 모니는 환상적 일 수 있습니다 (예 : 올가미 반복) 부트 스트랩을 사용하여 프로세스를 특히 예측 변수가 서로 연관되어있을 때 "선택된"기능 목록에서 상당한 불안정성이 드러날 수 있습니다.


"최적 예측"-일반적으로 L2는 보이지 않는 데이터에 대해 더 나은 정확도를 제공한다는 것을 의미합니까?
GeorgeOfTheRF

3
그렇습니다. 특히 예측 차별에 관한 것입니다.
Frank Harrell

1
이 댓글 (및 답변)에 +1 나는이 현상을 겪었다2되고 일반적으로 예측 차별의 측면에서 더 나은 (예. 분류 작업)에 비해1그리고 그것은 항상 나를 귀찮게한다. 나는 나의 탄력있는 그물이 단지 거의 또는 완전히 릿지 해결책을 제안하기 위해 집중적으로 부트 스트랩을한다. :)
usεr11852는 Reinstate Monic

2
예측 차별은 분류보다 훨씬 일반적인 개념입니다. 하지만 요컨대2 보통보다 낫다 1parsimoneous하려고하는 정보를 소비하지 않기 때문에. 작은 효과를 많이 줄 수 있습니다.
Frank Harrell

멋지다, 설명을 주셔서 감사합니다. 말이 되네요. (예, 당신 말이 맞습니다. 저는 PD를 위험의 관점에서 대상의 올바른 분류 및 / 또는 순서의 가능성과 관련된 조치와 연관 시키므로 "분류 작업"이라고 빨리 말할 수있었습니다. 나의 나쁜, 더 조심해야합니다.
usεr11852는 Reinstate Monic
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.