- 博客(12)
- 收藏
- 关注
原创 从决策树到XgBoost(四)XgBoost算法
XgBoost算法同样是以CART树为基学习器,运用Gradient Boosting理念的一种集成算法,在各类数据挖掘比赛中表现突出。一、XgBoost算法的推导为了保证符号定义与原论文的一致性,同时与本博客【从决策树到XgBoost】系列文章的风格相仿,就部分符号做特别声明:ftf_tft:第ttt轮采用的子学习器y^i(t)\hat y_i^{(t)}y^i(t): 第ttt轮...
2019-11-30 22:52:06 307
原创 Celery实现异步任务和定时任务的简单示例
Celery是python开发中广为使用的分布式任务队列框架,其整体框架如下图,包括消息中间件(Broker)、任务执行单元Worker、结果存储(Backend)三大部分。本文仅举Celery在异步任务和定时任务的两个小示例。Backend采用redis-4.0.11, Celery版本为4.1.1。读者请注意不同版本redis和Celery的兼容性,同时注意不同版本Celery的API间的...
2019-11-29 17:30:58 652 1
原创 从决策树到XgBoost(二)随机森林
前文详细介绍了利用决策树模型解决分类和回归问题的基本思路。决策树作为一种被广泛采用的机器学习模型,不仅因为其在可解释性、可视化和特征兼容性等方面的优势外,更因为其是一种被各种集成算法所广泛采用的基学习器。那么,为什么决策树在集成学习中在受到青睐呢?除开前文提到的优势,可能还包括以下因素:(1)单棵树的能力具有较大弹性。通过简单的设置树深、叶子节点样本数等参数,可以保证单棵树在强、弱学习器间调节...
2019-11-26 23:28:49 824
原创 集成学习(三)Gradient Boosting算法
一、算法的引出在集成学习框架中,机器学习模型可写成各子学习器的组合:G(x)=∑m=1Mαmgm(x)G(x)=\sum\limits_{m=1}^M\alpha _mg_m(x)G(x)=m=1∑Mαmgm(x)在AdaBoost算法中提供了一种解读Boosting框架的视角,即每一轮子学习器基于上一轮子学习器的表现来调节样本权重,实现模型效果的提升。但实质上,由于相邻两个子学习器...
2019-11-24 19:25:39 784
原创 集成学习(二)AdaBoost算法
在 集成学习(一)概述中,我们简要介绍了集成学习的核心思想的三大主流框架。本文重点介绍boosting框架中,基于样本权值调整的一种算法:AdaBoost。AdaBoost(Adaptive Boosting),顾名思义,是一种自适应式的boosting算法,即每轮按照预测的规则,自动调整子学习器中训练样本的权重和子学习器的线性权重。一、正、负样本权重的平衡...
2019-11-24 15:46:49 317
原创 从决策树到XgBoost(一)决策树模型
一、模型的引入决策树,顾名思义,是一种用于决策的树模型,其通过迭代式的特征判断和结果决策来模拟人类“If-Then”(如果-就)的思维过程。比如,我们在求职就业时的常见思考过程就可以用如下的决策树过程如下。求职中,我们会考虑各种因素(即特征,比如发展前景、薪资待遇、通勤时间、环境氛围、)...
2019-11-23 23:31:12 895
原创 pandas和excel转换身份证号码时的数据有效性问题
在利用Pandas处理和生成Excel中的身份证号码、银行卡号等特殊数据类型,易出现如下异常:1)科学记数法的表示2)末尾4位数会莫名变为03)pandas和excel中数据的不一致(末尾的值会出现偏差)其原因在于两方面:1)对于数值类型数据,excel允许的最大长度为15位。因此在excel保存身份证号码、银行卡号等数据时,务必以文本类型保存;2)pandas在导入这种可以转换为fl...
2019-11-14 20:31:58 2338 4
原创 样本不均衡问题
在分类问题中,经常会遇到训练数据类别不均衡的情况。比如在安防监测问题中,绝大部分的样本均为正常人群,可用的坏人样本相当稀少。如果拿全量样本去训练一个简单的高准确率的二分类模型,那结果毫无疑问会严重偏向于正常人群,从而导致模型的失效。本文从改善采样方式、模型和评价指标等角度出发,来介绍适用于各种场景下的解决样本不均衡问题的方法。一、 采样采样的目的就是使得各类样本均衡。这里称数据充分的类为丰富...
2019-11-03 23:30:29 1472
原创 SVM算法(十)将SVM推广到单分类问题
在实际场景中,我们可能遇到这样的问题:已知所有的训练样本均属于一类,要求挖掘出其中的潜在模式,并将这种模式来判断测试样本是否属于同类。当然,我们可以通过基于显式的距离计算来判断新样本与已知样本簇的匹配与否。这里介绍两种基于SVM的单分类模型,来解决此类问题。一、OCSVM该算法来源于Schölkopf。尽管名为One-Class-SVM,其实模型除了训练样本所属的类外,隐藏了另外一个类——数...
2019-11-02 08:08:38 1235
原创 机器学习中常见的模型评估
在前文机器学习中常见的损失函数中,介绍了回归和分类等问题中常用的损失函数。通过设计合适、易求解的损失函数,可以帮助我们确定问题的解决目标,进而使用解析或者数值方法进行求解。在将训练的若干组模型进行横向对比(即validation),或者表征某模型在测试集上的表现时,往往也需要设计一个指标进行衡量。这个指标有时与损失函数相一致(如很多回归模型),但很多时候需要重新定义(尤其对分类、聚类等问题)。...
2019-11-01 21:30:15 855
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人