tf.layers.conv2d
을 사용할 때 이니셜 라이저 설정은 쉽습니다. 매개 변수를 통해 수행 할 수 있습니다. 하지만 tf.nn.conv2d
을 사용하면 어떻게 될까요? 나는이 코드를 사용한다. 이것은 kernel_initializer
매개 변수를 tf.layers.conv2d
에 설정하는 것과 동일합니까? 프로그램이 오류없이 실행 되더라도 예상 한대로 작동하는지 확인하는 방법을 알지 못합니다.tf.nn.conv2d와 함께 가중치 초기화 프로그램 사용
with tf.name_scope('conv1_2') as scope:
kernel = tf.get_variable(initializer=tf.contrib.layers.xavier_initializer(),
shape=[3, 3, 32, 32], name='weights')
conv = tf.nn.conv2d(conv1_1, kernel, [1, 1, 1, 1], padding='SAME')
biases = tf.Variable(tf.constant(0.0, shape=[32], dtype=tf.float32),
trainable=True, name='biases')
out = tf.nn.bias_add(conv, biases)
self.conv1_2 = tf.nn.relu(out, name=scope)
self.parameters += [kernel, biases]