[파이썬][머신러닝] 데이터 분석과 머신러닝 - Ridge Regression
Ridge Regression
'능형 회귀'라고도 불리며, 기본 선형 모델에서 자주 발생하는 Overfitting을 막아주기위해 '각 계수의 제곱을 더한 값'을 식에 포함하여 계수의 크기도 함께 최소화하도록 만든 기법이다. Overfitting이 되면 데이터에 매우 적합되어서 극단적인 올라갔다 내려하는 그래프가 생기는데 이런 Variance가 큰 상황을 막기 위해 계수 자체를 커지면 패널티를 주식 수식을 추가한 것이다.
특징
- 람다가 크면 계수를 많이 줄이고, 람다가 작으면 최소 제곱 문제를 풀게되는 형식이다.
- 계수의 크기가 Shrink(수축)되는 효과가 생기는 것을 볼다.
- 베타 제곱을 사용하기때문에 어떤 계수가 3. 덜 중요하더라도 완전히 0에 수렴하지 않고 충분히 작은 소수점에 남아있는다.
Ridge Regression 사용시 주의점
- 변수의 크기가 결과에 큰 영향을 미친다.
그렇기에 스케일링을 해주어서 변수들의 사이즈를 비슷하게 만들어줘야하며, 일반적으로 표준편차를 각 predictors마다 구해서 각 데이터에 나눠준다.
- 람다값이 바뀌면 Bias - Variance Tradeoff
이전 Multi Regression에서 설명했던 트레이드 오프를 볼 수 있다. 람다가 작을 수록 계수 크기에 영향을 덜 미치고 좀 더 Flexible한 모델이 형성되어 Bias 문제가 적고 Variance 문제가 생긴다. 반대로 람다가 커지면 영향을 더 미치고 Bias 문제가 많고 Variance 문제가 적다.
One-Hot Encoding
‘컴퓨터나 기계는 문자보다 숫자를 더 좋아한다.’
그렇기에 문자를 숫자로 바꾸는 수많은 기법중 하나로 단어를 표현하는 가장 기본적인 표현 방법이다.
- 단어 집합의 크기를 벡터의 차원으로 하고, 표현하고 싶은 단어의 인덱스에 1의 값을 부여하고, 다른 인덱스에는 0을 부여하는 단어의 벡터 표현 방식
Feature Engineering (특성 공학)
머신러닝에서 훈련에 사용할 좋은 데이터들을 찾는 방법으로, 에러, 이상치 등등 성능에 악영향을 없애는 작업을 말한다.
특성 공학의 종류
- Feature Selection (특성 선택)
- 보유한 특성 중에서 훈련에 가장 유용한 특성을 선택
- 대게 회귀모델같은 알고리즘에서 특징을 선택하기 위해서 많이 사용한다.
- Feature Extraction (차원 감소)
- 특성을 결합하여 더 유용한 특성을 만들기
-
Feature Engineering 방법
- Indicator Variables
- 지표가 되는 변수를 만드는 것으로 지표 변수라고도 불린다.
- 중복 특징
- 두 개의 특징을 결합하여 새로운 특징을 만드는 방법
- 이때 특징이 늘어나기 때문에 자동화를 할 경우에는 특징이 너무 많아져서 Feature Explosin이 발생할 수도 있으므르 주의해야 한다.
- 대표 특징
- 특징들로부터 대표성을 갖는 새로운 특징을 만드는 작업
- 외부 데이터
- 모델 성능을 높이기 위해서 기존 데이터 외에 또 다른 데이터를 가지고 와서 활용하는 방법
- 에러 분석
- 모델에 나온 결과를 바탕으로 새로운 특징을 만드는 방법
- Indicator Variables
처리 방법
- 브레인스토밍
- 생성하고자 하는 특징 결정
- 특징 생성
- 모델에서의 특징 작동 여부와 방식 파악
- 필요시 특징 개선