因為梯度提公升樹訓練過於複雜,而邏輯回歸過於簡單,只能發現線性簡單,而對於互動項和非線性關係沒有辨識度。
於是用梯度提公升樹訓練模型,基於樹模型,就有了交叉和非線性,然後把葉子節點放到邏輯回歸模型裡,解決了邏輯回歸演算法的缺點。
簡單來說,就是將梯度提公升樹的輸出作為邏輯回歸的輸入,最終得到邏輯回歸模型。
如梯度提公升樹中有三棵樹,t
1t_1
t1、t
2t_2
t2和t
3t_3
t3,每棵樹的葉子節點樹為4。設第i
ii棵樹的第j
jj個葉子節點為lij
l_li
j。梯度提公升樹模型訓練完成後,樣本x
xx經過t
1t_1
t1後落在了第3個節點上,即l
13l_
l13
,樣本在t
1t_1
t1的向量表達為(0,
0,1,
0)
(0, 0, 1, 0)
(0,0,1
,0)。隨後樣本經過t
2t_2
t2後落在了第乙個節點,經過t
3t_3
t3後落在了第4個節點,即l
21l_
l21
、l
34l_
l34
,向量表達分別為(1,
0,0,
0)
(1, 0, 0, 0)
(1,0,0
,0)、(0,
0,0,
1)
(0, 0, 0, 1)
(0,0,0
,1)。則樣本在梯度提公升樹模型上的表達為(0,
0,1,
0,1,
0,0,
0,0,
0,0,
1)
(0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1)
(0,0,1
,0,1
,0,0
,0,0
,0,0
,1),隨後輸入邏輯回歸模型參於訓練或者**。
from sklearn.preprocessing import onehotencoder
from sklearn.ensemble import gradientboostingclassifier
gbm1 = gradientboostingclassifier(n_estimators=
50, random_state=
10, subsample=
0.6, max_depth=7,
min_samples_split=
900)
gbm1.fit(x_train, y_train)
train_new_feature = gbm1.
(x_train)
train_new_feature = train_new_feature.reshape(-1
,50)enc = onehotencoder(
)enc.fit(train_new_feature)
# # 每乙個屬性的最大取值數目
# print('每乙個特徵的最大取值數目:', enc.n_values_)
# print('所有特徵的取值數目總和:', enc.n_values_.sum())
train_new_feature2 = np.array(enc.transform(train_new_feature)
.toarray(
))
注:梯度提公升樹模型單獨訓練。
若d
dd為樹的深度,則樹可以將資料劃分為2
d2^d
2d個不相交的子空間,多棵樹就有多種劃分。
這裡把樣本在梯度提公升樹的子空間序號的one-hot編碼作為邏輯回歸模型的輸入。每個子空間都是一類資料,用是否在子空間的指示標籤來代表子空間的所有資料。
最後用所有子空間影響力的和來計算邏輯回歸模型最後輸出的概率值。
簡述hdfs工作原理 HDFS的工作原理
hdfs 的工作原理 hadoop 分布式檔案系統 hdfs 是一種被設計成適合執行在通用硬體上的分布式檔案系統。hdfs 是乙個高度容錯性的系統,適合部署在廉價的 機器上。它能提供高吞吐量的資料訪問,非常適合大規模資料集上的應用。要理解 hdfs 的內部工作原理,首先要理解什麼是分布式 檔案系統。...
ogg mysql的原理 OGG工作原理
一.goldengate介紹 ogg 是一種基於日誌的結構化資料複製軟體 ogg 能夠實現大量交易資料的實時捕捉,變換和投遞,實現源資料庫與目標資料庫的資料同步,保持最少10ms的資料延遲 二.工作原理 三.相關元件 1.manager 負責ogg 整體的監控和管理 1 trail檔案的生成和刪除 ...
SNMP的工作原理
snmp network management protocol,簡單網路管理協議 首先是由ietf的研究小組為了解決internet上的路由器管理問題而提出的。snmp的設計原則是簡單 性和擴充套件性。簡單性是通過資訊型別限制 請求響應或協議而取得。擴充套件性是通過將管理資訊模型與協議 被管理物件...