亚马逊文档列出了几种评估模型的方法(例如交叉验证等(,但是这些方法似乎在Sagemaker Java SDK中不可用。 目前,如果我们想进行 5 倍交叉验证,似乎唯一的选择是为每个数据子集创建一个模型(并部署 5 个端点(一个模型并手动计算性能指标(召回率、精度等(。
这种方法不是很有效,并且根据 k 折叠验证中的折叠数部署 k 端点的成本也可能很高。
有没有另一种方法来测试模型的性能?
Amazon SageMaker 是一组多个组件,您可以选择要使用的组件。
内置算法专为(无限(缩放而设计,这意味着您可以拥有庞大的数据集,并能够快速且低成本地使用它们构建模型。拥有大型数据集后,通常不需要使用交叉验证等技术,建议在训练数据和验证数据之间明确划分。提交培训作业时,这些部分中的每一个都将使用输入通道进行定义。
如果你有少量数据,并且想要对所有数据进行训练并使用交叉验证来允许它,则可以使用服务的不同部分(交互式笔记本实例(。您可以自带算法甚至容器映像,用于开发、训练或托管。你可以拥有任何基于任何机器学习库或框架的python代码,包括scikit-learn,R,TensorFlow,MXNet等。在代码中,您可以根据从 S3 复制到工作线程实例的训练数据定义交叉验证。