LightGBM分类模板
LightGBM分类模板
**分类问题
** 机器学习中一个重要的任务——分类(classification),即找一个函数判断输入数据所属的类别,可以是二类别问题(是/不是),也可以是多类别问题(在多个类别中判断输入数据具体属于哪一个类别)。与回归问题(regression)相比,分类问题的输出不再是连续值,而是离散值,用来指定其属于哪个类别。分类问题在现实中应用非常广泛,比如垃圾邮件识别,手写数字识别,人脸识别,语音识别等。
首先思考一个问题,能不能用回归问题的解法去求解分类问题呢? 以二分类问题为例,对于类别1,我们假设其目标值为1,对于类别2,假设其目标值为-1。在回归问题中,我们需要找到一个函数,使得函数的预测值尽可能的接近目标值。如下图所示,为了方便可视化,假设每个样本只用两维特征表示。
上图中,蓝色的点目标值是1,代表类别1;红色的点目标值是-1,代表类别2。现在需要找到一个函数对这些点进行拟合,如图中绿线所代表的函数b+w1x1+w2x2=0b+w1x1+w2x2=0。对于一个样本点,如果其对应的函数值大于0,则认为其属于类别1,反之属于类别2。这么做看起来好像也是可以的,但现在我们考虑另外一种情况,如下图所示:
此时,在类别1中加入了右下角这些点,如果仍然采用绿色那条线所代表的函数进行预测,这些新加入进来的点的误差将特别的大,为了缓解由此带来的误差,绿色的线将往右下角偏移,以此减少误差。但这么做明显是不符合常理的,误差虽然减少了,但也带来了更严重的分类类别错误问题。造成这个问题的本质是损失函数定义的不恰当,回归问题种将损失函数定位为误差函数是因为回归的目标是尽可能拟合样本点,但分类问题的目标是尽可能将样本点分类到正确的类别中,仍然使用误差函数作为损失函数显然是不合适的。会闹出这样的笑话:对于那些类别明显的点,回归问题求解的惩罚反而更加严重。另外对于多分类问题种,我们给每个类别指定一个对应的目标值,在机器看来这些目标值之间是有联系的,比如:类别1目标值指定为1,类别2目标值指定为2,类别3目标值指定为3……计算机在寻找样本之间的关系时,会默认类别2和类别3要比类别1和类别3更加有关联,因为3和2更加靠近。
LightGBM原理
**LightGBM是一个用于梯度增强机器学习的开源框架。默认情况下,LightGBM将训练一个梯度增强决策树(GBDT),但它也支持随机森林、DART回归树和基于梯度的单边抽样(Goss)。 该框架速度快,专为分布式训练设计。它支持大规模的数据集和GPU上的训练。在许多情况下,LightGBM被发现比XGBoost更精确、更快,尽管这与需要解决的问题有关。 LightGBM和XGBoost都得到了广泛的应用,并提供了高度优化的、可伸缩的和快速的梯度增强机(GBMs)实现。
Gradient Boosting原理
**在考虑集成学习时,主要有两种方法:bagging和boosting。bagging包括对许多独立模型的训练,并通过某种形式的聚合(平均、投票等)将它们的预测组合起来。bagging的一个例子是随机森林。 boosting按顺序训练模型,其中每个模型都从前一个模型的错误中学习。从一个弱基模型开始,对模型进行迭代训练,每个模型都加入到前一个模型的预测中,从而产生一个较强的整体预测。
模板流程
**参数设置
数据拆分(CSV):数据1比重:0.2 数据2比重:0.8
K折交叉验证(KFold):nSplits:3
网格搜索(GridSearchCV):Param Grid:{“n_estimators”:[100,200,500,1000]} 记分函数:accuracy
字段选择
**特征字段: radius_mean,texture_mean,perimeter_mean,area,smoothness_mean,compactness_mean,concavity_mean,concave_points_mean,symmetry_mean,fractal_dimension_mean,radius_se,texture_se,perimeter_se,area_se,smoothness_se,compactness_se,concavity_se,concave_points_se,symmetry_se,fractal_dimension_se,radius_worst,texture_worst,perimeter_worst,area_worst,smoothness_worst,compactness_worst,concavity_worst,concave_points_worst,symmetry_worst,fractal_dimension_worst
标识字段: cancer
参数设置与字段选择根据不同的数据集灵活设置
_