作为数据建模开发者,我们期望利用机器学习模型来分析数据和解决商业问题。无论我们是开发一个简单的模型还是一个复杂的模型,模型验证对于衡量我们工作都是至关重要。
在本文中,我将分享三个非常棒的 Python 工具包,它们可以让我们验证机器学习模型时变得更轻松。
1、Evidently
Evidently 是一个用于分析和监控机器学习模型的开源 python 包。开发该软件包的目的是建立一个易于监控的机器学习仪表盘,并检测数据中的漂移。它是专门为生产而设计的,所以在有数据管道的情况下使用它会更好。然而,即使在开发阶段,您仍然可以使用它。
让我们试着用它来验证我们的机器学习模型开发。在现实环境中,我们会有一个参考数据集和生产数据集,但对于我们现在的情况,让我们使用 Kaggle 的分离训练和测试数据。
作为初学者,我们需要安装软件包
pip install evidently
安装包后,我们可以尝试检测数据集中发生的数据漂移。数据漂移是指参考数据或之前时间线中的数据与当前数据在统计上存在差异的现象。
import pandas as pd
train = pd.read_csv('churn-bigml-80.csv')
test = pd.read_csv('churn-bigml-20.csv')
数据集需要预处理,我现在只想使用数字数据
train.drop(['State', 'International plan', 'Voice mail plan'], axis =1,inplace = True)
test.drop(['State', 'International plan', 'Voice mail plan'], axis =1, inplace = True)
train['Churn'] = train['Churn'].apply(lambda x: 1 if x == True else 0)
test['Churn'] = test['Churn'].apply(lambda x: 1 if x == True else 0)
数据准备好后,我们将构建仪表板来检测任何漂移。显然需要我们独立导入每个标签;对于数据漂移,我们将使用 DataFloftTab。
from evidently.dashboard import Dashboard
from evidently.tabs import DataDriftTab
data_drift_report = Dashboard(tab