本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
文本分类- TensorFlow 算法的输入和输出接口
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| |...|...|
增量训练
您可以使用以前训练过的模型中的工件为新模型的训练做种子 SageMaker。当您想训练具有相同或类似数据的新模型时,这种增量训练可节省训练时间。
注意
您只能为 SageMaker 文本分类(带有另一种文本分类的 TensorFlow 模型)进行种子训练 SageMaker。 TensorFlow
只要类别集合保持不变,就可以使用任何数据集进行增量训练。增量训练步骤与微调步骤类似,但不是使用预先训练的模型开始,而是从现有的微调模型开始。
有关使用 SageMaker 文本分类 TensorFlow 算法进行增量训练的更多信息,请参阅 “文本分类简介
使用文本分类进行推理- 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
,则模型仅输出概率。