반응형
선형 모델의 성능 향상을 위한 방법
1. 스케일 전처리(정규화)
- 선형 모델은 각각의 특성에 대해 가중치를 할당
- 따라서 각각 특성의 스케일 차이 발생 시 가중치 적용에 어려움
- 정규화 : 데이터를 구성하는 각 컬럼의 값을 평균은 0, 표준편차는 1로 스케일 조정
from sklearn.preprocessing import StandardScaler
scaler = StandardScaler()
scaler.fit(X_train)
X_train = scaler.transform(X_train)
X_test = scaler.transform(X_test)
2. 차원 확장
- 선형 모델의 방정식 : y = x1 * w1 + x2 * w2 ... xN * wN + b
- 차원을 확장하여 데이터에 대한 성능을 극대화
from sklearn.preprocessing import PolynomialFeatures
# - degree 하이퍼 파라메터를 사용하여 차원을 조절
poly = PolynomialFeatures(degree=2, include_bias=False)
poly.fit(X)
X_poly = poly.transform(X)
# 차원을 2차원으로 확장한 데이터로 학습을 진행
model = LinearRegression().fit(X_poly, y)
pred = model.predict(X_poly)
반응형
'머신러닝' 카테고리의 다른 글
[머신러닝] 데이터 전처리 - 문자열 인코딩 (0) | 2022.06.07 |
---|---|
[머신러닝] 데이터 전처리 - 결측 데이터 처리 (0) | 2022.06.07 |
[머신러닝] Ridge, Lasso 클래스 (0) | 2022.04.22 |
[머신러닝] 회귀분석을 위한 선형 모델 - LinearRegression (0) | 2022.04.22 |
[머신러닝] K-최근접 이웃 알고리즘(K-NN) (0) | 2022.04.22 |