首頁 >科技週邊 >人工智慧 >Deepnecks教程:自動化機器學習測試

Deepnecks教程:自動化機器學習測試

Lisa Kudrow
Lisa Kudrow原創
2025-03-05 09:03:10556瀏覽

>本教程探討了用於數據驗證和機器學習模型測試的深檢查,並利用GitHub動作來進行自動測試和創建人工製品。 我們將介紹機器學習測試原理,DEEPNACKS功能和完整的自動化工作流程。

DeepChecks Tutorial: Automating Machine Learning Testing

>由作者 圖像

>

了解機器學習測試

有效的機器學習需要超出簡單準確度指標的嚴格測試。 我們必須評估公平性,魯棒性和道德考慮因素,包括偏見檢測,誤報/負面因素,績效指標,吞吐量以及與AI倫理的一致性。 這涉及數據驗證,交叉驗證,F1得分計算,混淆矩陣分析和漂移檢測(數據和預測)。 數據拆分(火車/測試/驗證)對於可靠的模型評估至關重要。 自動化此過程是構建可靠的AI系統的關鍵。

對於初學者來說,帶有Python技能軌蹟的機器學習基礎為

提供了堅實的基礎。

Deepchecks,一個開源Python庫,簡化了全面的機器學習測試。它為模型性能,數據完整性和分配提供內置檢查,並支持可靠模型部署的連續驗證。

>

開始使用deepchecks

> >使用PIP安裝深部檢查:

pip install deepchecks --upgrade -q
數據加載和準備(貸款數據集)

> 我們將使用DataCamp的貸款數據數據集。

import pandas as pd
loan_data = pd.read_csv("loan_data.csv")
loan_data.head()

DeepChecks Tutorial: Automating Machine Learning Testing 創建一個deepchecks數據集:

from sklearn.model_selection import train_test_split
from deepchecks.tabular import Dataset

label_col = 'not.fully.paid'
deep_loan_data = Dataset(loan_data, label=label_col, cat_features=["purpose"])
數據完整性測試

> DeepChecks的數據完整性套件執行自動檢查。 >

這會生成一個報告覆蓋:特徵標籤相關,特徵 - 功能相關,單個值檢查,特殊字符檢測,零值分析,數據類型一致性,字符串不匹配,重複檢測,字符串長度驗證,衝突的標籤和異常檢測。

from deepchecks.tabular.suites import data_integrity
integ_suite = data_integrity()
suite_result = integ_suite.run(deep_loan_data)
suite_result.show_in_iframe() # Use show_in_iframe for DataLab compatibility

保存報告:

DeepChecks Tutorial: Automating Machine Learning Testing

單個測試執行

suite_result.save_as_html()

為了效率,請進行單個測試:

使用Deepchecks的模型評估

from deepchecks.tabular.checks import IsSingleValue, DataDuplicates
result = IsSingleValue().run(deep_loan_data)
print(result.value) # Unique value counts per column

result = DataDuplicates().run(deep_loan_data)
print(result.value) # Duplicate sample count

我們將訓練一個合奏模型(邏輯回歸,隨機森林,高斯幼稚的貝葉斯),並使用deepchecks對其進行評估。

pip install deepchecks --upgrade -q

模型評估報告包括:ROC曲線,弱段性能,未使用的功能檢測,火車測試性能比較,預測漂移分析,簡單模型比較,模型推理時間,混亂矩陣等

DeepChecks Tutorial: Automating Machine Learning Testing JSON輸出:

單個測試示例(標籤漂移):
import pandas as pd
loan_data = pd.read_csv("loan_data.csv")
loan_data.head()

from sklearn.model_selection import train_test_split
from deepchecks.tabular import Dataset

label_col = 'not.fully.paid'
deep_loan_data = Dataset(loan_data, label=label_col, cat_features=["purpose"])
>使用github Action自動

> >本節詳細介紹了設置github操作工作流程以自動化數據驗證和模型測試。 該過程涉及創建一個存儲庫,添加數據和Python腳本(

),並配置GitHub Actions WorkFlow(data_validation.py)以執行這些腳本並將結果保存為工件。 原始輸入中提供了詳細的步驟和代碼段。 有關一個完整的示例,請參閱train_validation.py>存儲庫。 工作流利用main.yml>,kingabzpro/Automating-Machine-Learning-Testingactions/checkout> action。 actions/setup-pythonactions/upload-artifact

DeepChecks Tutorial: Automating Machine Learning Testing

DeepChecks Tutorial: Automating Machine Learning Testing 結論

>使用Deepchecks和GitHub操作自動化機器學習測試可顯著提高效率和可靠性。 早期發現問題可以增強模型的準確性和公平性。 本教程提供了實施此工作流程的實用指南,使開發人員能夠構建更健壯和值得信賴的AI系統。 考慮使用Python職業生涯的機器學習科學家,以在該領域進一步發展。

以上是Deepnecks教程:自動化機器學習測試的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn