機器學習實戰 09 樹回歸

2021-08-10 07:52:25 字數 944 閱讀 1062

《機器學習實戰》第9章的樹回歸執行時頻繁出錯,這裡主要有兩點:

出錯的**行是:

for splitval in

set(dataset[:,featindex]):

應改為:

for splitval in

set(dataset[:,featindex].t

.a.tolist()[0]):

具體分析過程檢視:

出錯的**行是:

def

binsplitdataset

(dataset, feature, value):

mat0 = dataset[nonzero(dataset[:,feature] > value)[0],:][0]

mat1 = dataset[nonzero(dataset[:,feature] <= value)[0],:][0]

return mat0,mat1

應改為:

def

binsplitdataset

(dataset, feature, value):

mat0 = dataset[nonzero(dataset[:,feature] > value)[0],:]

mat1 = dataset[nonzero(dataset[:,feature] <= value)[0],:]

return mat0,mat1

具體分析過程檢視:

修改之後執行結果:

樹字典:

機器學習實戰之樹回歸

線性回歸包含一些強大的方法,但是這些方法建立的模型需要擬合所有的樣本點 區域性線性回歸除外 當資料擁有眾多特徵,且特徵之間關係十分複雜時,構建全域性模型的想法顯得困難。並且,生活中很多問題都是非線性的,不可能使用全域性線性模型來擬合任何模型。一種可行的方法是將資料集切分成很多份易建模的資料,然後利用...

機器學習實戰 樹回歸 實現記錄

def regleaf dataset returns the value used for each leaf return mean dataset 1 def regerr dataset return var dataset 1 shape dataset 0 def createtree ...

《機器學習實戰》學習筆記 12 回歸 樹回歸

機器學習實戰 學習筆記 12 回歸 樹回歸 分類與回歸樹 classification and regression trees,cart 是由四人幫leo breiman,jerome friedman,richard olshen與charles stone於1984年提出,既可用於分類也可用於...