извлечение только некоторых элементов из объекта Dataset тензорного потока - PullRequest
0 голосов
/ 30 мая 2020

У меня есть набор данных, который описывает аудиофайл (.wav) и его особенности. Каждая запись в наборе данных имеет вид

raw_audio_tensor, (float_feature_tensor, float_feature_tensor...int_feature_tensor)

Я бы хотел передать моей модели необработанные аудиоданные и только одну функцию (в виде метки) за раз, чтобы она могла спрогнозируйте эту метку на основе необработанного звука.

Моя проблема в том, что я не могу найти способ ссылаться только на некоторые функции в записи набора данных без их явного извлечения и формирования нового набора данных формы (raw_audio_tensor, float_label_tensor) вот так:

raw_tracks = []
first_features = []

for raw, features in dataset:
    raw_tracks.append(raw)
    first_features.append(features[0])

tracks = tf.data.Dataset.from_tensor_slices(raw_tracks)
features = tf.data.Dataset.from_tensor_slices(first_features)

limited_dataset = tf.data.Dataset.zip((tracks, features))

Есть ли способ ссылаться на некоторые функции в наборе данных без необходимости повторять его и создавать новый набор данных каждый раз, когда я хочу передать другую метку с необработанными аудиоданными?

...