我试图在AWS SageMaker中使用MXNet创建一个简单的线性学习器。我之前从未使用过SageMaker或MXNet。模型拟合时出现如下运行时错误,并关闭了实例:
UnexpectedStatusException: 训练任务linear-learner-2020-02-11-06-13-22-712失败。原因:ClientError:无法读取数据通道’train’。请求的内容类型为’application/x-recordio-protobuf’。请验证数据是否符合请求的内容类型。(由MXNetError引起)
我认为在作为训练数据传递之前,数据应转换为protobuf格式。有人能解释一下MXNet模型的正确格式是什么吗?将一个简单的DataFrame转换为protobuf的最佳方法是什么?
回答:
这个端到端的演示展示了如何使用在pandas
数据框中预处理的输入数据,然后使用SDK将其转换为protobuf来使用线性学习器。但请注意:
- 没有必要使用protobuf,您也可以传递csv数据,并将目标变量放在文件的第一列,如这里所示。
- 无需了解MXNet即可使用SageMaker线性学习器,只需使用您选择的SDK,将数据带到S3,然后编排训练和推理 🙂