首页 存档 技术 查看内容

集成算法与随机森林:零售数据预测客户是否怀孕?

2018-3-30 13:00 |来自: 互联网 324 0

摘要: 集成算法(Ensemble Models) 今天介绍一种类似于**投票制度的预测算法集成算法(Emsemble Methods)。 我们用的是某个大型超市的零售数据。 我们的目标是通过过去顾客在商场的购买行为预测他们家庭是否有人怀孕。 这 ...

集成算法(Ensemble Models)

今天介绍一种类似于**投票制度的预测算法集成算法(Emsemble Methods)。

我们用的是某个大型超市的零售数据。

我们的目标是通过过去顾客在商场的购买行为预测他们家庭是否有人怀孕。


这样在营销活动中,我们可以进行有针对性的内容推送。

乞丐方法的一些基本概念

这里我们先介绍集成算法的一个小方法:乞丐方法

首先,我们可以选取一个指标,来做分类器,这样的分类器我们可以称其为弱学习者(weak learner)。

比如,这家人家有没有在历史记录中购买叶酸就可以作为一个弱学习者,我们可以假设过去买过叶酸的就是怀孕的,没买过叶酸的就是不怀孕的。

接下来我们要引入一个新的概念nude impurity(节点杂质)。

所谓节点杂质是指我们用分类器分类训练集的错误与随机分类错误率的差距。

以购买叶酸这个弱学习者为例,在我们的训练集中,它的错误率是44%。虽然也很高,但比起我们随机猜50%的错误率已经有更好的表现了。

少年,你需要力量

现在,我们有了第一个弱学习者分类器来预测我们的消费客户是不是怀孕。但是,显然它的表现不够好。但是如果我们有成千上万个弱分类器,让他们来**投票,我们模型的表现就会越来越好。

在我们的数据集中,我们已经有了现成的19个分类器。现在,我们通过一种叫乞丐(Bagging)的方法来获得更多的分类器增强我们模型的效率。

  • 先从现有的数据集中取一块,常规的做法是选取特征数的平方根个数作为列数,然后三分之二的行数作为行数。

  • 建立弱学习者做分类器

  • 在所有的弱学习者众选取nude impuity最低的那个留下

  • 把其它的都扔回去,重复这个过程

在你有了成百个分类器后,每个分类器独立投票,你就可以基于分类器判断顾客怀孕的百分比来预测顾客是否怀孕!

后面有更精彩的:随机森林与Boosting

这篇文章中用到的bagging方法其实是加州大学伯克利分校的Breiman Leo和Adele Cutler于2001年发表的论文中提到的新的机器学习算法随机森林的一种,这个方法很好玩,后续还会介绍。

在上面那个例子中,我们重采样用了随机的方法,如果在重采样时有了权重就叫Boosting。

少年,更大的世界等着你。


本文转载于微信公众号: 沈序(freeshenxu),更多微信文章请扫描关注公众号:

声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

相关分类

返回顶部