文章目录
github简单实现
一. 原理推导
二. python实现
def calaResidual(yReal , yPre):
return yReal - yPre
def mapData(dataSet , preList):
for i in range(len(dataSet)):
dataSet[i][-1] = calaResidual(dataSet[i][-1] , preList[i])
return dataSet
def gbdt(dataSet , nTree , depth , leafSize):
allTree = []
if nTree == 0:
return None
for i in range(nTree):
dt = cart.cartReg(depth ,leafSize)
dt.fit(dataSet)
preList = dt.predict(dataSet)
mapData(dataSet , preList)
allTree.append(dt.tree)
return allTree