

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

# 文本分类- TensorFlow 算法的输入和输出接口
<a name="text-classification-tensorflow-inputoutput"></a>

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

请注意如何设置训练数据的格式，以便输入到文本分类- 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|
|...|...|
```

## 增量训练
<a name="text-classification-tensorflow-incremental-training"></a>

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

**注意**  
您只能播种 SageMaker AI 文本分类（带有另一种文本分类的 TensorFlow 模型）在 SageMaker AI 中训练过的 TensorFlow 模型。

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

有关使用 SageMaker AI 文本分类 TensorFlow 算法进行增量训练的更多信息，请参阅 “[文本分类简介](https://github.com/aws/amazon-sagemaker-examples/blob/main/introduction_to_amazon_algorithms/jumpstart_text_classification/Amazon_JumpStart_Text_Classification.ipynb)” 示例笔记本。 JumpStart 

## 使用文本分类进行推理- TensorFlow 算法
<a name="text-classification-tensorflow-inference"></a>

您可以托管 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`，则模型仅输出概率。