Что такое tensorflow.compat.as_str ()?

В учебнике Google / Udemy Tensorflow приведен следующий код:

import tensorflow as tf ... def read_data(filename): """Extract the first file enclosed in a zip file as a list of words""" with zipfile.ZipFile(filename) as f: data = tf.compat.as_str(f.read(f.namelist()[0])).split() return data 

Это выполняется отлично, но я не могу найти compat.as_str в документации Tensorflow или где-либо еще.

Q1: Что делает compat.as_str ?

Q2: Где-то где-то документирована библиотека consorflow?

Q3: Это вызов библиотеки tensorflow, так как и почему она работает в нормальном коде python, а не внутри графика тензорного потока? Т.е. я думал, что вызовы библиотеки tensorflow должны быть внутри блока дефискации графа тензорного потока:

 graph = tf.Graph() with graph.as_default() ... tensorflow function calls here ... 

Я запускаю python 2.7.

3 Solutions collect form web for “Что такое tensorflow.compat.as_str ()?”

В основном это происходит из-за того, что в Python 2 строки обрабатывались прежде всего как байты, а не unicode.
В Python 3 все строки являются естественными unicode.
Цель этой функции состоит в том, чтобы убедиться, что какая-либо версия Python, которую вы используете, вас не беспокоят, поэтому имя совместимого модуля совместимо.

  1. tf.compat.as_str преобразует ввод в строку

  2. Я не мог найти никакой документации, но вы можете посмотреть исходный код здесь

  3. Tensorflow функционирует как модуль python. Контекст графа используется для определения графика (математических вычислений), который будет использоваться для обучения модели.

типичное использование включает в себя диспетчер контекстов Graph.as_default (), который переопределяет текущий график по умолчанию для срока действия контекса

В текущей версии TF вся группа tf.compat хорошо документирована.

В принципе, некоторые вещи ведут себя по-разному в python 2 и 3 (может быть немного неточно, гуру python могут помочь мне с этим). Python3 использует 64-битные поплавки и 32-битные поплавки python2, также существуют различия по отношению к строкам . Модуль-совместитель пытается вести себя так же (если вы проверите исходный код, вы увидите, что они делают разные вещи в зависимости от того, используете ли вы 2 или 3).


tf.compat.as_str :

Преобразует либо байты, либо unicode в байты, используя кодировку utf-8 для текста.

Это может быть полезно, если вы сохраняете данные в tfrecords и хотите убедиться, что они будут сохранены одинаково, независимо от того, какая версия python используется.

  • Понимание семантики while
  • Ошибка при запуске примера базового тензора
  • Использование 'read_batch_record_features' с оценкой
  • Ошибка TensorFlow в учебнике
  • Как я могу проверить собственное изображение в учебнике Cifar-10 по Tensorflow?
  • Tensorflow, расчет точности мультиметровки
  • Обозначение датчика тензора потока
  • Проблема с подачей списка в feed_dict в TensorFlow
  • Тензорный поток: использование оптимизатора Адама
  • Tensorflow, выделяющий память GPU при использовании tf.device ('/ cpu: 0')
  • Тензорный поток: Отмена (сбрасывание ядра)
  • Python - лучший язык программирования в мире.