欢迎来到Python教程自学网!
当前位置: 首页 > Pyhon开发 > python如何掌握AdaBoost算法

python如何掌握AdaBoost算法

   

python如何掌握AdaBoost算法

如果说最像是盲人摸象的算法,不是不存在的,因为你看不懂算法里的大部分内容,重要还是因为她里面组合拼搭了很多的内容,最终目的还是为了对它自己组合出一个最强大的方法使用,这就是今天要跟大家教学了解的AdaBoost算法,这不仅仅是一个简单的算法,更是一个集成学习力非常有效的算法应用。赶快来了解吧~

Python实现AdaBoost算法

计算弱分类器误差

 pred_train = models[m].predict(x_train)
 miss = [int(x) for x in (pred_train != y_train)]
 error = np.dot(w, miss)

计算弱分类器的权重

 theta[m] = 0.5 * np.log((1-error)/error)

更新数据权重

 for i in n_train:
 w[i] = w[i]*np.exp(-theta[m]*y_train[i]*pred_train[i])

正规化权重

 for i in n_train:
 w[i] /= np.sum(w[i])

最终的预测

predict = np.dot(theta, [model[m].predict(x_test) for m in range(M)])

直接给大家简单粗暴了演示在Python实现AdaBoost算法的一些代码示例,大家看下有没有自己或者之前想要找寻的呢?有的话,就多看两遍学习,加深印象哦~