jjzjj

python - Python中更有效的加权基尼系数

根据https://stackoverflow.com/a/48981834/1840471,这是加权基尼系数在Python中的实现:importnumpyasnpdefgini(x,weights=None):ifweightsisNone:weights=np.ones_like(x)#Calculatemeanabsolutedeviationintwosteps,forweights.count=np.multiply.outer(weights,weights)mad=np.abs(np.subtract.outer(x,x)*count).sum()/count.sum()

【机器学习】决策树-Gini指数

1.CART树        分类回归树(CART,ClassificationAndRegressionTree)算法是一种决策树分类方法。CART每一个节点上都采用二分法,采用一种二分递归分割的技术,CART生成的树必须是二叉树,也就是无论回归还是分类,无论特征离散还是连续,无论属性取值有多个还是两个,内部节点只能根据属性进行二分。因此,CART算法生成的决策树是结构简洁的二叉树。  CART算法既可以用分类任务,也可用于回归任务。1-2回归树   CART作为回归树:使用平方误差最小准则来选择特征并进行划分,也叫最小二乘回归树。对于特征j,找到j所有的划分点s,s将数据集分为c1、c2两

机器学习实战-AdaBoost

1.概念从若学习算法出发,反复学恶习得到一系列弱分类器(又称基本分类器),然后组合这些弱分类器构成一个强分类器。简单说就是假如有一堆数据data,不管是采用逻辑回归还是SVM算法对当前数据集通过分类器data进行分类,假如一些数据经过第一个分类器之后发现是对的,而另一堆数据经过第一个分类器之后发现数据分类错了,在进行下一轮之前就可以对这些数据进行修改权值的操作,就是对上一轮分类对的数据的权值减小,上一轮分类错的数据的权值增大。最后经过n个分类器分类之后就可以得到一个结果集注意:adaboost算法主要用于二分类问题,对于多分类问题,adaboost算法效率在大多数情况下就不如随机森林和决策树要

机器学习实战-AdaBoost

1.概念从若学习算法出发,反复学恶习得到一系列弱分类器(又称基本分类器),然后组合这些弱分类器构成一个强分类器。简单说就是假如有一堆数据data,不管是采用逻辑回归还是SVM算法对当前数据集通过分类器data进行分类,假如一些数据经过第一个分类器之后发现是对的,而另一堆数据经过第一个分类器之后发现数据分类错了,在进行下一轮之前就可以对这些数据进行修改权值的操作,就是对上一轮分类对的数据的权值减小,上一轮分类错的数据的权值增大。最后经过n个分类器分类之后就可以得到一个结果集注意:adaboost算法主要用于二分类问题,对于多分类问题,adaboost算法效率在大多数情况下就不如随机森林和决策树要