Как преобразовать набор данных TensorFlow? - PullRequest
0 голосов
/ 12 февраля 2020

ОБЩАЯ ИНФОРМАЦИЯ

При выполнении конструирования объектов, вероятно, потребуется обработать необработанные наборы данных путем создания новых столбцов. Рассмотрим следующий код:

import tensorflow as tf

dataset = tf.data.Dataset.from_tensor_slices(['cat', 'rat', 'bat'])

dataset = dataset.map(lambda x: x+'s')

_ = [print (element) for element in dataset]

, где я просто добавляю букву s к каждой из строк. Это отлично работает. Однако, если бы я вместо этого хотел получить длину каждой строки, я бы изменил лямбда-функцию, чтобы она возвращала len(x). Это, однако, терпит неудачу, несмотря на тот факт, что x, по-видимому, ясно понимается TF как строка.

ВОПРОС

Как обрабатывать набор данных в векторизуемым образом так же, как можно было бы map() или apply() на pandas DataFrames / Series? Т.е. я хотел бы иметь любую произвольную лямбда-функцию (например, len(x) или 'z' in x, et c).

Является ли использование map() лучшей практикой для начала?

...