成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

一個強(qiáng)大的集成學(xué)習(xí)算法:梯度提升樹!

發(fā)布于 2025-2-10 14:37
瀏覽
0收藏

一、算法介紹

 梯度提升樹(Gradient Boosting Trees, GBT)是一種強(qiáng)大的集成學(xué)習(xí)方法,它通過迭代地添加弱預(yù)測模型來構(gòu)建一個強(qiáng)預(yù)測模型。在每一輪迭代中,新的模型會試圖糾正前序模型產(chǎn)生的錯誤。GBT可以用于回歸和分類問題,并且在許多實際應(yīng)用中表現(xiàn)優(yōu)異。

二、算法原理

一個強(qiáng)大的集成學(xué)習(xí)算法:梯度提升樹!-AI.x社區(qū)

三、 案例分析

  為了展示梯度提升樹的實際應(yīng)用,我們將使用提供的數(shù)據(jù)集來預(yù)測機(jī)器是否會發(fā)生故障。首先加載數(shù)據(jù),并進(jìn)行必要的預(yù)處理。

3.1 數(shù)據(jù)預(yù)處理與模型建立

import pandas as pd
from sklearn.ensemble import GradientBoostingClassifier
from sklearn.model_selection import train_test_split
from sklearn.metrics import classification_report, confusion_matrix, accuracy_score, roc_auc_score, roc_curve
import seaborn as sns
import matplotlib.pyplot as plt

# 加載數(shù)據(jù)
data = pd.read_excel('data.xlsx', sheet_name='Sheet1')

# 數(shù)據(jù)清洗
data.drop_duplicates(inplace=True)
X = data.drop(columns=['機(jī)器編號', '是否發(fā)生故障', '具體故障類別'])
y = data['是否發(fā)生故障']

# 劃分訓(xùn)練集和測試集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# 創(chuàng)建并訓(xùn)練模型
gbt_model = GradientBoostingClassifier(n_estimators=100, learning_rate=0.1, max_depth=3, random_state=42)
gbt_model.fit(X_train, y_train)

# 預(yù)測
y_pred = gbt_model.predict(X_test)
y_pred_proba = gbt_model.predict_proba(X_test)[:, 1]  # 獲取正類的概率

# 評估模型
accuracy = accuracy_score(y_test, y_pred)
print(f'Accuracy: {accuracy:.2f}')

# 打印分類報告
print(classification_report(y_test, y_pred))

# 繪制混淆矩陣
cm = confusion_matrix(y_test, y_pred)
plt.figure(figsize=(8, 6))
sns.heatmap(cm, annot=True, fmt="d", cmap="Blues", cbar=False,
            xticklabels=['No Failure', 'Failure'],
            yticklabels=['No Failure', 'Failure'])
plt.xlabel('Predicted')
plt.ylabel('Actual')
plt.title('Confusion Matrix')
plt.show()

# 計算ROC曲線
fpr, tpr, _ = roc_curve(y_test, y_pred_proba)
roc_auc = roc_auc_score(y_test, y_pred_proba)

# 繪制ROC曲線
plt.figure(figsize=(8, 6))
plt.plot(fpr, tpr, color='darkorange', lw=2, label=f'ROC curve (area = {roc_auc:.2f})')
plt.plot([0, 1], [0, 1], color='navy', lw=2, linestyle='--')
plt.xlim([0.0, 1.0])
plt.ylim([0.0, 1.05])
plt.xlabel('False Positive Rate')
plt.ylabel('True Positive Rate')
plt.title('Receiver Operating Characteristic (ROC)')
plt.legend(loc="lower right")
plt.show()

3.2 結(jié)果分析

  通過上述代碼,我們得到了模型在測試集上的準(zhǔn)確率,并打印了詳細(xì)的分類報告,其中包括精確度(Precision)、召回率(Recall)以及F1分?jǐn)?shù)(F1-score)。

Accuracy: 0.99
              precision    recall  f1-score   support

           0       0.99      1.00      0.99      1753
           1       0.91      0.64      0.75        47

    accuracy                           0.99      1800
   macro avg       0.95      0.82      0.87      1800
weighted avg       0.99      0.99      0.99      1800

此外,我們還繪制了混淆矩陣圖,以便更直觀地了解模型的表現(xiàn)情況。

一個強(qiáng)大的集成學(xué)習(xí)算法:梯度提升樹!-AI.x社區(qū)

  • 準(zhǔn)確率 (Accuracy):表示模型正確預(yù)測的比例。
  • 精確度 (Precision):表示被模型預(yù)測為正類的樣本中實際為正類的比例。
  • 召回率 (Recall):表示所有實際為正類的樣本中,被模型正確識別出來的比例。
  • F1分?jǐn)?shù) (F1-score):是精確度和召回率的調(diào)和平均數(shù),用于綜合評價模型的性能。

除了這些指標(biāo)外,我們還繪制了ROC曲線,這可以幫助我們理解模型區(qū)分正負(fù)樣本的能力。

一個強(qiáng)大的集成學(xué)習(xí)算法:梯度提升樹!-AI.x社區(qū)

  ROC曲線下的面積(AUC)是一個重要的性能指標(biāo),它反映了模型的整體表現(xiàn)。一個理想的模型應(yīng)該具有接近1.0的AUC值,這意味著模型能夠很好地將正負(fù)樣本區(qū)分開來。

四、結(jié)語

  梯度提升樹是一種非常有效的方法,尤其適用于處理復(fù)雜的數(shù)據(jù)模式。通過本文的介紹與案例分析,希望能幫助讀者更好地理解這一算法,并能夠在實踐中加以運用。在未來的工作中,嘗試不同的參數(shù)設(shè)置以及結(jié)合其他技術(shù)可能會帶來更好的結(jié)果。    

本文轉(zhuǎn)載自 ??寶寶數(shù)模AI??,作者: BBSM


收藏
回復(fù)
舉報
回復(fù)
相關(guān)推薦
主站蜘蛛池模板: 男女羞羞视频在线观看 | 欧美日韩手机在线观看 | 中日字幕大片在线播放 | 日韩视频精品 | 久久久久久国产精品久久 | 国产一区二区在线观看视频 | 国产一区二区免费电影 | 日韩精品一区二区三区中文字幕 | 久久久国产精品 | 一区二区中文 | 亚洲天堂二区 | 国产精品色 | 欧美精品久久久久久久久久 | 中文字幕一区二区三 | 国产97在线看 | 国产一区视频在线 | 看片国产 | 玖玖在线精品 | 免费成人高清在线视频 | 午夜影院在线 | 日韩国产中文字幕 | 国产精品国产精品 | 日韩在线免费视频 | 久久久久久网站 | 国产极品粉嫩美女呻吟在线看人 | 欧美激情 一区 | 91精品国产91久久久久久最新 | 成人网av| 蜜臀av日日欢夜夜爽一区 | 国产精品久久久爽爽爽麻豆色哟哟 | www久久久 | 国色天香综合网 | 亚洲天堂精品久久 | 天堂av在线影院 | 国产伦精品一区二区三区精品视频 | eeuss国产一区二区三区四区 | 婷婷不卡 | 精品一区二区免费视频 | 国产精品99久久久久久动医院 | 色噜噜亚洲男人的天堂 | 做a的各种视频 |