편향에러를 더하는 대신, 모델의 분산을 줄이는 방법으로 일반화를 유도하는 모델
linear model 범주형 변수 인식 못함 -> 인코딩 필요
범주형 변수를 인코딩 하는 방법
정보적으로 불필요한 요소 제거
ex) [인천, 서울, 부산] -> feature 3개
더미코딩 통해 [인천, 서울] -> feature 2개
자유도가 2
*인천, 서울이 모두 0이면 부산이 1임
-> 인천, 서울로 부산 설명가능
-> 자유도 3 - 1 = 2
특성들이 과도하게 많아서 생기는 과적합을 줄일 수 있고,
모델성능을 높일 수 있음
특성 갯수가 줄어들어서 모델 훈련 시간도 감소
특성들끼리는 상관성이 적으면서, 타켓 특성과는 상관성이 큰 특성들
특성들이 서로 영향을 주는 관계
다중회귀모델에서 특성들이 많아지면 서로 영향을 주는 특성들도 많아질 수 있음
좋은 모델을 만드는데 방해가 됨
회기계수 갯수를 축소시킴 -> 연산속도도 빨라지고, 일반화를 더 잘 유도 가능
오류함수 람다(튜닝 파라미터)가 커지면, 회기계수들 작아짐
-> 영향력이 작은 계수들은 거의 0에 가까워짐
-> 덜 중요한 특성의 갯수를 줄이는 효과를 가져옴
-> 과적합 줄임
람다(튜닝 파라미터) = 0 : 다중회귀모델
람다값을 조절하면서 일반화가 잘 되는 지점을 찾아야함 -> 정규화모델
람다가 커질수록 기울기가 작아짐
-> 이상치의 영향 덜 받음
-> 필요이상으로 특성x의 영향이 작아짐
람다값이 커질수록 기울기 작아짐
-> 0에 수렴
-> 기준모델과 같아짐
비선형관계 모델링
모델의 복잡도 커질수록 특성의 개수 늘어남 -> 과적합
높은 상관계수가 높은 인과관계를 의미하진 않는다
ex) 연중 익사자의 수와 니콜라스 케이지가 연중 영화에 출연하는 횟수는 비슷한 양상을 보여서 상관계수는 높지만, 이 둘이 인과관계에 있다고는 할 수 없다
상관계수만으로 해당 feature가 좋은 지표라고 단정하기 보다는 domain knowledge를 충분히 습득을 하여 feature와 target 간의 인과관계를 더 잘 나타내는 feature를 선택하는 것이 중요
n212a 도전과제 마지막 항목 간략하게 공유합니다.
linearRgression 을 진행했을때 "MSE, RMSE, MAE, R2"
4개의 항목은 0.088 0.113 .0880 0.757 (셋째자리로 반올림)
RandomForestRegressor 을 진행했을때
4개의 항목은 0.055 0.077 0.055 0.888 (셋째자리로 반올림) 이었습니다.
특성은 id, date를 제외한 모든 특성을 사용했습니다.
yr_built 부분은 2021 - yr_built를 하였고
price는 np.log10을 해주었고
price를 제외한 특성을 정규화 시켰습니다.
저도 코드를 따라가는 수준이라 제대로 설명은 어렵지만
찾아보니 정규분포에 맞추기 위해 편차를 줄이는 과정인 것 같습니다. price의 경우 그래프로 확연히 편차가 줄어든 것을 확인했습니다.