使用本教程来创建端到端管道,以交付存储在数据科学和 MLOps 用例的外部数据源中的简明,预处理和最新数据。 您的目标是使用 Orchestration Pipeline 来编排该端到端工作流程,以生成自动化,一致且可重复的结果。 管道使用Data Refinery和AutoAI,它可以自动化模型构建过程的几个方面,例如特征工程和超参数优化。 AutoAI 对候选算法进行排序,然后选择最佳模型。
教程的故事是, Golden Bank 希望通过为在线申请提供特殊的低利率抵押贷款续约来扩展其业务。 在线申请扩大了银行的客户范围,降低了银行的申请处理成本。 为了帮助贷款人做出决策,该团队将使用 Orchestration Pipeline 创建一个数据管道,用于提供所有抵押贷款申请人的最新数据。 数据存储在 Db2 Warehouse中。 您需要准备数据,因为它可能不完整,过时,并且可能由于数据隐私和主权策略而被模糊或完全不可访问。 然后,团队根据可信数据构建抵押贷款核准模型,并在预生产环境中部署和测试该模型。 最后,团队使用笔记本来配置 Watson OpenScale 监视器,然后评估并观察 Watson OpenScale 中的监视器,以确保模型公平对待所有申请人。
以下动画图像提供了在本教程结束时将完成的内容的快速预览。 您将编辑和运行管道以构建和部署机器学习模型,运行 Notebook 以配置监视器并验证模型。 单击该图像以查看更大的图像。
预览教程
在本教程中,您将完成以下任务:
如果要继续查看如何使用 Watson OpenScale监视模型,请完成任务 6-10:
- 任务 6: 运行 Notebook 以配置 Watson OpenScale 监视器。
- 任务 7: 评估模型。
- 任务 8: 观察模型监视器的质量。
- 任务 9: 观察模型监视器以获取公平性。
- 任务 10: 观察模型监视可解释性。
- 清除(可选)
观看此视频以预览本教程中的步骤。 视频中显示的用户界面可能存在细微差异。 该视频旨在与编写的教程相伴。
此视频提供了一种可视方法来学习本文档中的概念和任务。
完成本教程的提示
以下是成功完成本教程的一些提示。
使用视频图片
以下动画图像显示了如何使用视频图片和目录功能:
在社区中获取帮助
如果您需要本教程的帮助,可以在Cloud Pak for Data社区讨论区提问或寻找答案。
设置浏览器窗口
为了获得完成本教程的最佳体验,请在一个浏览器窗口中打开 Cloud Pak for Data ,并在另一个浏览器窗口中保持本教程页面处于打开状态,以便在两个应用程序之间轻松切换。 请考虑将两个浏览器窗口并排排列,以便更轻松地进行后续操作。
设置先决条件
注册 Cloud Pak for Data as a Service
您必须注册 Cloud Pak for Data as a Service ,并为数据集成用例供应必要的服务。
- 如果您具有现有的 Cloud Pak for Data as a Service 帐户,那么可以开始使用本教程。 如果您有轻量套餐帐户,那么每个帐户只有一个用户可以运行本教程。
- 如果您还没有 Cloud Pak for Data as a Service 帐户,请 注册。
验证必需的供应服务
To preview this task, watch the video beginning at 00:50.
请遵循以下步骤来验证或供应必需的服务:
从导航菜单",选择服务 > 服务实例。
使用产品下拉列表确定是否存在现有的watsonx.aiStudio 服务实例。
如果需要创建watsonx.aiStudio 服务实例,请单击添加服务。
选择watsonx.aiStudio。
选择轻量套餐。
单击创建。
等待watsonx.aiStudio 服务配置完成,这可能需要几分钟时间。
重复这些步骤以验证或供应以下其他服务:
- watsonx.ai运行时
- Cloud Object Storage
- watsonx.governance -如果要监视已部署的模型
检查您的进度
下图显示了供应的服务实例:
创建样本项目
To preview this task, watch the video beginning at 01:27.
如果已有本教程的样本项目,请跳过此任务。 否则,请完成以下步骤:
访问资源中心的数据科学和 MLOps 示例项目。
单击创建项目。
如果提示将项目与 Cloud Object Storage 实例相关联,请从列表中选择 Cloud Object Storage 实例。
单击创建。
等待项目导入完成,然后单击 查看新项目 以验证是否已成功创建项目和资产。
单击 资产 选项卡以查看本教程的资产。
检查您的进度
下图显示了样本项目中的 "资产" 选项卡。 现在,您已准备好开始本教程。
将watsonx.ai运行时服务与示例项目关联起来
To preview this task, watch the video beginning at 02:17.
您将使用watsonx.aiRuntime 创建和部署模型,因此请按照以下步骤将您的watsonx.aiRuntime 服务实例与示例项目关联起来。
在 数据科学和 MLOps 项目中,单击 管理 选项卡。
单击 服务和集成 页面。
单击 关联服务。
选中您的watsonx.aiRuntime服务实例旁边的复选框。
单击 关联。
单击 取消 以返回到 " 服务和集成 " 页面。
检查您的进度
下图显示了 "服务与集成"页面,其中列出了watsonx.aiRuntime 服务。 现在,您已准备好创建样本项目。
任务 1: 查看样本项目中的资产
To preview this task, watch the video beginning at 02:37.
样本项目包含多个资产,包括连接,数据定义,一个 Data Refinery 流和一个管道。 执行以下步骤以查看这些资产:
单击 数据科学和 MLOps 项目中的 资产 选项卡,然后查看 所有资产。
查看 Data Refinery 流和管道中使用的数据资产的列表。 这些资产存储在 Data Fabric Trial- Db2 Warehouse 连接中的 AI_MBS 模式中。 单击 导入资产,然后浏览到 Data Fabric Trial- Db2 Warehouse > AI_MBS。 下图显示了来自该连接的资产:
MBS Data_Approvals_flow Data Refinery 流集成了有关每个抵押贷款申请人的数据。 集成数据包括个人可标识信息,以及他们的申请详细信息,信用评分,作为商业买家的地位,最后是每个申请人所选住宅的价格。 然后,该流将在包含连接数据的项目中创建名称为
Mortgage_Data_with_Approvals_DS.csv
的顺序文件。 下图显示了 抵押者 Data_Approvals_flow Data Refinery 流:
检查您的进度
下图显示了样本项目中的所有资产。 现在,您已准备好浏览样本项目中的管道。
任务 2: 浏览现有管道
To preview this task, watch the video beginning at 03:25.
样本项目包含编排管道,用于自动执行以下任务:
运行现有 Data Refinery 作业。
创建 AutoAI 试验。
运行 AutoAI 试验,并保存使用 Data Refinery 作业生成的输出文件作为训练数据的最佳性能模型。
创建部署空间。
将保存的模型提升到部署空间。
遵循以下步骤来探索管道:
从 Data Science and MLOps 项目中的 资产 选项卡,查看 所有资产。
单击 抵押贷款审批管道-数据科学 以打开管道。
双击 集成抵押贷款核准数据 Data Refinery 作业,该作业将 Db2 Warehouse on Cloud 连接中的各种表组合到用作 AutoAI 试验的训练数据的有凝聚力标签数据集中。 单击 取消 以返回到管道。
单击 检查状态 条件,然后选择 编辑。 此条件是管道中的决策点,用于确认值为 已完成 或 已完成但有警告的 Data Refinery 作业已完成。 单击 取消 以返回到管道。
双击 创建 AutoAI 试验 节点以查看设置。 此节点使用设置创建 AutoAI 试验。
查看以下设置的值:
AutoAI 试验名称
作用域
预测类型
预测列
阳性类
训练数据分割率
要包括的算法
要使用的算法
优化度量
单击 取消 以关闭设置。
双击 运行 AutoAI 试验 节点以查看设置。 此节点运行由 创建 AutoAI 试验 节点创建的 AutoAI 试验,该试验使用 集成抵押核准 Data Refinery 作业的输出作为训练数据。
查看以下设置的值:
AutoAI 试验
训练数据资产
模型名称前缀
单击 取消 以关闭设置。
在 运行 AutoAI 试验 和 创建部署空间 节点之间,单击 要部署模型吗? 条件,然后选择 编辑。 此条件的 True 值是管道中用于继续创建部署空间的决策点。 单击 取消 以返回到管道。
双击 创建部署空间 节点以更新设置。 此节点创建一个具有指定名称的新部署空间,并要求输入Cloud Object Storage和watsonx.aiRuntime 服务。
查看 新建空间名称 设置的值。
对于 新建空间 COS 实例 CRN 字段,从列表中选择 Cloud Object Storage 实例。
在 "新空间 WML 实例 CRN "字段中,从列表中选择您的watsonx.aiRuntime 实例。
单击保存。
双击 将模型提升到部署空间 节点以查看设置。 此节点将最佳模型从 运行 AutoAI 试验 节点提升到从 创建部署空间 节点创建的部署空间。
查看以下设置的值:
源资产
目标
单击 取消 以关闭设置。
检查您的进度
下图显示了初始管道。 现在,您已准备好编辑管道以添加节点。
任务 3: 向管道添加节点
To preview this task, watch the video beginning at 05:41.
管道将创建模型,创建部署空间,然后将其提升到部署空间。 您需要添加节点以创建联机部署。 遵循以下步骤来编辑管道以自动创建联机部署:
将 创建联机部署 节点添加到画布:
展开节点选用板中的 创建 部分。
将 创建联机部署 节点拖到画布上,并将该节点放在 将模型提升到部署空间 节点之后。
将鼠标悬停在 将模型提升到部署空间 节点上以查看箭头。 将箭头连接到 创建联机部署 节点。
注: 管道中的节点名可能与以下动画图像不同。通过将注释框上的圆圈连接到节点,将 为提升的模型创建联机部署 注释连接到 创建联机部署 节点。
注: 管道中的节点名可能与以下动画图像不同。双击 创建联机部署 节点以查看设置。
将节点名更改为
Create Online Deployment
。在 ML 资产旁边,单击菜单中的 从其他节点选择 。
从列表中选择 将模型提升到部署空间 节点。 已选择节点标识 winning_model 。
对于 新部署名称,请输入
Mortgage approval model deployment - Data Science
。对于 创建方式,选择 覆盖。
单击 保存 以保存 创建联机部署 节点设置。
检查您的进度
下图显示了已完成的管道。 现在,您已准备好运行管道。
任务 4: 运行管道
To preview this task, watch the video beginning at 06:57.
既然管道已完成,请执行以下步骤来运行管道:
从工具栏中,单击 运行管道> 试用运行。
在 " 定义管道参数 " 页面上,选择 True 以进行部署。
如果设置为 True,那么管道将验证已部署的模型并对该模型进行评分。
如果设置为 False,那么管道将验证 AutoAI 试验是否在项目中创建了模型,并复审模型信息和训练指标。
如果这是您首次运行管道,请提供 API 密钥。 管道资产使用您的个人 IBM Cloud API 密钥来安全地运行操作,而不会造成中断。
如果您有现有 API 密钥,请单击 使用现有 API 密钥,粘贴 API 密钥,然后单击 保存。
如果您没有现有 API 密钥,请单击 生成新的 API 密钥,提供名称,然后单击 保存。 复制 API 密钥,然后保存 API 密钥以供将来使用。 完成后,单击 关闭。
单击 运行 以开始运行管道。
监视管道进度。
在管道运行时滚动合并日志。 试运行可能需要最多 10 分钟才能完成。
在每个操作完成时,在画布上选择该操作的节点。
在 节点检验器 选项卡上,查看操作的详细信息。
单击 节点输出 选项卡以查看每个节点操作的输出摘要。
检查您的进度
下图显示了管道在完成试运行后的情况。 现在,您已准备好查看管道创建的资产。
任务 5: 查看资产,已部署模型和联机部署
To preview this task, watch the video beginning at 08:58.
管道创建了多个资产。 执行以下步骤以查看资产:
单击导航跟踪中的 Data Science and MLOps 项目名称以返回到项目。
在 资产 选项卡上,查看 所有资产。
查看数据资产。
单击 Mortgage_Data_with_Approvals_DS.csv 数据资产。 Data Refinery 作业已创建此资产。
单击导航跟踪中的 Data Science and MLOps 项目名称以返回到 资产 选项卡。
查看模型。
单击以 ds_抵押者约法 _best_model开头的机器学习模型资产。 AutoAI 试验生成了多个模型候选,并选择此模型作为最佳模型。 将此模型名称保存到文本文件中。 需要模型名称才能在下一个任务中配置 Watson OpenScale 监视器。
滚动浏览模型信息。
单击导航跟踪中的 Data Science and MLOps 项目名称以返回到 资产 选项卡。
单击项目中的 作业 选项卡以查看有关 Data Refinery 和管道作业的信息。
打开使用管道创建的部署空间。
从导航菜单",选择 "部署"。
单击 空间 选项卡。
单击 抵押审批-数据科学和 MLOps 部署空间。
单击 资产 选项卡,然后查看以 ds_抵押者审批 _best_model开头的已部署模型。
单击部署选项卡。
单击 抵押核准模型部署-数据科学 以查看部署。
在 API 参考 选项卡上,查看 API 端点和代码片段。
单击测试选项卡。
单击 JSON 输入 选项卡,并将样本文本替换为以下 JSON 文本。
{ "input_data": [ { "fields": [ "ID", "NAME", "STREET_ADDRESS", "CITY", "STATE", "STATE_CODE", "ZIP_CODE", "EMAIL_ADDRESS", "PHONE_NUMBER", "GENDER", "SOCIAL_SECURITY_NUMBER", "EDUCATION", "EMPLOYMENT_STATUS", "MARITAL_STATUS", "INCOME", "APPLIEDONLINE", "RESIDENCE", "YRS_AT_CURRENT_ADDRESS", "YRS_WITH_CURRENT_EMPLOYER", "NUMBER_OF_CARDS", "CREDITCARD_DEBT", "LOANS", "LOAN_AMOUNT", "CREDIT_SCORE", "CRM_ID", "COMMERCIAL_CLIENT", "COMM_FRAUD_INV", "FORM_ID", "PROPERTY_CITY", "PROPERTY_STATE", "PROPERTY_VALUE", "AVG_PRICE" ], "values": [ [ null, null, null, null, null, null, null, null, null, null, null, "Bachelor", "Employed", null, 144306, null, "Owner Occupier", 15, 19, 2, 7995, 1, 1483220, 437, null, false, false, null, null, null, 111563, null ], [ null, null, null, null, null, null, null, null, null, null, null, "High School", "Employed", null, 45283, null, "Private Renting", 11, 13, 1, 1232, 1, 7638, 706, null, false, false, null, null, null, 54262, null ] ] } ] }
单击 预测。 结果显示,第一申请人将不获批准,第二申请人将获批准。
检查您的进度
下图显示了测试结果。 检验的置信度分数可能与图像中显示的分数不同。
任务 6: 运行 Notebook 以配置 Watson OpenScale 监视器
To preview this task, watch the video beginning at 10:40.
现在,您已准备好运行样本项目中包含的 Notebook。 该 Notebook 包含用于执行以下操作的代码:
- 访存模型和部署。
- 配置 Watson OpenScale。
- 为机器学习服务创建服务提供者和预订。
- 配置质量监视器。
- 配置公平性监视器。
- 配置可解释性。
执行以下步骤以运行样本项目中包含的 Notebook。 花一些时间阅读 Notebook 中的注释,这些注释说明了每个单元格中的代码。
从导航菜单",选择项目 > 查看所有项目。
单击 Data Science and MLOps 项目名称。
单击 "资产"选项卡,然后导航至笔记本。
打开 monitor-wml-model-with-watson-openscale-pipeline 笔记本。
单击编辑图标 ",将笔记本置于编辑模式。
从资源中心导入项目时, Notebook 的第一个单元包含项目访问令牌。 如果此笔记本不包含具有项目访问令牌的第一个单元,那么需要生成该令牌。 从 更多 菜单中,选择 插入项目标记。 此操作将新单元作为包含项目令牌的 Notebook 中的第一个单元插入。
在 提供 IBM Cloud API 密钥 部分中提供 API 密钥。 您需要使用 API 密钥将您的凭据传递给watsonx.aiRuntime API。 如果您还没有已保存的 API 密钥,请遵循以下步骤来创建 API 密钥。
To preview this task, watch the video beginning at 04:55.单击创建 IBM Cloud API 键。 如果您有任何现有 API 密钥,那么该按钮可能标记为 创建。
输入名称和描述。
单击创建。
复制 API 密钥。
下载 API 密钥以供将来使用。
返回到 Notebook ,并将 API 密钥粘贴到 ibmcloud_api_key 字段中。
在 3 部分中。 模型和部署,对于 model_name 变量,将您保存的模型名称粘贴到先前任务中的文本文件。 将使用管道中指定的名称为您填充 space_name 和 deployment_name 。
单击 单元> 全部运行 以运行 Notebook 中的所有单元。 或者,点击运行图标 ",逐单元格运行笔记本,查看每个单元格及其输出结果。
按单元格监视进度单元格,并将星号 "In [
*
]" 更改为数字,例如 "In [1
]"。 笔记本需要 1-3 分钟才能完成。如果在运行 Notebook 时迂到任何错误,请尝试以下提示:
- 单击 内核> 重新启动并清除输出 以重新启动内核,然后再次运行 Notebook。
- 验证复制并粘贴的部署名称是否完全没有前导空格或尾部空格。
检查您的进度
下图显示了运行完成时的 Notebook。 笔记本已将模型保存在项目中,因此您现在已准备好评估模型。
任务 7: 评估模型
To preview this task, watch the video beginning at 13:35.
遵循以下步骤在 Watson OpenScale中评估模型:
单击导航路径中的数据科学和 MLOps项目。
在 资产 选项卡上,展开 数据 资产类型,然后单击 数据资产。
点击 "溢出菜单中的 ",选择 "mortgage_sample_test_data.csv数据资产的 "下载。 要验证模型是否按需要工作,您需要一组从模型训练中保留下来的带标签数据。 此 CSV 文件包含该保留数据。
启动 Watson OpenScale。
从导航菜单",选择服务 > 服务实例。
单击 Watson OpenScale 实例名称。 如果出现提示,请使用用于注册 Cloud Pak for Data的相同凭证登录。
在 Watson OpenScale 服务实例页面上,单击 启动应用程序。
在 "洞察" 仪表板上,单击 抵押贷款审批模型部署-数据科学 磁贴。
从 操作 菜单中,选择 立即评估。
从导入选项列表中,选择 从 CSV 文件。
将您从项目下载的 mortgage_sample_test_data.csv 数据文件拖到侧面板中。
单击 上载并评估。 评估可能需要几分钟才能完成。
检查您的进度
下图显示了 Watson OpenScale中已部署模型的评估结果。 现在,您已评估模型,准备好观察模型质量。
任务 8: 观察模型监视器的质量
To preview this task, watch the video beginning at 14:44.
Watson OpenScale 质量监视器会生成一组度量值,以评估模型的质量。 您可以使用这些质量指标来确定模型预测结果的良好程度。 当使用保留数据的评估完成时,请遵循以下步骤来观察模型质量或准确性:
在左侧导航面板中,点击Insights 仪表板图标 "。
找到 抵押贷款审批模型部署-数据科学 磁贴。 请注意,部署存在 0 个问题,并且 质量 和 公平性 测试都未生成任何错误,这意味着模型满足所需的阈值。
注: 您可能需要刷新仪表板以在评估后查看更新。单击 抵押贷款审批模型部署-数据科学 磁贴以查看更多详细信息。
在质量部分,点击配置图标 "。 在这里,您可以看到为此监视器配置的质量阈值为 70% ,并且所使用的质量测量是 ROC 曲线下的面积。
单击 转至模型摘要 以返回到模型详细信息屏幕。
在质量部分,单击详细信息图标 ",查看模型质量的详细结果。 在这里,您可以看到一些质量度量计算和一个混淆矩阵,其中显示了正确的模型决策以及误报和误报。 ROC 曲线下的计算面积为 0.9 或更高,这超过了 0.7 阈值,因此模型满足其质量要求。
单击导航跟踪中的 抵押核准模型部署-数据科学 以返回到模型详细信息屏幕。
检查您的进度
下图显示了 Watson OpenScale中的质量详细信息。 质量得分可能有所不同。 现在,您已观察到模型质量,可以观察到模型公平性。
任务 9: 观察模型监视器以获取公平性
To preview this task, watch the video beginning at 15:59.
Watson OpenScale 公平性监视器生成一组度量以评估模型的公平性。 您可以使用公平性指标来确定模型是否产生有偏差的结果。 遵循以下步骤来观察模型公平性:
在公平性部分,点击配置图标 "。 在这里,您可以看到正在对该模型进行复审,以确保对申请人进行公平对待,而无论其性别如何。 妇女被确定为正在衡量公平的受监测群体,公平的门槛至少要达到 80%。 公平性监视器使用不同的影响方法来确定公平性。 不同影响将受监视组的有利结果百分比与参考组的有利结果百分比进行比较。
单击 转至模型摘要 以返回到模型详细信息屏幕,
在公平性部分,单击详细信息图标 ",查看模型公平性的详细结果。 在这里,您可以看到正在自动批准的男性和女性申请人的百分比,以及大约 100% 的公平性分数,因此模型性能远远超过所需的 80% 公平性阈值。
请注意 数据集 列表中标识的数据集。 为了确保公平性指标最准确, Watson OpenScale 使用扰动来确定仅更改受保护属性和相关模型输入而其他功能保持不变的结果。 扰动将特征的值从参考组更改为受监视组,反之亦然。 当使用 "均衡" 数据集时,这些附加护栏用于计算公平性,但您也可以仅使用有效内容或模型训练数据来查看公平性结果。 因为模型的行为是公平的,所以您不需要对这一指标进行额外的详细说明。
单击 抵押贷款审批模型部署-数据科学 导航跟踪以返回到模型详细信息屏幕。
检查您的进度
下图显示了 Watson OpenScale中的公平性详细信息。 现在,您已观察到模型公平性,可以观察到模型可解释性。
任务 10: 观察模型监视器的可解释性
To preview this task, watch the video beginning at 17:42.
您需要了解模型是如何做出决策的。 需要这种理解来向参与贷款审批的人员解释决策,并确保模型所有者的决策有效。 要了解这些决策,请执行以下步骤来观察模型可解释性:
在左侧导航面板中,单击 "解释交易"图标 "。
选择 抵押核准模型部署-数据科学 以查看交易列表。
对于任何事务,单击 操作 列下的 说明 。 在这里,您将看到此决策的详细说明。 您将看到模型的最重要输入以及每个输入对最终结果的重要性。 蓝色条形表示倾向于支持模型决策的输入,而红色条形显示可能导致另一个决策的输入。 例如,申请人可能有足够的收入可以通过其他方式获得批准,但他们的不良信用历史记录和高额债务共同导致模型拒绝申请。 查看此说明以了解模型决策的基础。
可选: 如果要进一步深入了解模型如何做出其决策,请单击 检查 选项卡。 使用 检查 功能来分析决策,以查找敏感度区域,在这些敏感度区域中,对少量输入的微小更改将导致不同的决策。 您可以通过使用替代方法覆盖某些实际输入来自行测试敏感度,以了解这些输入是否会影响结果。
检查您的进度
下图显示了 Watson OpenScale中事务的可解释性。 您已确定该模型是准确的,并且公平对待所有申请人。 现在,您可以将模型推进到其生命周期中的下一个阶段。
Golden Bank 的团队使用 Orchestration Pipeline 创建了一个数据管道,用于提供所有抵押贷款申请人的最新数据,以及一个可供贷款人用于决策的机器学习模型。 然后,团队使用 Watson OpenScale 来确保模型公平对待所有申请人。
清除(可选)
如果要重新学习本教程,请删除以下工件。
工件 | 如何删除 |
---|---|
抵押贷款审批-数据科学和 MLOps 部署空间中的 抵押贷款审批模型部署-数据科学 | 删除部署 |
抵押审批-数据科学和 MLOps 部署空间 | 删除部署空间 |
Data Science and MLOps 样本项目 | 删除项目 |
后续步骤
试用以下教程:
注册另一个 用例。
了解更多信息
父主题: 用例教程