我认为标题是不言自明的,但要详细询问,有 sklearn 的方法 train_test_split()
其工作方式如下:X_train, X_test, Y_train, Y_test = train_test_split(X, Y , test_size = 0.3, stratify = Y)
这意味着:该方法将以 0.3 : 0.7 的比例拆分数据,并尝试使两个数据中的标签百分比相等。有与此等效的 keras 吗?
最佳答案
现在正在使用 keras 数据集类。我正在运行 keras-2.2.4-tf 以及新的 tensorflow 版本。
基本上,使用类似tf.data.Dataset.from_tensor_slices
的方式将所有数据加载到数据集中。然后将数据拆分为新的数据集以进行训练和验证。例如,打乱数据集中的所有记录。然后使用除前 400 个以外的所有作为训练,使用前 400 个作为验证。
ds = ds_in.shuffle(buffer_size=rec_count)
ds_train = ds.skip(400)
ds_validate = ds.take(400)
Dataset 类的实例是为 Keras 模型传递的天然容器。我从 tensorflow 或 keras 训练示例中复制了这个概念,但似乎无法再次找到它。
使用 load_data
方法创建的固定数据集创建了 numpy.ndarray 类,因此它们有点不同,但可以轻松转换为 keras 数据集。我怀疑这还没有完成,因为太多现有代码会被破坏。
关于python - 有没有keras方法来拆分数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48566821/