사이킷런 래퍼 XGBoost
파이썬 래퍼 XGBoost에서는 objective라는 파라미터를 train의 인자로 넣어주었습니다.
1) 그렇다면 사이킷런 래퍼 XGBoost에서는 objective에 해당하는 인자가 없는건가요? 만약 default값으로 설정이 되어있다면, 어떤 값으로 설정되어있나요?
2) 책에서는(232pg) XGBoost의 objective는 최솟값을 가져야할 손실 함수를 정의한다고 하는데, 손실함수는 eval_metric에 사용되는 함수들이고 objective는 다르게 해석해야 하지 않을까 헷갈립니다.
답변 2
2
안녕하십니까,
1. 사이킷런 XGBoost에서도 생성시에 objective='reg:squarederror' 와 같이 objective function(목적함수 또는 손실함수)를 선언해 주실 수 있습니다. default는 XGBRegressor(즉 regression)의 경우 reg:squarederror 로 RMSE입니다. XGBClassifier(즉 classification의 경우) binary:logistic 로짓 결과 값입니다.
2. objective function, loss function, cost function 다 동일한 얘기입니다. 목적함수, 손실함수, 비용함수 모두 estimator가 최적의 값을 찾을 기반 함수를 의미합니다. eval_metric은 검증 데이터 세트에 적용할 성능 지표 입니다. regression의 경우 보통 objective와 동일하게 설정해 줍니다(물론 다르게 설정해도 됩니다). classification의 경우 모델이 추구하는 성능 지표에 따라 달라질 수 있습니다. 정확도, 재현율, roc-auc 등이 될 수 있습니다.
머신러닝 모델은 objective function을 train시에 최소값을 반환하는 방향성을 가지도록 계속 학습해 줍니다. eval_set는 학습을 수행하는 estimator가 제대로 검증 데이터에서 성능이 향상되는 지 확인하는데 사용됩니다. 학습 데이터에서 손실 값이 계속 감소하지만 검증 데이터에서 더 이상 성능이 향상되지 않으면 early stop으로 학습을 중지할 수 있습니다. 더 이상 학습 해봐야 오버피팅이 되기 때문입니다.
감사합니다.
안녕하세요 열심히 수강중인 학생입니다
0
58
2
정수 인덱싱
0
65
2
넘파이 오류
0
83
2
11강 numpy의 axis 축 질문 드립니다.
0
84
2
Kaggle 에서 Santander customer satisfaction data 를 다운로드 되지가 않습니다.
0
76
2
Feature importances 를 보여주는 barplot 이 그래프로 안보여져요.
0
68
2
타이타닉 csv 파일이 주피터 화면에 보이지 않습니다.
0
73
2
타이타닉 csv 파일이 주피터 화면에 보이지 않습니다.
0
62
2
5강 강의 오류가 있어요.
0
81
1
실무에서 LTV 관련 모델 선택 질문입니다!
0
71
2
14강 강의 듣는중에 궁금한게 있어서 질문합니다~
0
67
3
파이썬 다운그레이 후 사이킷런 재설치
0
115
2
좋은 강의 감사합니다.
0
70
2
scoring 함수 음수값
0
66
2
6번 강의에 사이킷런, 파이썬, 아나콘다 각각 버전 일치 안 시키고 진행해도 강의 따라가 지나요?
0
98
2
분류 평가 정확도 예측
0
75
2
안녕하세요. 강의 들으면서 업무에 적용하고 싶은 수강생입니다.
0
96
1
카카오톡 채널 있나요
0
104
1
혹시 강의에서 사용하시는 ppt 받을 수 있는건가요
0
187
2
pca 스케일링 관련하여 질문드립니다.
0
100
2
주피터 대신 구글 코랩
0
169
2
강의에서 사용하는 pdf or ppt자료는 따로 없는 건가요?
0
145
2
실루엣 스코어..
0
82
2
float64 null 값 처리 방법
0
99
2





