本页介绍如何根据表格数据创建 Vertex AI 数据集,以便您可以开始训练分类和回归模型。您可以使用 Google Cloud 控制台或 Vertex AI API 创建数据集。
准备工作
在根据表格数据创建 Vertex AI 数据集之前,您必须先准备数据。有关详情,请参阅:
创建空数据集并关联准备好的数据
如需创建用于分类或回归的机器学习模型,您必须先有一组用于训练的代表性数据。使用 Google Cloud 控制台或 API 将准备好的数据关联到数据集中。关联数据时,您可以修改数据并开始模型训练。
Google Cloud 控制台
- 在 Google Cloud 控制台的 Vertex AI 部分中,前往数据集页面。
- 点击创建以打开创建数据集详情页面。
- 修改数据集名称字段,以创建描述性数据集显示名。
- 选择表格标签页。
- 选择回归/分类目标。
- 从区域下拉列表中选择一个区域。
- 如果您要将 CMEK(客户管理的加密密钥)与数据集搭配使用,请打开高级选项并提供密钥。(预览版)
- 点击创建以创建空数据集,然后转到来源标签页。
- 根据数据源,选择以下选项之一。
计算机上的 CSV 文件
- 点击 从计算机上传 CSV 文件。
- 点击选择文件,然后选择要上传到 Cloud Storage 存储桶的所有本地文件。
- 在选择 Cloud Storage 路径部分,输入 Cloud Storage 存储桶的路径,或点击浏览以选择存储桶位置。
Cloud Storage 中的 CSV 文件
- 点击 选择 Cloud Storage 中的 CSV 文件。
- 在选择 Cloud Storage 中的 CSV 文件部分,输入 Cloud Storage 存储桶的路径,或点击浏览以选择 CSV 文件的位置。
BigQuery 中的表或视图
- 点击 从 BigQuery 中选择表或视图。
- 输入输入文件的项目、数据集和表 ID。
- 点击继续。
您的数据源已与您的数据集关联。
API
创建数据集时,您也会将其与数据源关联。创建数据集所需的代码取决于训练数据是位于 Cloud Storage 还是 BigQuery 中。如果数据源位于其他项目中,请确保设置所需权限。使用 Cloud Storage 中的数据创建数据集
REST
您可以使用 datasets.create 方法创建数据集。
在使用任何请求数据之前,请先进行以下替换:
-
LOCATION:存储数据集的区域。必须是支持数据集资源的区域。例如
us-central1
。 - PROJECT:您的项目 ID。
- DATASET_NAME:数据集的显示名。
-
METADATA_SCHEMA_URI:目标的架构文件的 URI。
gs://google-cloud-aiplatform/schema/dataset/metadata/tabular_1.0.0.yaml
-
URI:包含训练数据的 Cloud Storage 存储桶的路径 (URI)。可以有多个路径。每个 URI 的格式如下:
gs://GCSprojectId/bucketName/fileName
- PROJECT_NUMBER:自动生成的项目编号。
HTTP 方法和网址:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/datasets
请求 JSON 正文:
{ "display_name": "DATASET_NAME", "metadata_schema_uri": "METADATA_SCHEMA_URI", "metadata": { "input_config": { "gcs_source": { "uri": [URI1, URI2, ...] } } } }
如需发送请求,请选择以下方式之一:
curl
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/datasets"
PowerShell
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/datasets" | Select-Object -Expand Content
您应该收到类似以下内容的 JSON 响应:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CreateDatasetOperationMetadata", "genericMetadata": { "createTime": "2020-07-07T21:27:35.964882Z", "updateTime": "2020-07-07T21:27:35.964882Z" } }
Java
在尝试此示例之前,请按照《Vertex AI 快速入门:使用客户端库》中的 Java 设置说明执行操作。 如需了解详情,请参阅 Vertex AI Java API 参考文档。
如需向 Vertex AI 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Node.js
在尝试此示例之前,请按照《Vertex AI 快速入门:使用客户端库》中的 Node.js 设置说明执行操作。 如需了解详情,请参阅 Vertex AI Node.js API 参考文档。
如需向 Vertex AI 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Python
如需了解如何安装或更新 Vertex AI SDK for Python,请参阅安装 Vertex AI SDK for Python。 如需了解详情,请参阅 Python API 参考文档。
使用 BigQuery 中的数据创建数据集
REST
您可以使用 datasets.create 方法创建数据集。在使用任何请求数据之前,请先进行以下替换:
-
LOCATION:存储数据集的区域。必须是支持数据集资源的区域。例如
us-central1
。 - PROJECT:您的项目 ID。
- DATASET_NAME:数据集的显示名。
-
METADATA_SCHEMA_URI:目标的架构文件的 URI。
gs://google-cloud-aiplatform/schema/dataset/metadata/tabular_1.0.0.yaml
-
URI:包含训练数据的 BigQuery 表的路径。在此表单中执行以下操作:
bq://bqprojectId.bqDatasetId.bqTableId
- PROJECT_NUMBER:自动生成的项目编号。
HTTP 方法和网址:
POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/datasets
请求 JSON 正文:
{ "display_name": "DATASET_NAME", "metadata_schema_uri": "METADATA_SCHEMA_URI", "metadata": { "input_config": { "bigquery_source" :{ "uri": "URI } } } }
如需发送请求,请选择以下方式之一:
curl
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/datasets"
PowerShell
将请求正文保存在名为 request.json
的文件中,然后执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT/locations/LOCATION/datasets" | Select-Object -Expand Content
您应该收到类似以下内容的 JSON 响应:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CreateDatasetOperationMetadata", "genericMetadata": { "createTime": "2020-07-07T21:27:35.964882Z", "updateTime": "2020-07-07T21:27:35.964882Z" } }
Java
在尝试此示例之前,请按照《Vertex AI 快速入门:使用客户端库》中的 Java 设置说明执行操作。 如需了解详情,请参阅 Vertex AI Java API 参考文档。
如需向 Vertex AI 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Node.js
在尝试此示例之前,请按照《Vertex AI 快速入门:使用客户端库》中的 Node.js 设置说明执行操作。 如需了解详情,请参阅 Vertex AI Node.js API 参考文档。
如需向 Vertex AI 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Python
如需了解如何安装或更新 Vertex AI SDK for Python,请参阅安装 Vertex AI SDK for Python。 如需了解详情,请参阅 Python API 参考文档。
获取操作状态
某些请求会启动需要一些时间才能完成的长时间运行的操作。这些请求会返回操作名称,您可以使用该名称查看操作状态或取消操作。Vertex AI 提供辅助方法来调用长时间运行的操作。如需了解详情,请参阅使用长时间运行的操作。