更改num_classes超参数以进行SageMaker增量训练

时间:2019-04-19 13:22:51

标签: python-3.x amazon-sagemaker

我正在对已经在SageMaker中训练过的模型进行增量训练。我想将数据添加到现有的类以及创建新的类。第一个模型有4个类(num_classes = 4),但我想保留这些类并添加3个其他类。

文档说,进行增量训练时num_classes超参数必须相同。但是,如果是这种情况,那就意味着我无法将类添加到现有模型中,每次想更改类的数量时,都必须从头开始。这个准确吗?还是有一种方法可以更新现有模型并更改其接受训练的课程数量?

这是我用于增量培训工作的示例笔记本: https://github.com/awslabs/amazon-sagemaker-examples/blob/master/introduction_to_amazon_algorithms/imageclassification_caltech/Image-classification-incremental-training-highlevel.ipynb

See num_classes parameter here

1 个答案:

答案 0 :(得分:0)

要使用SageMaker内置的图像分类算法进行增量训练,新模型和预训练模型的输入超参数必须分别为num_layersimage_shape和{ {1}}输入参数。因为这些参数定义了网络体系结构。

通常,对于新添加的类,您将使用新旧类创建新的数据集,并在新数据集上更新模型权重。据我所知,使用SageMaker图像分类算法是不可能的。