Когда я должен использовать переменные Tensorflow и когда переменные numpy или python

Я новичок в Tensorflow2.0 и пытаюсь ознакомиться с библиотекой. Я много работал с numpy и заметил, что переменные numpy и tensorflow «совместимы». Но если я использую пустую переменную или объект в тензорном потоке, требуется ли tf каждый раз преобразовывать эту переменную в тензор? Если я работаю с Tensorflow, должен ли я просто инициализировать все как переменную Tf или я должен решить, будет ли он использоваться numpy или tf? Кажется, что многие математические операции также реализованы в tf.math, должен ли я полностью отказаться от операций numpy? Кстати, я не буду использовать Tensorflow для машинного обучения, а в основном Tensorflow Probability для выборки и т. д.


person Pickniclas    schedule 24.07.2019    source источник


Ответы (1)


Вообще говоря, в Tensorflow есть три типа переменных.

  • var = tf.placeholder() определяет заполнитель, который используется для получения и подачи данных о дожде.
  • var = tf.constant() создает постоянный тензор.
  • var = tf.variable() определяет переменную, которую можно обучать. Tensorflow автоматически различает переменные такого типа. Например, веса и смещения нейронной сети должны быть определены с помощью tf.variable().

Переменная Numpy часто используется для инициализации как var = tf.constant(), так и var = tf.variable(). var = tf.placeholder() не нужно инициализировать.

Кстати, вот простое руководство, которое содержит несколько практических примеров и может вам помочь ознакомьтесь с Tensorflow как можно быстрееly.

person guorui    schedule 24.07.2019
comment
Большое спасибо! А как насчет вероятности Tensorflow? Я, вероятно, буду использовать Tensorflow скорее для моделирования Монте-Карло, чем для целей машинного обучения. Нужен ли мне tf.variable() или тогда я буду придерживаться tf.constants? - person Pickniclas; 25.07.2019