TF 2.0 случайно избавился от библиотеки contrib
.Поэтому все вкусности, такие как tf.contrib.conv2d
или tf.contrib.layers.variance_scaling_initializer
, пропали.Тем не менее, что, по вашему мнению, было бы наилучшим способом инициализации Xavier в TF2.0 без использования Keras (или инициализации с помощью какого-нибудь наглого хака)?
А именно, я придерживаюсь tf.nn.conv2d
и для этогофункция Я один, предоставляющий веса:
filters = tf.Variable(tf.zeros([3, 3, 32, 64]))
??? # something should happen hear, i guess
net = tf.nn.conv2d(input, filters)
Примечание: На всякий случай, если вы используете первую версию TF, вы можете просто пойти с:
filters = tf.get_variable("w", shape=[3,3, 32, 64],
initializer=tf.contrib.layers.xavier_initializer())
# no tf.contrib in 2.0, no tf.get_variable in 2.0