文本分类 – TensorFlow 算法的输入和输出接口 - 亚马逊 SageMaker AI
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

文本分类 – TensorFlow 算法的输入和输出接口

TensorFlow Hub 模型中列出的每个预先训练模型,都可以通过由任意类别数量的文本句子组成的数据集进行微调。预先训练模型将分类层附加到文本嵌入模型,并将层参数初始化为随机值。根据在输入数据中检测到的类别数量来确定分类层的输出维度。

请注意如何格式化训练数据,以便输入到文本分类 – TensorFlow 模型中。

  • 训练数据输入格式:包含 data.csv 文件的目录。第一列的每一行都应有一个整数型的类标签,其值介于 0 和类数量之间。第二列的每一行都应有对应的文本数据。

以下是输入 CSV 文件的示例:请注意,该文件不应有任何标题。文件应托管在 Amazon S3 存储桶中,路径类似于如下所示:s3://bucket_name/input_directory/。请注意,结尾的 / 是必需的。

| | | |---|---| |0 |hide new secretions from the parental units| |0 |contains no wit , only labored gags| |1 |that loves its characters and communicates something rather beautiful about human nature| |...|...|

增量训练

您可以使用以前通过 SageMaker AI 训练的模型中的构件作为种子来训练新模型。当您想训练具有相同或类似数据的新模型时,这种增量训练可节省训练时间。

注意

您只能将 SageMaker AI 文本分类 – TensorFlow 模型作为种子,植入到在 SageMaker AI 中训练的另一个文本分类 – TensorFlow 模型中。

只要类别集合保持不变,就可以使用任何数据集进行增量训练。增量训练步骤与微调步骤类似,但不是使用预先训练的模型开始,而是从现有的微调模型开始。

有关通过 SageMaker AI 文本分类 – TensorFlow 算法使用增量训练的更多信息,请参阅 JumpStart 简介 – 文本分类笔记本。

使用文本分类 – TensorFlow 算法进行推理

您可以托管通过 TensorFlow 文本分类训练得到的微调模型,以便用于推理。用于推理的任何原始文本格式都必须是内容类型 application/x-text

运行推理会生成概率值、所有类的类标签以及与概率最高的类索引对应的预测标签,这些标签以 JSON 格式编码。文本分类 – TensorFlow 模型的每个请求处理一个字符串,并且仅输出一行。以下是 JSON 格式响应的示例:

accept: application/json;verbose {"probabilities": [prob_0, prob_1, prob_2, ...], "labels": [label_0, label_1, label_2, ...], "predicted_label": predicted_label}

如果 accept 设置为 application/json,则模型仅输出概率。