정규화란?
정규화 기법은 예측 모델에서 통계적 과적합을 방지하는 용도로 사용됩니다. 일반적으로 정규화 알고리즘은 최소화에 모델의 계수를 추가하거나 거칠기 벌점을 포함시키는 등 복잡도에 벌점을 적용하는 방식으로 작동합니다. 정규화 알고리즘은 모델에 추가 정보를 도입함으로써 모델을 보다 간결하고 정확하게 만들어서 다중공선성 및 중복된 예측 변수 문제를 처리할 수 있습니다.
널리 사용되는 정규화 기법에는 능형 회귀(Tikhonov 정규화라고도 함), Lasso 및 신축망 알고리즘, 축소 중심 방법, 추적 플롯 및 교차 검증된 평균 제곱 오차 등이 있습니다. 적합도 메트릭으로서 아카이케 정보 기준(AIC)을 적용할 수도 있습니다.
각 정규화 기법은 특정 사용 사례에 유용하게 사용됩니다.
- Lasso는 L1 노름을 사용하며, 개별 계수 값을 완전히 0 쪽으로 강제하는 경향이 있습니다. 따라서 Lasso는 특징 선택 알고리즘으로 사용하기에 좋습니다. Lasso는 적은 개수의 키 변수를 빠르게 식별합니다.
- 능형 회귀는 L2 노름을 계수로 사용합니다(제곱 오차의 합을 최소화함). 능형 회귀는 계수 축소를 많은 수의 계수에 걸쳐 확산시키는 경향이 있습니다. 모델에 많은 수의 계수를 포함해야 하는 경우 능형 회귀가 좋은 기법이 될 수 있습니다.
- 신축망은 추가 예측 변수를 식별하지 못하는 Lasso를 보완할 수 있습니다.
정규화는 모델이 보다 적은 예측 변수를 사용하도록 강제한다는 점에서 특징 선택과 관련이 있습니다. 정규화 방법에는 몇 가지 뚜렷한 이점이 있습니다.
- 정규화 기법은 대부분의 특징 선택 방법(일변량 특징 선택 제외)보다 훨씬 큰 데이터셋에 대해 연산을 수행할 수 있습니다. Lasso 및 능형 회귀는 수천 개 내지는 수만 개에 이르는 변수를 포함하는 데이터셋에 적용할 수 있습니다.
- 정규화 기법은 특징 선택보다 정확한 예측 모델을 생성하는 경우가 많습니다. 특징 선택은 이산 공간에 대해 연산을 수행하는 방면 정규화는 연속 공간에 대해 연산을 수행합니다. 따라서 정규화는 모델을 미세 조정할 수 있으며 더 정확한 추정값을 생성할 수 있습니다.
하지만 특징 선택 방법에도 이점이 있습니다.
- 특징 선택은 보다 직관적이고 다른 사람에게 설명하기가 쉽습니다. 따라서 결과를 타인과 공유할 때 적용한 방법에 대해 설명해야 하는 경우에 유용합니다.
- MATLAB® 및 Statistics and Machine Learning Toolbox™는 널리 사용되는 모든 정규화 기법을 지원하며, 선형 회귀, 로지스틱 회귀, 서포트 벡터 머신, 선형 판별분석이 가능합니다. 부스팅 결정 트리와 같은 다른 모델 유형을 사용할 때는 특징 선택을 적용해야 합니다.
요점
- 정규화는 특징 선택과 함께 예측 모델에서 통계적 과적합을 방지하는 용도로 사용됩니다.
- 정규화는 연속 공간에 대해 연산을 수행하므로 다양한 유형의 선형 모델링이 필요한 머신러닝 문제에서 이산 특징 선택보다 좋은 성과를 보일 수 있습니다.
예시 시나리오
암 연구를 진행하고 있다고 가정해 보겠습니다. 암 환자 500명의 유전자 서열을 바탕으로 15,000개의 유전자 중에서 어느 것이 질병 악화에 유의미한 영향을 주는지 확인하고자 합니다. 런타임이 중요한 경우에는 최소 잉여도-최대 연관성, 이웃 성분 분석, 일변량(런타임이 중요한 경우)과 같은 특징 순위 지정 방법을 적용할 수 있습니다. 이처럼 변수가 많은 경우에는 순차적 특징 선택만이 비실용적입니다. 또는 정규화를 사용하여 모델을 탐색할 수도 있습니다. 능형 회귀는 계수를 충분히 빠르게 완전히 0 쪽으로 강제하지 않으므로 사용할 수 없습니다. 500개가 넘는 유전자를 식별해야 하므로 Lasso도 사용할 수 없습니다. 신축망을 사용하는 것은 가능할 수 있습니다.
예제 및 방법
소프트웨어 참조
무료 백서
머신러닝의 난점: 최적의 분류 모델 선택 및 과적합 방지
가장 일반적인 분류 모델의 장점에 대해 알아보고 과적합 문제를 수정하고 방지하는 방법을 배워보고 MATLAB의 유용한 함수를 살펴볼 수 있습니다.
백서 읽기