我在AWS Sagemaker中创建了一个scikit学习模型终结点。我想使用此端点对测试集进行预测。我的端点创建代码看起来像
predictor = sklearn.deploy(1, 'ml.m4.xlarge')
from sagemaker.predictor import csv_serializer
predictor.content_type = 'text/csv'
predictor.serializer = csv_serializer
predictor.deserializer = None
当我通过测试数据点作为列表predictor.predict(l)
(其中l
是列表)时,它将引发错误
ValueError: Expected 2D array, got 1D array instead:
当我将其作为2维的numpy数组传递时(我使用.ndim检查尺寸),它仍然会引发相同的错误。当我尝试将数据作为用逗号分隔且没有任何空格的字符串传递时,它仍会引发相同的错误。
Reshape your data either using array.reshape(-1, 1) if your data has a single feature or array.reshape(1, -1) if it contains a single sample.
每次抛出Valueerror
时都会显示此行,但是即使在重塑后,相同的错误仍然存在。
因此,我尝试了'2,3,4,5'
,['2,3,4,5']
,array[[2,3,4,5]]
,[2,3,4,5]
格式,但是这些都不起作用。
有人可以为sci-kit学习的预测函数输入正确的格式吗?