[머신러닝] 7. 지도학습(회귀): 릿지 회귀

PurinYun·2023년 11월 23일
0

AIffel

목록 보기
28/75

릿지 회귀

• 오버피팅 문제로 규제(regularization)를 적용한 모델
• 규제 방식: L2 규제
• 파라미터(alpha) 값을 활용해 조절
• alpha 값이 커질수록 회귀 계수 값을 작게 만듦

*규제를 통해서 모델의 성능을 올릴 수 있습니다.

# 릿지 회귀
from sklearn.linear_model import Ridge
model = Ridge(alpha=1)
model.fit(X_train, y_train)
pred = model.predict(X_test)
mean_squared_error(y_test, pred)

# 회귀 계수
coef = pd.DataFrame(data=model.coef_, index=X_train.columns, columns=['alpha1'])
coef

> alpha는 학습 데이터 적합 정도와 회귀 계수 값을 크기 제어를 수행하는 튜닝 파라미터


# 릿지 회귀 (alpha=10)
model = Ridge(alpha=10)
model.fit(X_train, y_train)
pred = model.predict(X_test)
mean_squared_error(y_test, pred)	# 오차가 커질수록 나쁜 성능


# 회귀 계수 (alpha 10)
coef['alpha10'] = model.coef_
coef


# 릿지 회귀 (alpha=0.05)
model = Ridge(alpha=0.05)
model.fit(X_train, y_train)
pred = model.predict(X_test)
mean_squared_error(y_test, pred)

# 회귀 계수 (alpha 0.05)
coef['alpha0.05'] = model.coef_
coef

⇒ 릿지와 라쏘의 차이

:

  • 가중치 제한 방식:
    ◦ 릿지 회귀는 가중치의 제곱합을 제한하는 방식으로 과적합을 방지합니다. 이 방식은 가중치의 절대 크기를 제한하므로 모든 특성의가중치가 비슷하게 작아지는 경향이 있습니다.
    ◦ 라쏘 회귀는 가중치의 절대값의 합을 제한하는 방식으로 과적합을 방지합니다. 이 방식은 일부 가중치를 0으로 만들어 불필요한 특성을 제거하는 효과가 있습니다.
  • 특성 선택:
    ◦ 릿지 회귀는 가중치를 작게 만들지만 0으로 만들지는 않습니다. 따라서 모든 특성이 최종 모델에 포함됩니다.
    ◦ 라쏘 회귀는 일부 가중치를 0으로 만들어 불필요한 특성을 제거합니다. 이는 특성 선택(feature selection)이 자동으로 이루어진다는 것을 의미하며, 이로 인해 더 간단하고 해석하기 쉬운 모델을 얻을 수 있습니다.

릿지 회귀는 모든 특성이 중요하거나 특성 간의 상관관계가 높은 경우에 좋으며, 라쏘 회귀는 일부 특성만 중요하거나 특성 간의 상관관계가 낮은 경우에 좋습니다.

profile
Fantivation

0개의 댓글