Questions tagged «boosting»

一系列算法将弱预测模型组合成强预测模型。最常用的方法称为梯度增强,最常用的弱模型是分类/回归树。

4
梯度提升机的精度随着迭代次数的增加而降低
我正在通过caretR中的程序包尝试使用梯度增强机算法。 使用一个小的大学录取数据集,我运行了以下代码: library(caret) ### Load admissions dataset. ### mydata <- read.csv("http://www.ats.ucla.edu/stat/data/binary.csv") ### Create yes/no levels for admission. ### mydata$admit_factor[mydata$admit==0] <- "no" mydata$admit_factor[mydata$admit==1] <- "yes" ### Gradient boosting machine algorithm. ### set.seed(123) fitControl <- trainControl(method = 'cv', number = 5, summaryFunction=defaultSummary) grid <- expand.grid(n.trees = seq(5000,1000000,5000), interaction.depth = 2, shrinkage = …
15 machine-learning  caret  boosting  gbm  hypothesis-testing  t-test  panel-data  psychometrics  intraclass-correlation  generalized-linear-model  categorical-data  binomial  model  intercept  causality  cross-correlation  distributions  ranks  p-value  z-test  sign-test  time-series  references  terminology  cross-correlation  definition  probability  distributions  beta-distribution  inverse-gamma  missing-data  paired-comparisons  paired-data  clustered-standard-errors  cluster-sample  time-series  arima  logistic  binary-data  odds-ratio  medicine  hypothesis-testing  wilcoxon-mann-whitney  unsupervised-learning  hierarchical-clustering  neural-networks  train  clustering  k-means  regression  ordinal-data  change-scores  machine-learning  experiment-design  roc  precision-recall  auc  stata  multilevel-analysis  regression  fitting  nonlinear  jmp  r  data-visualization  gam  gamm4  r  lme4-nlme  many-categories  regression  causality  instrumental-variables  endogeneity  controlling-for-a-variable 

1
哪些套袋算法值得随机森林公司接班?
对于增强算法,我想说它们发展得很好。1995年初引入了AdaBoost,然后过了一段时间,它是Gradient Boosting Machine(GBM)。最近,在2015年左右推出了XGBoost,它非常准确,可以处理过度拟合,并且已成为多次Kaggle竞赛的获胜者。LightGBM在2017年由Microsoft引入,与XGBoost相比,它提供的培训时间大大减少。此外,Yandex推出了CatBoost,用于处理分类功能。 随机森林(Random Forest)于2000年代初推出,但是有没有值得的继任者?我认为,如果存在一种比Random Forest更好的装袋算法(可以在实践中轻松应用),它将在像Kaggle这样的地方引起关注。另外,为什么增强成为更流行的集成技术,是因为您可以构建更少的树以获得最佳预测?

1
什么时候要使用AdaBoost?
正如我听说AdaBoost分类器在工作中反复提到的那样,我想对它的工作原理以及何时使用它有更好的了解。我已经继续阅读了许多在Google上找到的关于它的论文和教程,但是分类器的某些方面仍然难以理解: 我见过的大多数教程都将AdaBoost视为找到许多分类器的最佳加权组合。这对我来说很有意义。没有意义的是AdaBoost似乎只接受一个弱学习者的实现(即MALLET)。这有什么意义?如果只有一个分类器提供给AdaBoost,是否不应该返回权重为1的相同分类器?它如何从第一个分类器产生新的分类器? 何时真正要使用AdaBoost?我已经读过它应该是最好的即用型分类器,但是当我尝试提升MaxEnt分类器时,我得到的f分数达到70%以上,AdaBoost谋杀了它,并给了我f-得分大约是15%,而召回率却很高,而精度却很低。所以现在我很困惑。我什么时候想使用AdaBoost?如果可能的话,我正在寻找更多的直观而不是严格的统计答案。


3
R:我在gbm和RandomForest的部分依赖图中看到了什么?
实际上,我以为我已经理解了一个可以显示具有部分依赖图的图,但是使用一个非常简单的假设示例,我很困惑。在下面的代码块中,我生成了三个自变量(a,b,c)和一个因变量(y),其中c与y呈紧密线性关系,而a和b与y不相关。我使用R包使用增强的回归树进行回归分析gbm: a <- runif(100, 1, 100) b <- runif(100, 1, 100) c <- 1:100 + rnorm(100, mean = 0, sd = 5) y <- 1:100 + rnorm(100, mean = 0, sd = 5) par(mfrow = c(2,2)) plot(y ~ a); plot(y ~ b); plot(y ~ c) Data <- data.frame(matrix(c(y, a, b, …


3
随机森林和增强算法是参数化还是非参数化?
通过阅读出色的统计模型:这两种文化(Breiman 2001),我们可以抓住传统统计模型(例如线性回归)和机器学习算法(例如Bagging,Random Forest,Boosted tree ...)之间的所有差异。 布雷曼批评数据模型(参数化),因为它们基于这样的假设:观测值是由统计学家规定的已知的正式模型生成的,该模型可能无法很好地模仿自然。另一方面,机器学习算法不采用任何形式化的模型,而是直接从数据中学习输入变量和输出变量之间的关联。 我意识到Bagging / RF和Boosting也是某种参数:例如,ntree,RF中的mtry,学习率,包率,随机梯度Boosted树中的树复杂性都是调整参数。由于我们正在使用数据来查找这些参数的最佳值,因此我们还需要根据数据估算这些参数。 那有什么区别呢?RF和Boosted Trees参数模型吗?

1
为什么不总是使用集成学习?
在我看来,集成学习将始终比仅使用单个学习假设提供更好的预测性能。 那么,为什么我们不一直使用它们呢? 我的猜测可能是因为计算方面的限制?(即使那样,我们也使用弱预测变量,所以我也不知道)。

9
增强了python中的决策树?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为交叉验证的主题。 5个月前关闭。 是否有一个好的Python库用于训练增强型决策树?
13 python  cart  boosting 

2
为决策树分类功能编码的最佳做法?
在为线性回归编码分类特征时,有一条规则:假人的数量应比级别总数少一个(以避免共线性)。 决策树是否存在类似的规则(袋装,增强)?我之所以这样问是因为,Python的标准做法似乎是将n级别扩展到对我而言似乎不是最佳的n虚拟对象(sklearns OneHotEncoder或Pandas pd.get_dummies)。 作为编码决策树分类功能的最佳做法,您有何建议?

5
自动化机器学习是一个梦想吗?
当我发现机器学习时,我看到了不同的有趣技术,例如: 使用以下技术自动调整算法grid search: 打通的相同的“类型”的不同算法的组合更准确的结果,那就是boosting, 通过对不同算法的组合得到更准确的结果(但不是同一个类型的算法),这就是stacking, 可能还有更多我仍要发现... 我的问题是:所有这些部分。但是,是否有可能将它们组合在一起,以形成一种算法,该算法通过充分利用所有技术中的优势来将输入的清洁数据作为输入并输出良好的结果?(当然,专业数据科学家的工作效率可能会降低,但他会比我更好!)如果是,您是否有示例代码,或者您知道可以做到这一点的框架吗? 编辑:经过一些答案后,似乎必须进行一些缩小。让我们举个例子,我们有一列包含分类数据,我们称之为它,y并且我们希望从X虚拟数据或实际数值数据(高度,温度)的数值数据进行预测。我们假设以前已经清洁过。是否存在可以获取此类数据并输出预测的现有算法?(通过测试多种算法,对其进行调整,增强等),如果是,它的计算效率是否很高(如果与正常算法进行比较,是否可以在合理的时间内完成计算),您是否有代码示例?

3
为什么增强方法对异常值敏感
我发现有许多文章指出增强方法对异常值很敏感,但没有文章解释原因。 以我的经验,离群值对于任何机器学习算法都是不利的,但是为什么提升方法特别敏感? 下列算法如何在对异常值的敏感性方面进行排名:增强树,随机森林,神经网络,SVM和简单回归方法(例如逻辑回归)?

1
Logistic损失函数的梯度
我想问一个与此有关的问题。 我在这里找到了为xgboost编写自定义损失函数的示例: loglossobj <- function(preds, dtrain) { # dtrain is the internal format of the training data # We extract the labels from the training data labels <- getinfo(dtrain, "label") # We compute the 1st and 2nd gradient, as grad and hess preds <- 1/(1 + exp(-preds)) grad <- preds …


2
将Adaboost与SVM一起使用进行分类
我知道Adaboost会尝试使用一组弱分类器的线性组合来生成强分类器。 但是,我读过一些论文,建议Adaboost和SVM在某些条件和情况下可以协调工作(即使SVM是强大的分类器)。 从体系结构和编程的角度看,我无法把握它们如何结合使用。我读过许多论文(也许是错误的论文),但并没有清楚地解释它们如何协同工作。 有人可以阐明他们如何结合使用以进行有效分类吗?指向一些论文/文章/期刊的指针也将不胜感激。

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.