如何将 TensorFlow 数据集列合并到 Keras 的(特征、标签)元组中?

How do I merge TensorFlow Dataset columns into (features, label) tuple for Keras?

我有一个 tf.data.Dataset 由多个字段组成(例如 feature1、feature2、feature3、label)。我如何将它转换成 Tensor 和(特征,标签),我可以传递给 Keras 进行模型训练?

更新

tf.data.Dataset 是一个类似的字典:

{
    'feature1': 1.5,
    'feature2': 5.6,
    'feature3': 7.9,
    'label': 1.0
}

预期的 Keras 输入格式是具有两个张量的 tuple (features_tensor, label_tensor)

您可以定义一个函数,该函数可以将字典元素和 return 数据作为所需格式的元组。然后,您可以使用 tf.data.Dataset.map 方法将其应用于您的数据集:

def reformat_element(elem):
    features = [elem['feature1'], elem['feature2'], elem['feature3']]
    label = [elem['label']]
    return features, label

dataset = dataset.map(reformat_element)