Как указать диагональную матрицу с помощью tf.get_variable

Я пытаюсь создать диагональную матрицу, используя tf.get_variable Но я не знаю, как это сделать! Например, я могу создать переменную, которая представляет собой диагональную матрицу, например:

dia_size = tf.zeros((num_filters, img_size))
b = tf.Variable(tf.matrix_diag(dia_size), name=name)
b = tf.reshape(b, [-1, img_size, img_size, num_filters])

но я не могу сделать это с tf.get_variable.

Заранее спасибо за помощь!


person MRM    schedule 22.11.2017    source источник


Ответы (1)


Если вы установите параметр initializer для tf.get_variable на тензор, переменная будет инициализирована значением тензора. Поэтому вы можете использовать следующий код:

dia_size = tf.zeros((num_filters, img_size))
b = tf.matrix_diag(dia_size)
var = tf.get_variable(..., initializer=b, ...)
person MatthewScarpino    schedule 22.11.2017