数据集包含要翻译的内容类型的代表性样本,即源语言和目标语言中的匹配句对。数据集用作训练模型的输入。
构建数据集的主要步骤如下:
项目可以有多个数据集,每个数据集用于训练单独的模型。您可以获取可用数据集列表,并且可以删除不再需要的数据集。
创建数据集
要创建自定义模型,首先需要创建一个空数据集,该数据集最终将保存模型的训练数据。创建数据集时,需要确定模型的源语言和目标语言。 如需详细了解支持的语言和变体,请参阅自定义模型的语言支持。
网页界面
在 AutoML Translation 界面中,您可以创建新数据集并在同一页面将训练项导入其中。
从标题栏右上角的下拉列表中选择您为其启用了 AutoML Translation 的项目。
在数据集标签页上,点击创建数据集。
在创建数据集对话框中,执行以下操作:
- 输入数据集的名称。
从下拉列表中选择源语言和目标语言。选择源语言后,系统就会显示可用的目标语言。
点击创建。系统会打开导入标签页。
REST
发送创建数据集请求
下面演示了如何向 project.locations.datasets/create
方法发送 POST
请求。该示例使用通过 Google Cloud CLI 为项目设置的服务账号的访问令牌。
在使用任何请求数据之前,请先进行以下替换:
- project-id:您的 Google Cloud Platform 项目 ID
- dataset-name:新数据集的名称
- source-language-code:您要翻译的语言,以 ISO 639-1 代码形式表示,例如“en”
- target-language-code:要翻译为的目标语言,如 ISO 639-1 代码,例如“es”
HTTP 方法和网址:
POST https://automl.googleapis.com/v1/projects/project-id/locations/us-central1/datasets
请求 JSON 正文:
{ "displayName": "dataset-name", "translationDatasetMetadata": { "sourceLanguageCode": "source-language-code", "targetLanguageCode": "target-language-code" } }
如需发送您的请求,请展开以下选项之一:
您应该收到类似以下内容的 JSON 响应:
{ "name": "projects/project-number/locations/us-central1/operations/operation-id", "metadata": { "@type": "type.googleapis.com/google.cloud.automl.v1.OperationMetadata", "createTime": "2019-10-01T22:13:48.155710Z", "updateTime": "2019-10-01T22:13:48.155710Z", "createDatasetDetails": {} } }
获取结果
如需获取请求的结果,您必须向 operations
资源发送 GET
请求。下面演示了如何发送此类请求。
在使用任何请求数据之前,请先进行以下替换:
- operation-name:在对 API 的原始调用的响应中返回的操作名称
- project-id:您的 Google Cloud Platform 项目 ID
HTTP 方法和网址:
GET https://automl.googleapis.com/v1/operation-name
如需发送您的请求,请展开以下选项之一:
您应该收到类似以下内容的 JSON 响应:
{ "metadata": { "@type": "type.googleapis.com/google.cloud.automl.v1.OperationMetadata", "createTime": "2019-10-01T22:13:48.155710Z", "updateTime": "2019-10-01T22:13:52.321072Z", ... }, "done": true, "response": { "@type": "resource-type", "name": "resource-name" } }
Go
如需了解如何安装和使用 AutoML Translation 客户端库,请参阅 AutoML Translation 客户端库。如需了解详情,请参阅 AutoML Translation Go API 参考文档。
如需向 AutoML Translation 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
Java
如需了解如何安装和使用 AutoML Translation 客户端库,请参阅 AutoML Translation 客户端库。如需了解详情,请参阅 AutoML Translation Java API 参考文档。
如需向 AutoML Translation 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
Node.js
如需了解如何安装和使用 AutoML Translation 客户端库,请参阅 AutoML Translation 客户端库。如需了解详情,请参阅 AutoML Translation Node.js API 参考文档。
如需向 AutoML Translation 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
Python
如需了解如何安装和使用 AutoML Translation 客户端库,请参阅 AutoML Translation 客户端库。如需了解详情,请参阅 AutoML Translation Python API 参考文档。
如需向 AutoML Translation 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
其他语言
C#:请按照客户端库页面上的 C# 设置说明操作,然后访问 .NET 版 AutoML Translation 参考文档。
PHP:请按照客户端库页面上的 PHP 设置说明操作,然后访问 PHP 版 AutoML Translation 参考文档。
Ruby:请按照客户端库页面上的 Ruby 设置说明操作,然后访问 Ruby 版 AutoML Translation 参考文档。
将训练项导入数据集
创建数据集后,您可以将训练句对导入其中。 如需详细了解如何准备训练数据,请参阅准备训练数据。
网页界面
在 AutoML Translation 界面中,您可以创建新数据集并在同一页面将训练项导入其中(请参阅创建数据集)。要将训练项导入现有数据集,请按以下步骤操作。
创建数据集文件夹之后,您就可以上传数据了。上传要用于训练模型的句对。
在导入标签页上,您可以从本地计算机或 Cloud Storage 上传 TSV 或 TMX 文件。对于本地导入的文件,请在选择文件后点击浏览。系统会显示文件夹列表。选择您要将文件上传到其中的目标文件夹。为了保证数据驻留,必须在 Cloud Storage 上托管此目录。
如果您要上传包含句对的不同文件,请选中使用不同的文件进行训练、验证和测试(高级)复选框。如果数据集中的句对数超过 100000,则建议使用此选项。您最多只能为验证集和测试集分配 10000 个句对;否则,AutoML Translation 会返回错误。
点击继续。
您会返回到数据集页面。您的数据集会在文档导入期间显示一个进行中动画。成功上传数据集后,我们会向您注册程序时使用的电子邮件地址发送一封邮件。
查看数据集。
成功导入数据后,请从数据集标签页选择相应数据集以查看其详细信息。句子 (Sentence) 标签页已启用,并显示了该数据集的名称。系统会列出句对。每个句对都带有“训练”“验证”或“测试”标识,指示将使用该句对的处理阶段。
REST
使用 projects.locations.datasets.importData
方法将数据项导入数据集。
在使用任何请求数据之前,请先进行以下替换:
- dataset-name:创建数据集时由 API 返回的数据集名称
- bucket-name:包含描述数据集的输入 CSV 的 Cloud Storage 存储桶
- csv-file-name:描述数据集的输入 CSV 文件的名称
- project-id:您的 Google Cloud Platform 项目 ID
HTTP 方法和网址:
POST https://automl.googleapis.com/v1/dataset-name:importData
请求 JSON 正文:
{ "inputConfig": { "gcsSource": { "inputUris": "gs://bucket-name/csv-file-name" } } }
如需发送您的请求,请展开以下选项之一:
您应该收到类似以下内容的 JSON 响应:
{ "name": "projects/project-number/locations/us-central1/operations/operation-id", "metadata": { "@type": "type.googleapis.com/google.cloud.automl.v1beta1.OperationMetadata", "createTime": "2018-04-27T01:28:36.128120Z", "updateTime": "2018-04-27T01:28:36.128150Z", "cancellable": true } }
Go
如需了解如何安装和使用 AutoML Translation 客户端库,请参阅 AutoML Translation 客户端库。如需了解详情,请参阅 AutoML Translation Go API 参考文档。
如需向 AutoML Translation 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
Java
如需了解如何安装和使用 AutoML Translation 客户端库,请参阅 AutoML Translation 客户端库。如需了解详情,请参阅 AutoML Translation Java API 参考文档。
如需向 AutoML Translation 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
Node.js
如需了解如何安装和使用 AutoML Translation 客户端库,请参阅 AutoML Translation 客户端库。如需了解详情,请参阅 AutoML Translation Node.js API 参考文档。
如需向 AutoML Translation 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
Python
如需了解如何安装和使用 AutoML Translation 客户端库,请参阅 AutoML Translation 客户端库。如需了解详情,请参阅 AutoML Translation Python API 参考文档。
如需向 AutoML Translation 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
其他语言
C#:请按照客户端库页面上的 C# 设置说明操作,然后访问 .NET 版 AutoML Translation 参考文档。
PHP:请按照客户端库页面上的 PHP 设置说明操作,然后访问 PHP 版 AutoML Translation 参考文档。
Ruby:请按照客户端库页面上的 Ruby 设置说明操作,然后访问 Ruby 版 AutoML Translation 参考文档。
创建并填充数据集后,即可训练模型(请参阅创建和管理模型)。
管理数据集
列出数据集
一个项目可以包含许多数据集。本部分介绍如何检索项目的可用数据集列表。
网页界面
如需使用 AutoML Translation 界面查看可用数据集的列表,请点击左侧导航菜单顶部的数据集链接。
要查看其他项目的数据集,请从标题栏右上角的下拉列表中选择该项目。
REST
在使用任何请求数据之前,请先进行以下替换:
- project-id:您的 Google Cloud Platform 项目 ID
HTTP 方法和网址:
GET https://automl.googleapis.com/v1/projects/project-id/locations/us-central1/datasets
如需发送您的请求,请展开以下选项之一:
您应该收到类似以下内容的 JSON 响应:
{ "datasets": [ { "name": "projects/project-number/locations/us-central1/datasets/dataset-id", "displayName": "dataset-display-name", "createTime": "2019-10-01T22:47:38.347689Z", "etag": "AB3BwFpPWn6klFqJ867nz98aXr_JHcfYFQBMYTf7rcO-JMi8Ez4iDSNrRW4Vv501i488", "translationDatasetMetadata": { "sourceLanguageCode": "source-language", "targetLanguageCode": "target-language" } }, ... ] }
Go
如需了解如何安装和使用 AutoML Translation 客户端库,请参阅 AutoML Translation 客户端库。如需了解详情,请参阅 AutoML Translation Go API 参考文档。
如需向 AutoML Translation 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
Java
如需了解如何安装和使用 AutoML Translation 客户端库,请参阅 AutoML Translation 客户端库。如需了解详情,请参阅 AutoML Translation Java API 参考文档。
如需向 AutoML Translation 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
Node.js
如需了解如何安装和使用 AutoML Translation 客户端库,请参阅 AutoML Translation 客户端库。如需了解详情,请参阅 AutoML Translation Node.js API 参考文档。
如需向 AutoML Translation 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
Python
如需了解如何安装和使用 AutoML Translation 客户端库,请参阅 AutoML Translation 客户端库。如需了解详情,请参阅 AutoML Translation Python API 参考文档。
如需向 AutoML Translation 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
其他语言
C#:请按照客户端库页面上的 C# 设置说明操作,然后访问 .NET 版 AutoML Translation 参考文档。
PHP:请按照客户端库页面上的 PHP 设置说明操作,然后访问 PHP 版 AutoML Translation 参考文档。
Ruby:请按照客户端库页面上的 Ruby 设置说明操作,然后访问 Ruby 版 AutoML Translation 参考文档。
删除数据集
网页界面
在 AutoML Translation 界面中,点击左侧导航菜单顶部的数据集链接以显示可用数据集的列表。
点击要删除的行最右侧的三点状菜单,然后选择删除。
在确认对话框中点击确认。
REST
- 在创建数据集时,将 dataset-name 替换为数据集的完整名称。全名的格式为
projects/{project-id}/locations/us-central1/datasets/{dataset-id}
在使用任何请求数据之前,请先进行以下替换:
- dataset-name:要删除的数据集的名称,格式为
project/project-id/locations/us-central1/datasets/dataset-id
HTTP 方法和网址:
DELETE https://automl.googleapis.com/v1/dataset-name
如需发送您的请求,请展开以下选项之一:
您应该收到类似以下内容的 JSON 响应:
{ "name": "projects/project-number/locations/us-central1/operations/operation-id", "metadata": { "@type": "type.googleapis.com/google.cloud.automl.v1.OperationMetadata", "createTime": "2019-10-02T16:43:03.923442Z", "updateTime": "2019-10-02T16:43:03.923442Z", "deleteDetails": {} }, "done": true, "response": { "@type": "type.googleapis.com/google.protobuf.Empty" } }
Go
如需了解如何安装和使用 AutoML Translation 客户端库,请参阅 AutoML Translation 客户端库。如需了解详情,请参阅 AutoML Translation Go API 参考文档。
如需向 AutoML Translation 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
Java
如需了解如何安装和使用 AutoML Translation 客户端库,请参阅 AutoML Translation 客户端库。如需了解详情,请参阅 AutoML Translation Java API 参考文档。
如需向 AutoML Translation 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
Node.js
如需了解如何安装和使用 AutoML Translation 客户端库,请参阅 AutoML Translation 客户端库。如需了解详情,请参阅 AutoML Translation Node.js API 参考文档。
如需向 AutoML Translation 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
Python
如需了解如何安装和使用 AutoML Translation 客户端库,请参阅 AutoML Translation 客户端库。如需了解详情,请参阅 AutoML Translation Python API 参考文档。
如需向 AutoML Translation 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
其他语言
C#:请按照客户端库页面上的 C# 设置说明操作,然后访问 .NET 版 AutoML Translation 参考文档。
PHP:请按照客户端库页面上的 PHP 设置说明操作,然后访问 PHP 版 AutoML Translation 参考文档。
Ruby:请按照客户端库页面上的 Ruby 设置说明操作,然后访问 Ruby 版 AutoML Translation 参考文档。
导入问题:
创建数据集时,如果句子对过长或源语言和目标语言完全相同,则 AutoML Translation 可能会丢弃这些句对。
对于过长的句对,我们建议将其分解为大约 200 个字或更小的句对,然后重新创建包含已删除句对的数据集。在处理数据时,AutoML Translation 使用内部流程对输入数据进行令牌化,这可能会增加句子的大小。AutoML Translation 可使用此令牌化数据测量数据大小。因此,200 字的上限是最大长度的估算值。
您可以从数据集中移除在源语言和目标语言中相同的句对。如果您希望这些句子保持未翻译状态,请使用术语表资源构建用于定义 AutoML Translation 处理特定术语方式的自定义字典。