电子商务网站建设与管理学习心得,建立网站模板,网站制作书籍,企业网站建设制作公司哪家好1、常见的集成思想
bagging#xff1a;基学习器之间并行训练#xff0c;且学习器之间没有依赖#xff0c;像是集体决策的过程#xff0c;每个个体都进行单独学习#xff0c;再通过投票的方式做最后的集体决策。常见的算法有随机森林
boosting#xff1a;基学习器之间串…1、常见的集成思想
bagging基学习器之间并行训练且学习器之间没有依赖像是集体决策的过程每个个体都进行单独学习再通过投票的方式做最后的集体决策。常见的算法有随机森林
boosting基学习器之间串行训练且学习器之间存在依赖将基学习器层层叠加每一层在训练的时候对前一层基学习器分错的样本给予更高的权重。类似于人类的学习过程对于错误进行加强学习直到犯错误的次数减少到很低的程度。常见的算法有AdaBoost、GBDT、XGBoost。
Stacking:首先使用原始数据训练出一级学习器将一级学习器的输出作为输入并使用对应原始标记作为新标记组成新的数据集来训练二级学习器结合学习器。常用于模型融合。
2、从偏差和方差的角度解释Bagging和Boosting
偏差是由于分类器的表达能力有限导致的系统性错误
方差是由于分类器对于样本分布过于敏感导致在训练样本数较少时产生过拟合
bagging是采用分而治之策略通过对训练样本进行多次采样并分别训练出不同模型然后做综合减小集成分类器之间的方差。
boosting是通过逐步聚焦于基学习器分错的样本减小集成分类器的偏差。
2、随机森林的随机性
数据集有放回随机取样
特征随机选取特征进行分割点计算
3、Adboost、提升树boosting tree梯度提升树的异同
相同
加法模型模型是基学习器进行累加得到一个最终的加法模型。前向分步算法从前向后每一步只学习一个基函数及其系数逐步逼近优化目标函数简化优化的复杂度。
区别
Adaboost的实现步骤
1初始化权重分布假设模型有均匀的权值分布。
2对数据进行学习计算Gm分类器在训练数据集上的分类误差率
3计算Gm分类器系数系数代表在最终分类器上的重要性。
4更新权重m步的权重分布
5对基学习器进行累加组成线性组合得到最终的分类器 注释I(x)是指示函数sign(x)是符号函数。
,
提升树Boosting Tree的实现步骤:
提升方法实际采用加法模型和前向分布算法以决策树为基函数的提升方法称为提升树对分类问题决策树是二叉分类树损失函数时指数损失对于回归问题决策树是二叉回归树损失函数是均方损失。
分析 其中r是当前模型拟合数据的残差。
梯度提升树Gradient boosting DT
将当前模型损失函数的负梯度作为残差的近似替换值。 4、RF和GBDT的区别
相同点都用了集成思想
不同点
RF是bagging思想减小了方差GBDT是boosting思想减小了偏差RF是串行GBDT是并行RF是分类和回归树GBDT只能回归树RF是采用投票进行最终决策GBDT是多棵树累加决策RF对异常值不敏感且不需要归一化GBDT对异常值敏感串行需要归一化GBDT的树是在上一颗树的基础上通过梯度下降求解最优解归一化能收敛的更快而随机森林本来就是通过减少方差提高性能的树之间建立关系是独立的不需要归一化
5、GBDT的缺点
在高维稀疏的数据集上表现性不好。训练过程是串行需要在决策树内部采用一些局部并行的手段提高训练速度。
6、GBDT和XGBoost的异同
不同
GBDT用了一阶导数信息XGBoost用了一阶、二阶导数信息GBDT不执行并行化XGBoost在数据和特征方便增加了并行化处理数据采样、特征重要性排序GBDT对异常值敏感XGBoost新增了缺失值处理策略GBDT只能是树模型XGBoost可以自定义基学习器XGBoost增加了正则化的策略
7、Xgboost 如何寻找最优特征是有放回还是无放回呢
Xgboost在训练的过程中给出各个特征的增益评分最大增益的特征会被选出来作为分裂依据从而记忆了每个特征对在模型训练时的重要性。从根到叶子中间节点涉及某特征的次数作为该特征重要性排序。Xgboost是不放回还支持子采样和列采样。
8、Xgboost为什么要用泰勒展开优势在哪里
XGBoost使用了一阶和二阶偏导二阶导数有利于梯度下降的更快更准使用泰勒展开取得函数做自变量的二阶导数形式可以再不选定损失函数具体形式的情况下仅仅依靠输入数据的值就可以进行叶子分裂优化算法本质上将损失函数的选取和模型算法优化/参数选择分开这种去耦合增强了XGBoost的适用性使得模型按需选取损失函数。 9、RF如何处理缺失值
方法一将数值型变量中的缺失值用其所对应类别中的中位数替换。把描述型变量缺失的部分用所对应类别出现最多的数值替代。
方法二在方法一的基础上做了升级引入了权重变量即对需要替换的数据先和其他数据做相似度测量如果是分类变量则用没有缺失的观测实例相似度的权重投票如果是连续型变量则用加权平均和进行填充。
10、XGBoost如何处理缺失值
xgboost把缺失值当做稀疏矩阵来对待本身的在节点分裂时不考虑的缺失值的数值。缺失值数据会被分到左子树和右子树分别计算损失选择较优的那一个。如果训练中没有数据缺失预测时出现了数据缺失那么默认被分类到右子树。
11、随机森林如何评估特征重要性 12、XGBoost如何给特征评分
在CART树中通过基尼指数选取分离点的特征一个特征被选中的次数越多该特征的评分就越高。
在XGboost中枚举不同的树结构利用打分函数来寻找最优的结构树。从树深度0开始每个节点遍历所有特征对于单个特征首先对特征的值进行排序然后线性扫描该特征进行选择最好的切割点再比较所有的特征选择信息增益增高的特征为当前节点。 假设年龄这个特征我们首先对年龄进行排序设定阈值a将小于阈值a的分为一类大于阈值a的分为一类计算该特征的基尼指数若存在多个阈值就会出现多个基尼指数值选择最大的那个为当前的阈值并计算所有特征年龄、性别、职业等选择最大的gini指数的特征为当前节点。这种只看到当前节点的思想就是greddy exact。
引入新叶子的惩罚项是为了优化目标函数对应了树的剪枝当分割阈值小于惩罚项就忽略这个分割。