我在keras中实现了一个神经网络,其结构如下:
model = Sequential([... layers ...])model.compile(optimizer=..., loss=...)hist=model.fit(x=X,y=Y, validation_split=0.1, epochs=100)
我想知道是否可以从model或hist中提取出训练和验证集?也就是说,我想知道X和Y中哪些索引被用于训练,哪些被用于验证。
回答:
Keras 将数据集分割在
split_at = int(x[0].shape * (1-validation_split))
为训练和验证部分。因此,如果你有n个样本,前int(n*(1-validation_split))个样本将是训练样本,其余的将是验证集。
如果你想要更多的控制,你可以自己分割数据集,并通过参数validation_data传递验证数据集:
model.fit(train_x, train_y, …, validation_data=(validation_x, validation_y))