누군가 다음과 같이 도와주세요 : 캐럿 패키지가있는 xgboost 교육 모델을 기본 메트릭 RMSLE로 변경해야합니다. 기본적으로 RMSE에서 캐럿과 xgboost 기차 및 측정. 여기 r에있는 캐럿의 RMSLE 메트릭 만들기
코드의 라인은 다음과 같습니다는 캐럿 형식
custom_summary = function(data, lev = NULL, model = NULL){
out = rmsle(data[, "obs"], data[, "pred"])
names(out) = c("rmsle")
out
}
만들 제어 대상
control = trainControl(method = "cv",
number = 2,
summaryFunction = custom_summary)
조정 매개 변수의 그리드를 만들 사용자 정의 요약 함수를 만들
grid = expand.grid(nrounds = 100,
max_depth = 6,
eta = 0.075,
gamma = 0,
colsample_bytree = 0.4,
min_child_weight = 2.25,
subsample = 1)
cl = makeCluster(3, type="SOCK") #make clusters
registerDoSNOW(cl) #register clusters
set.seed(1)
내 모델
caret4 = train(price_doc~. - sub_area - id,
data=train.train,
method="xgbTree",
trControl=control,
tuneGrid=grid,
metric="rmsle",
maximize = FALSE)