我希望使用skorch在Pytorch中应用交叉验证,因此我准备了我的模型和我的tensorDataset,它返回(图像、标题和标题长度),因此它具有X和Y,所以我将无法在该方法中设置Y。
net.fit(dataset)
但是当我尝试这样做时,出现了错误:
ValueError: 分层交叉验证需要明确传递合适的y
这是我的部分代码:
start = time.time()
net = NeuralNetClassifier(
decoder, criterion= nn.CrossEntropyLoss,
max_epochs=args.epochs,
lr=args.lr,
optimizer=optim.SGD,
device='cuda', # uncomment this to train with CUDA
)
net.fit(dataset, y=None)
end = time.time()
.fit
时,skorch 期望数据集包含(X, y)
,因此 skorch 将按预期处理此情况。在训练之前,仅需要y
进行拆分。 - nemo