进行预测

您现在可以使用 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 predictions.
predictions = endpoint.predict(instances=test_data_list)

# View the predictions
predictions.predictions

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

[0.732703805, 0.233752429, 0.0335437432]

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

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

# View the best prediction 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. 删除实例确认对话框中,点击确认。删除操作需要几分钟时间才能完成。