Почему я должен использовать tf.data? - PullRequest
0 голосов
/ 27 февраля 2019

Я изучаю тензор потока, и API tf.data смущает меня.Очевидно, что это лучше при работе с большими наборами данных, но при использовании набора данных его необходимо преобразовать обратно в тензор.Но почему бы просто не использовать тензор?Почему и когда мы должны использовать tf.data?

Почему невозможно, чтобы tf.data возвращал весь набор данных, а не обрабатывал его через цикл for?Когда я просто минимизирую функцию набора данных (используя что-то вроде tf.losses.mean_squared_error), я обычно вводю данные через тензор или массив с нулевыми значениями, и я не знаю, как вводить данные через цикл for.Как бы я это сделал?

1 Ответ

0 голосов
/ 27 февраля 2019
  • Узел tf.data имеет специальные инструменты, которые помогают в создании входного конвейера для вашей модели ML.Входной конвейер принимает необработанные данные, обрабатывает их и затем передает их в модель.

Когда мне следует использовать tf.data module?

Модуль tf.data полезен, когда у вас большой набор данных в форме файла, такого как .csv или .tfrecord.Кроме того, когда ваши необработанные данные требуют перемешивания и пакетов для обучения.Это может эффективно получить данные из источника.Полезно для больших наборов данных, а также для небольших наборов данных.Он может объединять наборы данных для обучения и тестирования.

Как я могу создавать партии и проходить через них для обучения?

Я думаю, что вы можете эффективно сделать это с NumPy и np.reshape метод.Панды могут читать файлы данных для вас.Тогда вам просто необходим цикл for ... in ..., чтобы каждая партия передавала его в вашу модель.

Как передать данные NumPy в модель TensorFlow?

Есть два варианта использования tf.placeholder() или tf.data.Dataset.

  1. tf.data.Dataset - намного более легкая реализация.Я рекомендую использовать это.Также имеется хороший набор методов.
  2. tf.placeholder создает тензор-заполнитель, который подает данные в граф TensorFlow.Этот процесс потребует больше времени для подачи данных.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...