Как объединить столбцы набора данных TensorFlow в кортеж (features, label) для Keras? - PullRequest
0 голосов
/ 21 апреля 2020

У меня есть 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).

1 Ответ

1 голос
/ 22 апреля 2020

Вы можете определить функцию, которая может принимать элемент словаря и возвращать данные в виде кортежа в нужном формате. Затем вы можете использовать метод 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) 
...