Questions tagged «boosting»

1
R:实现我自己的梯度提升算法
我正在尝试编写自己的梯度提升算法。我了解有类似的现有软件包gbm,xgboost,但我想通过编写自己的软件包来了解算法的工作原理。 我正在使用iris数据集,结果是Sepal.Length(连续的)。我的损失函数是mean(1/2*(y-yhat)^2)(基本上是前面有1/2的均方误差),所以我相应的梯度就是残差y - yhat。我正在将预测值初始化为0。 library(rpart) data(iris) #Define gradient grad.fun <- function(y, yhat) {return(y - yhat)} mod <- list() grad_boost <- function(data, learning.rate, M, grad.fun) { # Initialize fit to be 0 fit <- rep(0, nrow(data)) grad <- grad.fun(y = data$Sepal.Length, yhat = fit) # Initialize model mod[[1]] <- fit # …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.