阿里云天池机器学习训练营任务四

通过设置 bagging_fraction 和 bagging_freq 参数来使用 bagging 方法。

通过设置 feature_fraction 参数来使用特征的子抽样。

选择较小的 max_bin 参数。

使用 save_binary 在未来的学习过程对数据加载进行加速。

2.4.1.3 针对准确率的参数调整

使用较大的 max_bin (学习速度可能变慢)

使用较小的 learning_rate 和较大的 num_iterations

使用较大的 num_leaves (可能导致过拟合)

使用更大的训练数据

尝试 dart 模式

2.4.1.4 针对过拟合的参数调整

使用较小的 max_bin

使用较小的 num_leaves

使用 min_data_in_leaf 和 min_sum_hessian_in_leaf

通过设置 bagging_fraction 和 bagging_freq 来使用 bagging

通过设置 feature_fraction 来使用特征子抽样

使用更大的训练数据

使用 lambda_l1, lambda_l2 和 min_gain_to_split 来使用正则

尝试 max_depth 来避免生成过深的树

2.4.2 LightGBM原理粗略讲解

LightGBM底层实现了GBDT算法,并且添加了一系列的新特性:

基于直方图算法进行优化,使数据存储更加方便、运算更快、鲁棒性强、模型更加稳定等。

提出了带深度限制的 Leaf-wise 算法,抛弃了大多数GBDT工具使用的按层生长 (level-wise) 的决策树生长策略,而使用了带有深度限制的按叶子生长策略,可以降低误差,得到更好的精度。

提出了单边梯度采样算法,排除大部分小梯度的样本,仅用剩下的样本计算信息增益,它是一种在减少数据量和保证精度上平衡的算法。

提出了互斥特征捆绑算法,高维度的数据往往是稀疏的,这种稀疏性启发我们设计一种无损的方法来减少特征的维度。通常被捆绑的特征都是互斥的(即特征不会同时为非零值,像one-hot),这样两个特征捆绑起来就不会丢失信息。

LightGBM是基于CART树的集成模型,它的思想是串联多个决策树模型共同进行决策。

那么如何串联呢?LightGBM采用迭代预测误差的方法串联。举个通俗的例子,我们现在需要预测一辆车价值3000元。我们构建决策树1训练后预测为2600元,我们发现有400元的误差,那么决策树2的训练目标为400元,但决策树2的预测结果为350元,还存在50元的误差就交给第三棵树……以此类推,每一颗树用来估计之前所有树的误差,最后所有树预测结果的求和就是最终预测结果!

LightGBM的基模型是CART回归树,它有两个特点:(1)CART树,是一颗二叉树。(2)回归树,最后拟合结果是连续值。

LightGBM模型可以表示为以下形式,我们约定ft(x)ft(x)表示前tt颗树的和,ht(x)ht(x)表示第tt颗决策树,模型定义如下:

ft(x)=∑Tt=1ht(x)ft(x)=∑t=1Tht(x)

由于模型递归生成,第tt步的模型由第t−1t−1步的模型形成,可以写成:

ft(x)=ft−1(x)+ht(x)ft(x)=ft−1(x)+ht(x)

每次需要加上的树ht(x)ht(x)是之前树求和的误差:

rt,i=yi−fm−1(xi)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值