人工智能和機器學習之回歸算法:梯度提升回歸(GBR):數(shù)學基礎:概率論與數(shù)理統(tǒng)計_第1頁
人工智能和機器學習之回歸算法:梯度提升回歸(GBR):數(shù)學基礎:概率論與數(shù)理統(tǒng)計_第2頁
人工智能和機器學習之回歸算法:梯度提升回歸(GBR):數(shù)學基礎:概率論與數(shù)理統(tǒng)計_第3頁
人工智能和機器學習之回歸算法:梯度提升回歸(GBR):數(shù)學基礎:概率論與數(shù)理統(tǒng)計_第4頁
人工智能和機器學習之回歸算法:梯度提升回歸(GBR):數(shù)學基礎:概率論與數(shù)理統(tǒng)計_第5頁
已閱讀5頁,還剩13頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

人工智能和機器學習之回歸算法:梯度提升回歸(GBR):數(shù)學基礎:概率論與數(shù)理統(tǒng)計1概率論基礎1.1隨機變量與概率分布1.1.1隨機變量隨機變量是概率論中的基本概念,它將隨機實驗的結果映射到實數(shù)集上。隨機變量可以分為離散型和連續(xù)型。離散型隨機變量:取值為有限或可數(shù)無限個數(shù)的隨機變量。例如,投擲一枚骰子,結果是一個離散型隨機變量,可能的取值為1,2,3,4,5,6。連續(xù)型隨機變量:取值為一個區(qū)間內(nèi)的任意實數(shù)的隨機變量。例如,測量一個物體的重量,結果是一個連續(xù)型隨機變量。1.1.2概率分布概率分布描述了隨機變量取值的概率。對于離散型隨機變量,我們使用概率質(zhì)量函數(shù)(PMF)來描述;對于連續(xù)型隨機變量,我們使用概率密度函數(shù)(PDF)來描述。概率質(zhì)量函數(shù)(PMF)對于離散型隨機變量X,其概率質(zhì)量函數(shù)PX=x表示X概率密度函數(shù)(PDF)對于連續(xù)型隨機變量X,其概率密度函數(shù)fx表示X在x附近的概率密度,即X在x1.1.3示例:投擲一枚骰子importnumpyasnp

importmatplotlib.pyplotasplt

#定義離散型隨機變量的取值和概率

values=np.arange(1,7)

probabilities=np.ones(6)/6

#繪制概率質(zhì)量函數(shù)

plt.bar(values,probabilities)

plt.xlabel('骰子的點數(shù)')

plt.ylabel('概率')

plt.title('投擲一枚骰子的概率質(zhì)量函數(shù)')

plt.show()1.2條件概率與貝葉斯定理1.2.1條件概率條件概率PA|B表示在事件B1.2.2貝葉斯定理貝葉斯定理是條件概率的一種應用,用于計算后驗概率。貝葉斯定理公式為:P其中,PA|B是后驗概率,PB|1.2.3示例:貝葉斯定理的應用假設一個疾病在人群中的患病率為1%,即PD=0.01。有一種檢測方法,其準確率為99%,即如果患病,檢測結果為陽性的概率PT+#定義先驗概率、似然概率和邊緣概率

P_D=0.01#患病率

P_T_plus_given_D=0.99#患病且檢測為陽性的概率

P_T_minus_given_not_D=0.99#未患病且檢測為陰性的概率

#計算邊緣概率P(T_+)

P_T_plus=P_D*P_T_plus_given_D+(1-P_D)*(1-P_T_minus_given_not_D)

#應用貝葉斯定理計算后驗概率P(D|T_+)

P_D_given_T_plus=(P_T_plus_given_D*P_D)/P_T_plus

print(f'患病的概率為:{P_D_given_T_plus:.4f}')1.3期望與方差1.3.1期望期望是隨機變量的平均值,對于離散型隨機變量X,其期望EXE對于連續(xù)型隨機變量X,其期望定義為:E1.3.2方差方差是隨機變量與其期望值的偏差的平方的期望,用于衡量隨機變量的波動程度。對于隨機變量X,其方差VaV1.3.3示例:計算隨機變量的期望和方差假設隨機變量X的取值為1,2,3,其概率分別為0.2,0.3,0.5。importnumpyasnp

#定義隨機變量的取值和概率

values=np.array([1,2,3])

probabilities=np.array([0.2,0.3,0.5])

#計算期望

E_X=np.sum(values*probabilities)

print(f'期望值為:{E_X:.2f}')

#計算方差

Var_X=np.sum((values-E_X)**2*probabilities)

print(f'方差為:{Var_X:.2f}')以上內(nèi)容詳細介紹了概率論的基礎概念,包括隨機變量、概率分布、條件概率、貝葉斯定理以及期望與方差的計算。通過具體的代碼示例,我們展示了如何在Python中實現(xiàn)這些概念的計算,幫助讀者更好地理解和應用概率論的基礎知識。2數(shù)理統(tǒng)計基礎2.1參數(shù)估計:矩估計與最大似然估計2.1.1矩估計矩估計是一種參數(shù)估計方法,它基于樣本的矩(如均值、方差等)來估計總體參數(shù)。假設我們有一個隨機變量X,其概率密度函數(shù)為fx;θ,其中θ是未知參數(shù)。如果X的前k個矩存在,即EXi=μ例如,假設X服從正態(tài)分布Nμ,σ2,我們可以通過樣本均值x來估計μ,通過樣本方差示例代碼假設我們有一組正態(tài)分布的樣本數(shù)據(jù),我們將使用矩估計來估計其均值和方差。importnumpyasnp

#生成正態(tài)分布的樣本數(shù)據(jù)

np.random.seed(0)

data=np.random.normal(loc=5,scale=2,size=100)

#矩估計

mu_hat=np.mean(data)#估計均值

sigma_hat=np.var(data)#估計方差

print(f"估計的均值:{mu_hat}")

print(f"估計的方差:{sigma_hat}")2.1.2最大似然估計最大似然估計(MLE)是另一種參數(shù)估計方法,它基于使觀察到的數(shù)據(jù)最有可能出現(xiàn)的參數(shù)值來估計參數(shù)。假設我們有一組獨立同分布的樣本數(shù)據(jù)x1,x2,..示例代碼繼續(xù)使用正態(tài)分布的樣本數(shù)據(jù),我們將使用最大似然估計來估計其均值和方差。importnumpyasnp

fromscipy.statsimportnorm

#生成正態(tài)分布的樣本數(shù)據(jù)

np.random.seed(0)

data=np.random.normal(loc=5,scale=2,size=100)

#定義似然函數(shù)

deflikelihood(theta,data):

mu,sigma=theta

returnd(norm.pdf(data,mu,sigma))

#定義對數(shù)似然函數(shù)

deflog_likelihood(theta,data):

mu,sigma=theta

returnnp.sum(np.log(norm.pdf(data,mu,sigma)))

#使用scipy的optimize模塊來求解最大似然估計

fromscipy.optimizeimportminimize

#初始估計值

initial_guess=(0,1)

#求解最大似然估計

result=minimize(lambdatheta:-log_likelihood(theta,data),initial_guess)

mu_hat_mle,sigma_hat_mle=result.x

print(f"最大似然估計的均值:{mu_hat_mle}")

print(f"最大似然估計的方差:{sigma_hat_mle}")2.2假設檢驗:t檢驗與F檢驗2.2.1t檢驗t檢驗用于檢驗一個樣本的均值是否與已知的總體均值有顯著差異,或者兩個樣本的均值是否有顯著差異。t檢驗分為單樣本t檢驗、獨立樣本t檢驗和配對樣本t檢驗。示例代碼假設我們有一組樣本數(shù)據(jù),我們將使用單樣本t檢驗來檢驗其均值是否與已知的總體均值有顯著差異。importnumpyasnp

fromscipy.statsimportttest_1samp

#生成樣本數(shù)據(jù)

np.random.seed(0)

data=np.random.normal(loc=5,scale=2,size=100)

#已知的總體均值

mu_known=4

#單樣本t檢驗

t_stat,p_value=ttest_1samp(data,mu_known)

print(f"t統(tǒng)計量:{t_stat}")

print(f"p值:{p_value}")2.2.2F檢驗F檢驗用于檢驗兩個樣本的方差是否有顯著差異,或者在多元線性回歸中檢驗模型的顯著性。在多元線性回歸中,F(xiàn)檢驗用于檢驗所有回歸系數(shù)是否同時為零。示例代碼假設我們有兩個樣本數(shù)據(jù),我們將使用F檢驗來檢驗其方差是否有顯著差異。importnumpyasnp

fromscipy.statsimportf_oneway

#生成兩個樣本數(shù)據(jù)

np.random.seed(0)

data1=np.random.normal(loc=5,scale=2,size=100)

data2=np.random.normal(loc=5,scale=3,size=100)

#F檢驗

f_stat,p_value=f_oneway(data1,data2)

print(f"F統(tǒng)計量:{f_stat}")

print(f"p值:{p_value}")2.3置信區(qū)間與預測區(qū)間2.3.1置信區(qū)間置信區(qū)間是參數(shù)估計的一種方法,它給出的是參數(shù)的可能范圍,而不是一個具體的值。置信區(qū)間的計算基于樣本數(shù)據(jù)和參數(shù)估計的抽樣分布。例如,對于正態(tài)分布的樣本均值,我們可以使用t分布來計算置信區(qū)間。示例代碼假設我們有一組正態(tài)分布的樣本數(shù)據(jù),我們將計算其均值的95%置信區(qū)間。importnumpyasnp

fromscipy.statsimportt

#生成正態(tài)分布的樣本數(shù)據(jù)

np.random.seed(0)

data=np.random.normal(loc=5,scale=2,size=100)

#樣本均值

mu_hat=np.mean(data)

#樣本標準差

sigma_hat=np.std(data,ddof=1)

#樣本量

n=len(data)

#t分布的分位數(shù)

t_critical=t.ppf(0.975,df=n-1)

#置信區(qū)間的計算

lower_bound=mu_hat-t_critical*sigma_hat/np.sqrt(n)

upper_bound=mu_hat+t_critical*sigma_hat/np.sqrt(n)

print(f"95%置信區(qū)間的下限:{lower_bound}")

print(f"95%置信區(qū)間的上限:{upper_bound}")2.3.2預測區(qū)間預測區(qū)間用于預測新觀察值的可能范圍,而不是參數(shù)的可能范圍。預測區(qū)間的計算基于模型的預測值和預測誤差的抽樣分布。例如,在線性回歸中,我們可以使用t分布和殘差的標準差來計算預測區(qū)間。示例代碼假設我們有一個線性回歸模型,我們將計算其預測值的95%預測區(qū)間。importnumpyasnp

importstatsmodels.apiassm

#生成線性回歸的樣本數(shù)據(jù)

np.random.seed(0)

x=np.random.uniform(low=0,high=10,size=100)

y=2*x+5+np.random.normal(loc=0,scale=2,size=100)

#構建線性回歸模型

X=sm.add_constant(x)

model=sm.OLS(y,X)

results=model.fit()

#預測新觀察值

x_new=np.array([11])

X_new=sm.add_constant(x_new)

y_pred=results.predict(X_new)

#預測誤差的標準差

sigma_hat=np.sqrt(results.mse_resid)

#t分布的分位數(shù)

t_critical=t.ppf(0.975,df=len(x)-2)

#預測區(qū)間的計算

lower_bound=y_pred-t_critical*sigma_hat

upper_bound=y_pred+t_critical*sigma_hat

print(f"95%預測區(qū)間的下限:{lower_bound}")

print(f"95%預測區(qū)間的上限:{upper_bound}")以上代碼和數(shù)據(jù)樣例展示了數(shù)理統(tǒng)計基礎中的矩估計、最大似然估計、t檢驗、F檢驗、置信區(qū)間和預測區(qū)間的具體應用。3機器學習概覽3.1監(jiān)督學習與非監(jiān)督學習在機器學習領域,監(jiān)督學習和非監(jiān)督學習是兩種基本的學習方式,它們在數(shù)據(jù)處理和模型訓練上有著本質(zhì)的區(qū)別。3.1.1監(jiān)督學習監(jiān)督學習是基于有標簽數(shù)據(jù)集的學習方法。在訓練過程中,算法不僅接收輸入數(shù)據(jù),還接收與輸入數(shù)據(jù)相對應的正確輸出(標簽)。通過學習輸入與輸出之間的映射關系,模型可以預測新的、未見過的數(shù)據(jù)的輸出。常見的監(jiān)督學習任務包括回歸和分類。示例:線性回歸假設我們有一組房價數(shù)據(jù),其中包含房屋的大?。ㄆ椒矫祝┖蛯膬r格(萬元)。我們的目標是建立一個模型,根據(jù)房屋的大小預測其價格。importnumpyasnp

fromsklearn.linear_modelimportLinearRegression

fromsklearn.model_selectionimporttrain_test_split

#生成模擬數(shù)據(jù)

np.random.seed(0)

sizes=np.random.rand(100)*1000#房屋大小

prices=sizes*0.5+np.random.randn(100)*50+200#價格,假設每平方米5000元,加上一些隨機噪聲

#將數(shù)據(jù)分為訓練集和測試集

X_train,X_test,y_train,y_test=train_test_split(sizes.reshape(-1,1),prices,test_size=0.2,random_state=42)

#創(chuàng)建線性回歸模型

model=LinearRegression()

#訓練模型

model.fit(X_train,y_train)

#預測

predictions=model.predict(X_test)

#輸出模型系數(shù)

print("模型系數(shù):",model.coef_)3.1.2非監(jiān)督學習非監(jiān)督學習則是在沒有標簽的數(shù)據(jù)集上進行學習。算法試圖從數(shù)據(jù)中發(fā)現(xiàn)內(nèi)在的結構或模式,而不需要知道數(shù)據(jù)的正確輸出。常見的非監(jiān)督學習任務包括聚類和降維。示例:K-means聚類假設我們有一組客戶數(shù)據(jù),包括客戶的年齡和收入,我們想要將客戶分為不同的群體,以便進行市場細分。importnumpyasnp

fromsklearn.clusterimportKMeans

importmatplotlib.pyplotasplt

#生成模擬數(shù)據(jù)

np.random.seed(0)

ages=np.random.randint(20,60,size=100)

incomes=np.random.randint(30000,100000,size=100)

#將年齡和收入組合成二維數(shù)據(jù)

data=np.column_stack((ages,incomes))

#創(chuàng)建K-means模型

kmeans=KMeans(n_clusters=3)

#訓練模型

kmeans.fit(data)

#預測數(shù)據(jù)點的聚類

labels=kmeans.predict(data)

#可視化聚類結果

plt.scatter(data[:,0],data[:,1],c=labels)

plt.xlabel('年齡')

plt.ylabel('收入')

plt.show()3.2回歸問題與分類問題機器學習中的問題可以大致分為兩大類:回歸問題和分類問題。3.2.1回歸問題回歸問題的目標是預測一個連續(xù)值。例如,預測房價、股票價格或溫度等。3.2.2分類問題分類問題的目標是預測一個離散的類別。例如,判斷一封郵件是否為垃圾郵件,或者識別一張圖片中的物體是貓還是狗。3.3損失函數(shù)與優(yōu)化目標在機器學習中,損失函數(shù)(或代價函數(shù))用于衡量模型預測的輸出與實際輸出之間的差異。優(yōu)化目標是通過調(diào)整模型參數(shù)來最小化損失函數(shù)。3.3.1常見損失函數(shù)均方誤差(MSE):回歸問題中常用的損失函數(shù),計算預測值與真實值之間的平方差的平均值。交叉熵損失:分類問題中常用的損失函數(shù),衡量預測概率分布與真實概率分布之間的差異。示例:均方誤差(MSE)假設我們有一個簡單的線性回歸模型,我們想要計算模型預測的房價與實際房價之間的MSE。fromsklearn.metricsimportmean_squared_error

#假設predictions是模型預測的房價,y_test是實際的房價

mse=mean_squared_error(y_test,predictions)

print("均方誤差:",mse)通過上述示例和解釋,我們深入了解了機器學習中的監(jiān)督學習、非監(jiān)督學習、回歸與分類問題,以及損失函數(shù)的概念。這些基礎知識對于理解和應用更復雜的機器學習算法,如梯度提升回歸(GBR),至關重要。4梯度提升回歸(GBR)原理4.1GBR的數(shù)學模型梯度提升回歸(GradientBoostingRegression,GBR)是一種迭代的機器學習技術,用于預測連續(xù)值。它基于決策樹構建,通過逐步減小預測誤差來優(yōu)化模型。GBR的核心思想是將多個弱學習器組合成一個強學習器,每個弱學習器專注于糾正前一個學習器的錯誤。4.1.1模型迭代過程GBR模型的迭代過程可以表示為:F其中,F(xiàn)0x是初始預測,γ是常數(shù),L是損失函數(shù),yi對于m次迭代,模型更新為:F其中,hmx是第m次迭代中添加的弱學習器(決策樹),4.1.2損失函數(shù)損失函數(shù)L用于衡量模型預測值與實際值之間的差距。常見的損失函數(shù)包括平方損失、絕對損失和Huber損失。GBR通過最小化損失函數(shù)來優(yōu)化模型。4.2梯度提升樹的構建梯度提升樹(GradientBoostingTree,GBT)是GBR中使用的弱學習器。構建GBT的過程涉及以下步驟:初始化預測值:使用初始模型F0計算殘差:對于每個樣本,計算損失函數(shù)關于當前預測值的負梯度,即殘差。擬合弱學習器:使用殘差作為目標,擬合一個決策樹。更新預測值:將新決策樹的預測值乘以學習率λ,然后加到當前預測值上,形成新的預測值。重復迭代:重復步驟2至4,直到達到預定的迭代次數(shù)或模型收斂。4.2.1示例代碼importnumpyasnp

fromsklearn.datasetsimportmake_regression

fromsklearn.ensembleimportGradientBoostingRegressor

#生成回歸數(shù)據(jù)集

X,y=make_regression(n_samples=1000,n_features=10,n_informative=5,random_state=42)

#創(chuàng)建GBR模型

gbr=GradientBoostingRegressor(n_estimators=100,learning_rate=0.1,max_depth=3,random_state=42)

#訓練模型

gbr.fit(X,y)

#預測

y_pred=gbr.predict(X)

#計算模型的均方誤差

mse=np.mean((y-y_pred)**2)

print(f"MeanSquaredError:{mse}")4.3損失函數(shù)的梯度計算在GBR中,損失函數(shù)的梯度計算是關鍵步驟。梯度是損失函數(shù)關于預測值的偏導數(shù),用于指導模型的更新方向。對于平方損失函數(shù),梯度計算如下:?對于絕對損失函數(shù),梯度計算為:?4.3.1示例代碼defgradient_square_loss(y_true,y_pred):

return-2*(y_true-y_pred)

defgradient_absolute_loss(y_true,y_pred):

return-np.sign(y_true-y_pred)

#假設y_true和y_pred是numpy數(shù)組

y_true=np.array([1,2,3,4,5])

y_pred=np.array([1.5,2.5,2.5,4.5,5.5])

#計算梯度

grad_square=gradient_square_loss(y_true,y_pred)

grad_abs=gradient_absolute_loss(y_true,y_pred)

print(f"GradientofSquareLoss:{grad_square}")

print(f"GradientofAbsoluteLoss:{grad_abs}")通過以上步驟,GBR能夠構建一個強大的回歸模型,有效處理復雜的數(shù)據(jù)關系,提高預測精度。5GBR的數(shù)學推導5.1前向分步算法前向分步算法是梯度提升回歸(GBR)的核心組成部分,它通過迭代地添加弱學習器來逐步改進模型的預測能力。在GBR中,弱學習器通常是決策樹,但也可以是其他模型。算法從一個簡單的初始模型開始,然后在每一步中,通過最小化損失函數(shù)來訓練一個新的弱學習器,以修正當前模型的預測錯誤。5.1.1算法步驟初始化模型F0對于m=1到計算當前模型的負梯度,作為新的殘差。使用負梯度作為目標,訓練一個決策樹hm計算步長γm更新模型Fm輸出最終模型FM5.1.2代碼示例importnumpyasnp

fromsklearn.datasetsimportmake_regression

fromsklearn.treeimportDecisionTreeRegressor

fromsklearn.ensembleimportGradientBoostingRegressor

#生成回歸數(shù)據(jù)

X,y=make_regression(n_samples=100,n_features=1,noise=0.1)

#初始化模型

F=np.mean(y)

#梯度提升回歸參數(shù)

M=100#迭代次數(shù)

learning_rate=0.1#步長

#手動實現(xiàn)GBR

forminrange(M):

#計算負梯度

residuals=y-F

#訓練決策樹

tree=DecisionTreeRegressor(max_depth=1)

tree.fit(X,residuals)

#更新模型

F+=learning_rate*tree.predict(X)

#使用sklearn的GBR進行比較

gbr=GradientBoostingRegressor(n_estimators=M,learning_rate=learning_rate)

gbr.fit(X,y)

predictions=gbr.predict(X)

#打印手動實現(xiàn)和sklearn實現(xiàn)的最終預測值

print("手動實現(xiàn)GBR的最終預測值:",F)

print("sklearn實現(xiàn)GBR的最終預測值:",predictions)5.2梯度提升的損失函數(shù)優(yōu)化GBR通過優(yōu)化損失函數(shù)來訓練模型,損失函數(shù)衡量了模型預測值與實際值之間的差距。常見的損失函數(shù)包括平方損失(用于回歸問題)和對數(shù)損失(用于分類問題)。在每一步中,GBR通過計算當前模型預測值的負梯度來確定新的弱學習器應該修正的方向。5.2.1平方損失函數(shù)平方損失函數(shù)定義為Ly,Fx5.2.2代碼示例#平方損失函數(shù)的負梯度計算

defneg_gradient_square_loss(y,F):

returny-F

#使用平方損失函數(shù)的負梯度

residuals=neg_gradient_square_loss(y,F)5.3基學習器的選擇在GBR中,基學習器的選擇對模型的性能至關重要。決策樹是常用的基學習器,因為它們能夠捕捉到數(shù)據(jù)中的復雜模式,同時避免過擬合。通過限制決策樹的深度和葉子節(jié)點數(shù)量,可以控制模型的復雜度,從而平衡擬合能力和泛化能力。5.3.1代碼示例#選擇基學習器:決策樹

tree=DecisionTreeRegressor(max_depth=3,max_leaf_nodes=10)

#訓練基學習器

tree.fit(X,residuals)

#預測

predictions=tree.predict(X)5.3.2參數(shù)調(diào)整max_depth:決策樹的最大深度,控制模型復雜度。max_leaf_nodes:決策樹的最大葉子節(jié)點數(shù),進一步控制模型復雜度。通過調(diào)整這些參數(shù),可以優(yōu)化GBR模型的性能,避免過擬合或欠擬合。以上示例代碼展示了GBR的前向分步算法、損失函數(shù)優(yōu)化以及基學習器的選擇和訓練過程。通過手動實現(xiàn)和使用sklearn庫的比較,可以更深入地理解GBR的工作原理和實現(xiàn)細節(jié)。6GBR的實踐應用6.1數(shù)據(jù)預處理與特征選擇在應用梯度提升回歸(GBR)模型之前,數(shù)據(jù)預處理和特征選擇是至關重要的步驟。這包括處理缺失值、異常值、數(shù)據(jù)標準化或歸一化,以及選擇對模型預測能力有貢獻的特征。6.1.1處理缺失值importpandasaspd

fromsklearn.imputeimportSimpleImputer

#假設df是包含缺失值的DataFrame

df=pd.DataFrame({

'A':[1,2,np.nan,4],

'B':[5,np.nan,np.nan,8],

'C':[9,10,11,12]

})

#使用均值填充缺失值

imputer=SimpleImputer(strategy='mean')

df_imputed=pd.DataFrame(imputer.fit_transform(df),columns=df.columns)6.1.2數(shù)據(jù)標準化fromsklearn.preprocessingimportStandardScaler

#假設X是特征矩陣

scaler=StandardScaler()

X_scaled=scaler.fit_transform(X)6.1.3特征選擇fromsklearn.feature_selectionimportSelectKBest,f_regression

#假設X是特征矩陣,y是目標變量

selector=SelectKBest(score_func=f_regression,k=2)

X_new=selector.fit_transform(X,y)6.2模型訓練與參數(shù)調(diào)優(yōu)GBR模型的訓練涉及多個決策樹的迭代構建,每個決策樹都試圖糾正前一個樹的錯誤。參數(shù)調(diào)優(yōu)是通過調(diào)整模型參數(shù)來優(yōu)化模型性能的過程。6.2.1模型訓練fromsklearn.ensembleimportGradientBoostingRegressor

fromsklearn.model_selectionimporttrain_test_split

#假設X是特征矩陣,y是目標變量

X_train,X_test,y_train,y_test=train_test_split(X,y,test_size=0.2,random_state=42)

#創(chuàng)建GBR模型

gbr=GradientBoostingRegressor(n_

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論