Инициализировать тензоры с тензорами в тензорном потоке 1 - PullRequest
0 голосов
/ 27 апреля 2020

Я хочу инициализировать переменную, объявленную с использованием функции get_variable, с 1 с. Я попробовал следующие методы:

1. tf.get_variable(name = 'yd1', shape = shape_t, dtype = tf.float32,initializer = tf.ones())

Ошибка получена -> Ошибка типа: ones () принимает по крайней мере 1 аргумент (задано 0)

tf.get_variable(name = 'yd1', shape = shape_t ,dtype = tf.float32,initializer = tf.ones(shape=shape_t))

Ошибка получена -> ValueError («Если инициализатор является константой, не указывайте фигуру.»)

Как лучше всего инициализировать переменную с теми? tf.zeros_initializer можно использовать для инициализации с 0, но в tf 1

эквивалентов для них нет.

Ответы [ 2 ]

0 голосов
/ 27 апреля 2020

tf.ones_initializer недоступен в tf 1, он был введен в tf 2.

Следующий код работает

tf.get_variable(name = 'yd1', shape = shape_t ,dtype = tf.float32,initializer = tf.constant_initializer(1))
0 голосов
/ 27 апреля 2020

Вам нужно использовать tf.ones_initializer:

tf.get_variable(name='yd1', shape=shape_t, dtype=tf.float32,
                initializer=tf.ones_initializer())

В качестве альтернативы, как говорится во втором сообщении об ошибке, вы можете использовать постоянное значение, но затем не передавать форму:

tf.get_variable(name='yd1', initializer=tf.ones(shape=shape_t, dtype=tf.float32))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...