久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術(shù)文章
文章詳情頁

Python集成學(xué)習(xí)之Blending算法詳解

瀏覽:2日期:2022-06-19 18:10:21
目錄一、前言二、Blending介紹三、Blending流程圖四、案例一、前言

普通機(jī)器學(xué)習(xí):從訓(xùn)練數(shù)據(jù)中學(xué)習(xí)一個(gè)假設(shè)。

集成方法:試圖構(gòu)建一組假設(shè)并將它們組合起來,集成學(xué)習(xí)是一種機(jī)器學(xué)習(xí)范式,多個(gè)學(xué)習(xí)器被訓(xùn)練來解決同一個(gè)問題。

集成方法分類為:

Bagging(并行訓(xùn)練):隨機(jī)森林

Boosting(串行訓(xùn)練):Adaboost; GBDT; XgBoost

Stacking:

Blending:

或者分類為串行集成方法和并行集成方法

1.串行模型:通過基礎(chǔ)模型之間的依賴,給錯(cuò)誤分類樣本一個(gè)較大的權(quán)重來提升模型的性能。

2.并行模型的原理:利用基礎(chǔ)模型的獨(dú)立性,然后通過平均能夠較大地降低誤差

二、Blending介紹

訓(xùn)練數(shù)據(jù)劃分為訓(xùn)練和驗(yàn)證集+新的訓(xùn)練數(shù)據(jù)集和新的測試集

將訓(xùn)練數(shù)據(jù)進(jìn)行劃分,劃分之后的訓(xùn)練數(shù)據(jù)一部分訓(xùn)練基模型,一部分經(jīng)模型預(yù)測后作為新的特征訓(xùn)練元模型。測試數(shù)據(jù)同樣經(jīng)過基模型預(yù)測,形成新的測試數(shù)據(jù)。最后,元模型對(duì)新的測試數(shù)據(jù)進(jìn)行預(yù)測。Blending框架圖如下所示:注意:其是在stacking的基礎(chǔ)上加了劃分?jǐn)?shù)據(jù)

三、Blending流程圖

Python集成學(xué)習(xí)之Blending算法詳解

第一步:將原始訓(xùn)練數(shù)據(jù)劃分為訓(xùn)練集和驗(yàn)證集。 第二步:使用訓(xùn)練集對(duì)訓(xùn)練T個(gè)不同的模型。 第三步:使用T個(gè)基模型,對(duì)驗(yàn)證集進(jìn)行預(yù)測,結(jié)果作為新的訓(xùn)練數(shù)據(jù)。 第四步:使用新的訓(xùn)練數(shù)據(jù),訓(xùn)練一個(gè)元模型。 第五步:使用T個(gè)基模型,對(duì)測試數(shù)據(jù)進(jìn)行預(yù)測,結(jié)果作為新的測試數(shù)據(jù)。 第六步:使用元模型對(duì)新的測試數(shù)據(jù)進(jìn)行預(yù)測,得到最終結(jié)果。

Python集成學(xué)習(xí)之Blending算法詳解

四、案例

相關(guān)工具包加載

import numpy as npimport pandas as pd import matplotlib.pyplot as pltplt.style.use('ggplot')%matplotlib inlineimport seaborn as sns

創(chuàng)建數(shù)據(jù)

from sklearn import datasets from sklearn.datasets import make_blobsfrom sklearn.model_selection import train_test_splitdata, target = make_blobs(n_samples=10000, centers=2, random_state=1, cluster_std=1.0 )## 創(chuàng)建訓(xùn)練集和測試集X_train1,X_test,y_train1,y_test = train_test_split(data, target, test_size=0.2, random_state=1)## 創(chuàng)建訓(xùn)練集和驗(yàn)證集X_train,X_val,y_train,y_val = train_test_split(X_train1, y_train1, test_size=0.3, random_state=1)print('The shape of training X:',X_train.shape)print('The shape of training y:',y_train.shape)print('The shape of test X:',X_test.shape)print('The shape of test y:',y_test.shape)print('The shape of validation X:',X_val.shape)print('The shape of validation y:',y_val.shape)

設(shè)置第一層分類器

from sklearn.svm import SVCfrom sklearn.ensemble import RandomForestClassifierfrom sklearn.neighbors import KNeighborsClassifier

clfs = [SVC(probability=True),RandomForestClassifier(n_estimators=5,n_jobs=-1,criterion=’gini’),KNeighborsClassifier()]

設(shè)置第二層分類器

from sklearn.linear_model import LinearRegressionlr = LinearRegression()

第一層

val_features = np.zeros((X_val.shape[0],len(clfs)))test_features = np.zeros((X_test.shape[0],len(clfs)))

for i,clf in enumerate(clfs): clf.fit(X_train,y_train) val_feature = clf.predict_proba(X_val)[:,1] test_feature = clf.predict_proba(X_test)[:,1] val_features[:,i] = val_feature test_features[:,i] = test_feature

第二層

lr.fit(val_features,y_val)

輸出預(yù)測的結(jié)果

lr.fit(val_features,y_val)from sklearn.model_selection import cross_val_scorecross_val_score(lr,test_features,y_test,cv=5)

到此這篇關(guān)于Python集成學(xué)習(xí)之Blending算法詳解的文章就介紹到這了,更多相關(guān)Python Blending算法內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 中国黄色在线视频 | 欧美日韩国产一级片 | 日韩视频国产 | 亚洲精品成人无限看 | 在线观看精品自拍私拍 | 亚洲成人高清 | 中国一级大毛片 | 欧美一区二区三区在线 | 国产精品久久av | 搜索黄色毛片 | 亚洲国产区 | 操久在线 | 久久国内 | 国产99久久精品一区二区永久免费 | www.国产欧美 | 欧美日韩成人一区 | 精品一区二区三区在线观看视频 | 国产一区二区三区四区在线观看 | 亚洲国产伊人 | 久草热线视频 | 亚洲一区二区视频在线观看 | 日韩毛片免费视频一级特黄 | 日本高清视频在线播放 | 超碰官网| 欧美一区二区三区 | 国产一区二区三区在线 | 国产精品一二三四区 | 中文字幕一区二区三区乱码在线 | 免费的一级毛片 | 国产福利片在线 | 亚洲高清视频在线观看 | 日韩一区中文字幕 | 亚洲成人精品一区 | 日韩视频欧美视频 | 亚洲成人aaa| 曰批免费视频播放免费 | 亚洲精品久久久久久一区二区 | a级片视频在线观看 | 美国一级毛片a | 福利网站在线观看 | 一区二区av在线 |