系列文章目录
第二章 【机器学习】【监督学习】- 逻辑回归算法 (Logistic Regression)
第四章【机器学习】【监督学习】- K-近邻算法 (K-NN)
第五章【机器学习】【监督学习】- 决策树 (Decision Trees)
第六章【机器学习】【监督学习】- 梯度提升机 (Gradient Boosting Machine, GBM)
第七章 【机器学习】【监督学习】-神经网络 (Neural Networks)
第十一章【机器学习】【监督学习】-局部加权线性回归 (Locally Weighted Linear Regression, LWLR)
第十二章【机器学习】【监督学习】- 岭回归 (Ridge Regression)
十三、【机器学习】【监督学习】- Lasso回归 (Least Absolute Shrinkage and Selection Operator)
十四、【机器学习】【监督学习】- 弹性网回归 (Elastic Net Regression)
十七、【机器学习】【非监督学习】- K-均值 (K-Means)
十八、【机器学习】【非监督学习】- DBSCAN (Density-Based Spatial Clustering of Applications with Noise)十九、【机器学习】【非监督学习】- 层次聚类 (Hierarchical Clustering)二十、【机器学习】【非监督学习】- 均值漂移 (Mean Shift)
二十一、【机器学习】【非监督学习】- 谱聚类 (Spectral Clustering)
目录
[二、 LightGBM](#二、 LightGBM)
一、基本定义
(一)、监督学习
监督学习(Supervised Learning)是机器学习中的一种主要方法,其核心思想是通过已知的输入-输出对(即带有标签的数据集)来训练模型,从而使模型能够泛化到未见的新数据上,做出正确的预测或分类。在监督学习过程中,算法"学习"的依据是这些已标记的例子,目标是找到输入特征与预期输出之间的映射关系。
(二)、监督学习的基本流程
数据收集:获取包含输入特征和对应正确输出标签的训练数据集。
数据预处理:清洗数据,处理缺失值,特征选择与转换,标准化或归一化数据等,以便于模型学习。
模型选择:选择合适的算法,如决策树、支持向量机、神经网络等。
训练:使用训练数据集调整模型参数,最小化预测输出与实际标签之间的差距(损失函数)。
验证与调优:使用验证集评估模型性能,调整超参数以优化模型。
测试:最后使用独立的测试集评估模型的泛化能力,确保模型不仅在训练数据上表现良好,也能在未见过的新数据上做出准确预测。
(三)、监督学习分类算法(Classification)
定义:分类任务的目标是学习一个模型,该模型能够将输入数据分配到预定义的几个类别中的一个。这是一个监督学习问题,需要有一组已经标记好类别的训练数据,模型会根据这些数据学习如何区分不同类别。
例子:垃圾邮件检测(垃圾邮件 vs. 非垃圾邮件)、图像识别(猫 vs. 狗)。
二、 LightGBM
(一)、定义
LightGBM是一个梯度提升框架下的决策树算法,由微软研发,专为处理大规模数据集而设计,具有高效、低资源消耗和高准确性的特点。它是基于Gradient Boosting Decision Tree (GBDT)的变种,通过采用独特的算法优化和数据结构,实现了更快的训练速度和更低的内存使用,尤其是在处理大规模数据集时表现出色。
(二)、基本概念
- Gradient Boosting:一种迭代的机器学习技术,通过构建一系列弱学习器(通常是决策树)并逐个添加到模型中,以减小预测误差。
- Leaf-wise Tree Growth:与传统的深度优先(level-wise)树增长策略不同,LightGBM采用了一种自底向上的叶优先(leaf-wise)策略,优先分割那些具有最大分裂增益的叶子节点,这样可以更早地逼近最优解。
- Histogram-based Algorithm:LightGBM使用基于直方图的算法来加速特征的分裂点查找,减少了计算量和内存消耗。
- Exclusive Feature Bundling (EFB):一种特征捆绑技术,可以减少特征的数量,从而降低计算复杂度。
- Direct Loss Minimization:LightGBM能够直接最小化损失函数,而不是仅仅依赖于梯度和Hessian近似,这使得它在某些情况下能够更准确地拟合数据。
(三)、训练过程
- 初始化:从一个常数开始,作为所有预测的起点。
- 特征选择:构建直方图,基于直方图数据找到最佳的分裂点。
- 叶子节点分裂:采用叶优先策略,优先分裂增益最大的叶子节点。
- 直方图下采样:为了加速训练和防止过拟合,LightGBM可以选择性地下采样直方图数据。
- 数据下采样:在每棵树的训练过程中,可以对数据进行随机抽样,以提高模型的泛化能力。
- 树构建与正则化:构建决策树,并通过正则化项(如L1和L2正则化)来限制树的复杂度,防止过拟合。
- 模型更新:将新树的预测值加权累加到现有模型中,更新预测结果。
- 迭代:重复上述过程,直到达到预设的迭代次数或模型收敛。
(四)、特点
- 高效性:通过采用直方图算法和叶优先策略,LightGBM大大加快了训练速度,降低了内存消耗。
- 低资源消耗:相比其他GBDT算法,LightGBM在处理大规模数据集时占用更少的内存。
- 高准确性:通过直接最小化损失函数和采用高效的特征选择策略,LightGBM能够提供高精度的预测。
- 可扩展性:支持并行和分布式训练,可以轻松处理大规模数据集。
- 易用性:提供多种编程语言的接口,易于集成到现有的机器学习管道中。
(五)、适用场景
- 大规模数据集:特别适合处理包含数十亿条记录的大规模数据集。
- 高维稀疏数据:在处理高维稀疏数据(如文本数据)时表现出色。
- 实时预测:由于训练速度快,LightGBM非常适合需要实时或快速预测的场景。
- 分类和回归问题:可以应用于各种类型的分类和回归问题,包括二分类、多分类和回归分析。
(六)、扩展
LightGBM支持多种目标函数和损失函数,可以根据不同的问题类型选择最合适的设置。
- 支持自定义损失函数和评估指标,允许用户根据具体需求定制模型。
- 内置交叉验证和早期停止机制,有助于自动调优和防止过拟合。
- 支持GPU加速,进一步提升了大规模数据集的处理能力和训练速度。
三、总结
LightGBM因其高效、低资源消耗和高精度的特点,在工业界和学术界得到了广泛应用,成为了处理大规模数据集和复杂机器学习任务的首选工具之一。