进行推理

现在,您可以使用 df_for_prediction 中的测试数据发出推理请求了。推理请求会调用您的模型,以预测 df_for_prediction 中每行中的企鹅特征所代表的企鹅种类。

准备推理测试数据

您需要先移除 species 列,然后才能使用测试数据创建推理。由于您要预测的是企鹅的种类,因此该列不能包含在用于创建推理的测试数据中。移除 species 列后,将数据转换为 Python 列表,因为这是 predict 方法用作输入的内容。运行以下代码可将数据转换为 Python 列表:

# Remove the species column
df_for_prediction.pop(LABEL_COLUMN)

# Convert data to a Python list
test_data_list = df_for_prediction.values.tolist()

(可选)查看测试数据

为了帮助您了解测试数据,您可以运行以下代码行来查看测试数据:

test_data_list

在每行中,六个列中的各个值分别指代一只企鹅的以下特征:

企鹅特征
0 island - 发现某种企鹅的岛屿。岛屿值映射为 0(对于 Dream)、1(对于 Biscoe)和 2(对于 Torgersen)。
1 culmen_length_mm - 企鹅喙顶部突出部位的长度。
2 culmen_depth_mm - 企鹅喙的高度。
3 flipper_length_mm - 企鹅鳍状翅膀的长度。
4 body_mass_g - 企鹅的体重。
5 sex - 企鹅的性别。 0FEMALE1MALE

发送推理请求

如需创建推理请求,请将您创建的测试数据的 Python 列表传递给 endpointpredict 方法。

predict 方法会评估每行中的特征,并使用这些特征来预测它们代表的企鹅种类。运行以下代码以创建推理结果。返回的推理结果包含一个行列表,其中每一行包含三列:阿德利企鹅(第 1 列)、帽带企鹅(第 2 列)或巴布亚企鹅(第 3 列)。

# Get your inferences.
predictions = endpoint.predict(instances=test_data_list)

# View the inferences
predictions.predictions

行中的每个列都包含一个值,值越高,对该列所代表的企鹅种类的正确推理的置信度就越高。例如,在下面的示例推理输出行中,模型使用样本企鹅数据行的特征来预测该企鹅最有可能属于阿德利企鹅种类。这是因为最高值 0.732703805 位于第一列。

[0.732703805, 0.233752429, 0.0335437432]

在以下代码中,NumPy argmax 方法会返回包含最高值的每行列。最大值对应于最有可能正确的推理。第二行显示推理结果数组。

# Get the inference for each set of input data.
species_predictions = np.argmax(predictions.predictions, axis=1)

# View the best inference for the penguin characteristics in each row.
species_predictions

species_predictions 数组中的每个结果均预测相应测试数据行中值对应的企鹅种类。例如,第一个值为 0,它映射到阿德利企鹅种类。这意味着您的模型预测具有测试数据第一行特征的企鹅种类是阿德利企鹅

清理资源

现在,您可以继续使用笔记本来探索和详细了解您创建的资源及其运作方式。

删除您的资源

完成操作后,我们建议您删除在本教程中创建的 Google Cloud 资源,以免产生不必要的费用。您可以通过以下两种方式删除资源:

  • 删除项目,这也会删除与项目关联的所有资源。如需了解详情,请参阅关停(删除)项目

  • 运行用于删除训练作业(CustomTrainingJob 对象)、模型(Model 对象)、端点(Endpoint 对象)和 Cloud Storage 存储桶的代码。此选项会保留您的项目,以及您可能已创建但未通过代码明确删除的任何其他资源。

    您必须先取消部署模型,然后才能通过将 force=True 传递给 endpoint.delete 方法来删除模型。

    如需保留项目并仅删除您在本教程中创建的资源,请在笔记本中运行以下代码:

import os

# Delete the training job
job.delete()

# Delete the endpoint and undeploy the model from it
endpoint.delete(force=True)

# Delete the model
model.delete()

# Delete the storage bucket and its contents
bucket.delete(force=True)

删除 Vertex AI Workbench 实例

您可以保留 Vertex AI Workbench 实例以用于将来的工作。如果您保留它,请确保了解其费用。如需了解详情,请参阅 Vertex AI Workbench 价格

如果要删除 Vertex AI Workbench 实例,请执行以下操作:

  1. 在 Google Cloud 控制台中,前往 Vertex AI Workbench 实例页面。

    转到实例

  2. 选择您的 Vertex AI Workbench 实例。

  3. 在上方菜单中,点击  删除

  4. 删除实例确认对话框中,点击确认。删除操作需要几分钟时间才能完成。