1.回归问题的BoostingTree学习算法的详解和数学求解过程
回归问题的BoostingTree学习算法的生成过程详解、以及示例讲解数学求解的详细过程,可以详见上篇博客:
https://blog.csdn.net/u012421852/article/details/80275534
2.回归问题BoostingTree学习算法的Python实现
2.1能不用for,就不要用for
在python实现时,能不用for或者[for]就不要用~,尽量用向量法实现循环的操作步骤。
多考虑:(1)用lambda + np.frompyfunc的数组化操作
(2)用lambda + lambda + np.frompyfunc实现多层数组化操作,比如下面提供的提升树的回归函数方法Regress()
2.2精简后的python代码
# -*- coding: utf-8 -*-
"""
@author: 蔚蓝的天空
Aim:(Python向量法)实现生成回归问题Boosting Tree
"""
import numpy as np
class CBoostingTree(object):
'''
实现回归问题提升树(Boostring Tree)学习算法
学习给定训练样本集的回归问题的提升树模型,考虑只用树桩作为基函数
'''
def __init__(self, train_samples, max_err):
''' class init function
:param train_samples:训练样本集
:param max_err:提升树拟合训练数据的平方损失误差允许的最大误差值
'''
self.Samples = train_samples