일반 영어로 정규화 란 무엇입니까?


74

다른 기사와 달리, 이 주제에 대한 wikipedia 항목은 수학자가 아닌 사람이 읽을 수 없음을 발견했습니다 .

규칙이 적은 모델을 선호한다는 기본 아이디어를 이해했습니다. 내가 얻지 못하는 것은 규칙 집합에서 '정규화 점수'로 어떻게 넘어가 는가?

간단한 정규화 방법을 설명 할 수 있습니까?

통계 거래 시스템을 분석하는 데 관심이 있습니다. 정규화를 적용하여 다음 두 예측 모델을 분석 할 수 있는지 여부를 설명 할 수 있다면 좋을 것입니다.

모델 1-다음과 같은 경우 가격 상승 :

  • exp_moving_avg (가격, 기간 = 50)> exp_moving_avg (가격, 기간 = 200)

모델 2-다음과 같은 경우 가격 상승 :

  • 가격 [n] <가격 [n-1] 10 회 연속
  • exp_moving_avg (가격, 기간 = 200) 상승

그러나 정규화 방법에 대한 느낌을 얻는 데 더 관심이 있습니다. 당신이 그것을 설명하는 더 나은 모델을 알고 있다면 그렇게하십시오.


7
예를 들어 능선 회귀가 있는데, 이는 제곱 계수의 합에 경계가있는 OLS입니다. 이로 인해 모델에 편향이 생길 수 있지만 계수의 분산이 때때로 실질적으로 줄어 듭니다. LASSO는 다른 관련 방법이지만 계수의 크기에 L1 제약 조건을 적용합니다. 계수를 떨어 뜨리는 장점이 있습니다. 이는 상황에 유용합니다. 정규화는 어떤 방식으로 모델을 "수축"하여 과적 합을 피하고 (계수 분산을 줄임) 일반적으로 모델의 예측 성능을 향상시킵니다.
HairyBeast

2
@HairyBeast 당신은 좋은 의견을 답으로 넣어야합니다. 가능하면 OP가 현재 문제로 어떻게 변환되는지 파악할 수 있도록 예시적인 예를 추가하십시오.
chl

1
@HairyBeast, 정규화는 바이어스 편차 트레이드 오프 의 아이디어를 구현하는 방법 일 뿐이라고 말할 수 있습니까?
아보카도

이 비디오는 특히 Lp 정규화의 다른 형식을 시각화하는 데 매우 유용합니다. youtube.com/watch?v=sO4ZirJh9ds
Anm

정규화는 학습 된 모델의 초과 적합을 처리하기위한 것입니다. 평범한 영어로 시각적으로 설명하려고했습니다. 다음은 기사 medium.com/@vamsi149/…에
solver149

답변:


57

간단히 말해서 정규화는 선호하는 모델 복잡성 수준을 조정하거나 선택하므로 모델을보다 잘 예측 (일반화) 할 수 있습니다. 이 작업을 수행하지 않으면 모델이 너무 복잡하고 지나치게 적합하거나 너무 단순하고 적합하지 않을 수 있습니다.

최소 자승법이 복잡한 모형을 작은 훈련 데이터 세트에 맞추면 아마도 너무 적합 할 것입니다. 이것이 가장 일반적인 상황입니다. 모델의 최적의 복잡성은 모델링하는 프로세스의 종류와 데이터의 품질에 따라 달라 지므로 모델의 정확한 복잡성 은 없습니다 .

정규화하려면 두 가지가 필요합니다.

  1. 교차 검증 또는 일련의 유효성 검사 데이터 (예 : 피팅 오류 를 사용할 수 없음)를 사용하여 모델의 예측 상태를 테스트하는 방법입니다 .
  2. 모델의 복잡성 또는 매끄러움 또는 다른 복잡성 / 매끄러움이 다른 모델 선택을 변경할 수있는 튜닝 매개 변수입니다.
기본적으로 복잡도 매개 변수를 조정하거나 모델을 변경하고 최상의 모델 예측을 제공하는 값을 찾습니다.

최적화 된 정규화 오류는 전체 예측 오류의 정확한 추정치가 아니므로 정규화 후에 최종적으로 추가 유효성 검사 데이터 세트를 사용하거나 추가 통계 분석을 수행하여 편견없는 예측 오류를 가져와야합니다.

(교차) 밸리데이션 테스트를 사용하는 대안은 Bayesian Priors 또는 기타 방법을 사용하여 복잡성 또는 비평 활도에 불이익을 주지만 문제와 모델 기능에 대한 더 많은 통계적 정교성과 지식이 필요합니다.


2
나에게서 +1 나는이 답변이 처음에 시작해서 이해하기 쉽다는 것을 좋아합니다 ...
Andrew

2
정규화가 실제로 언더 피팅을 줄이는 데 사용됩니까? 내 경험상 정규화는 복잡성 / 민감도를 줄이기 위해 복잡하고 민감한 모델에 적용되지만 복잡성 / 민감도를 높이기 위해 단순 / 민감하지 않은 모델에는 적용되지 않습니다.
Richard Hardy

이 답변은 이제 상당히 오래되었지만 Toby가 말한 것은 정규화가 데이터 양에 따라 적절한 복잡성 모델을 맞추는 원칙적인 방법이라고 가정합니다. 너무 적은 모수 (또는 잘못된 것)를 가진 모델을 선험적으로 선택하고 너무 복잡하고 과적 합한 모델을 선택하는 것의 대안입니다.
Bryan Krause

26

경험적 위험 최소화를 통해 학습을 수행한다고 가정합니다.

더 정확하게:

  • 당신은 당신의 예측이 얼마나 나쁜지를 특징으로하는 음이 아닌 손실 함수 를 얻었습니다L(actual value, predicted value)
  • 훈련 데이터 (유일한 데이터)에 대해서만 계산하여 예측이 손실 평균 함수를 최소화하는 방식으로 모델을 적합 시키려고합니다.

학습 과정의 목표는 을 찾는 것입니다 (이 방법을 경험적 위험이라고합니다) 최소화).Model=argminL(actual,predicted(Model))

그러나 데이터가 충분하지 않고 모델에 많은 양의 변수가있는 경우 패턴을 설명 할뿐만 아니라 데이터의 임의 노이즈를 설명하는 모델을 찾는 것이 매우 가능합니다. 이 효과를 오버 피팅이라고하며 모델의 일반화 기능이 저하됩니다.

정규화 용어 overfitting 피하기 위해 목표 함수로 도입된다 : Model=argminL(actual,predicted(Model))+λR(Model)

일반적으로이 용어 은 복잡한 모델에 특별한 페널티를 부과합니다. 예를 들어, 계수가 큰 모델 (L2 정규화, = 계수 제곱의 합) 또는 0이 아닌 계수 (L1 정규화, = 계수의 절대 값의 합 )가 많은 모델의 경우 . 우리가 의사 결정 트리를 훈련하고 있다면 은 그 깊이가 될 수 있습니다.R R RR(Model)RRR

또 다른 관점은 이 최상의 모델의 형태에 대한 사전 지식을 소개 한다는 것입니다 ( "너무 큰 계수가 없습니다", " 거의 직교 함 ")ˉ aRa¯


12

간단히 말하면 정규화는 얻을 수있는 솔루션에 혜택을주는 것입니다. 예를 들어, 단순성에 대한 정의를 위해 "간단한"솔루션을 활용할 수 있습니다. 문제에 규칙이있는 경우 하나의 정의가 더 적은 규칙 일 수 있습니다. 그러나 이것은 문제에 따라 다릅니다.

그러나 올바른 질문을하고 있습니다. 예를 들어 Support Vector Machines에서이 "단순성"은 "최대 마진"방향으로 연결을 끊는 데서 유래합니다. 이 마진은 문제와 관련하여 명확하게 정의 할 수있는 것입니다. WikipediaSVM 기사 에는 매우 좋은 기하 구조가 있습니다 . 정규화 용어는 적어도 SVM의 "비밀 소스"인 것으로 밝혀졌습니다.

정규화는 어떻게 수행합니까? 일반적으로 사용하는 방법과 함께 제공됩니다. SVM을 사용하는 경우 L2 정규화를 수행하고 있고 LASSO를 사용 하는 경우 L1 정규화를 수행하고 있습니다 (무성한 말을 참조하십시오). 그러나 고유 한 방법을 개발하는 경우 바람직하지 않은 솔루션에서 원하는 솔루션을 알려주는 방법을 알아야하며이를 정량화하는 기능이 있어야합니다. 결국 비용 기간과 정규화 기간이 있으며 두 합계를 최적화하려고합니다.


1

정규화 기술은 의사 결정 경계 / 적합 모델을보다 매끄럽게 만드는 머신 러닝 모델에 적용되는 기술입니다. 이러한 기술은 과적 합을 방지하는 데 도움이됩니다.

예 : 신경망의 L1, L2, 드롭 아웃, 체중 감소. SVM의 매개 변수C


0

간단히 말해 정규화는 기계 학습 알고리즘을 훈련 할 때 과적 합을 피하는 기술입니다. 충분한 자유 매개 변수가있는 알고리즘이있는 경우 샘플을 세부적으로 보간 할 수 있지만 샘플 외부에 나오는 예제는 샘플에서 노이즈 나 임의의 불규칙성을 포착하여 실제 추세가 아니기 때문에이 세부 보간을 따르지 않을 수 있습니다.

모형에서 모수의 절대 값을 제한하여 과적 합을 피할 수 있습니다. 모형 모수의 크기에 따라 페널티를 부과하는 항을 비용 함수에 추가하면됩니다. 크기가 L1 규범에서 측정되는 경우이를 "L1 정규화"라고하며 일반적으로 스파 스 모델이됩니다. L2 규범으로 측정 한 경우이를 "L2 정규화"라고합니다.

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