무엇을 기본 커널 이니셜라이저는 tf.레이어입니다.conv2d 및 tf.레이어입니다.밀도가?

공식 Tensorflow API doc 구는 매개변수kernel_initializer기본값None``tf.레이어입니다.conv2dtf.레이어입니다.밀도.

그러나,독서의 튜토리얼 레이어(https://www.tensorflow.org/tutorials/layers),내가 주목하는 이 매개 변수는지에서 설정 코드입니다. 예를 들어:

# Convolutional Layer #1
conv1 = tf.layers.conv2d(
    inputs=input_layer,
    filters=32,
    kernel_size=[5, 5],
    padding="same",
    activation=tf.nn.relu)

예제 코드에서는 튜토리얼 실행 오류없이,그래서 나는 기본kernel_initializer되지 않은None. 그래서,어떤 이니셜라이저를 이용하시면 됩니다.

다른 코드,내가 설정하지 않은kernel_initializer의 conv2d 와 조밀한 레이어 모든게 좋았습니다. 그러나 때,나는 설정하려고 했는kernel_initializer에서tf.truncated_normal_initializer(표준편차=0.1,dtype=tf.float32),내가 할머니는 오류가 있습니다. 여기에 무슨? 사람이 도움이 될 수 있습니다?

질문에 대한 의견 (1)

좋은 질문입니다! 그것은 매우 트릭 찾을 수 있습니다!

-당신이 볼 수 있듯이,그것은 문서화tf.레이어입니다.conv2d -보면에서 정의 function](https://github.com/tensorflow/tensorflow/blob/master/tensorflow/python/layers/convolutional.py 에)당신이 볼 수 있는 함수 호출variable_scope.get_variable:

에서 코드:

self.kernel = vs.get_variable('kernel',
                                  shape=kernel_shape,
                                  initializer=self.kernel_initializer,
                                  regularizer=self.kernel_regularizer,
                                  trainable=True,
                                  dtype=self.dtype)

다음 단계:무엇 변수 범위를 할 경우 이니셜라이저입니다.

여기에서 그것은 말한다:

는 경우 이니셜라이저는없음(기본값),기본 이니셜라이저에 전달된 생성자를 사용합니다. 는 경우에는 하나는없음으로도,우리가 사용하는 새로운 glorot_uniform_initializer.

그래서 대답이다:그것은 사용glorot_uniform_initializer

에 대한 완성도의 정의 이니셜라이저:

The Glorot 균일한 이니셜라이저,라고도 자비에 균일한 이니셜라이저입니다. 그것은 샘플에서 균일한 배포에서[제한,한계] 여기서제한sqrt(6/(fan_in+fan_out))fan_in번호의 입력 단위에서의 무게 텐서 그리고fan_out번호의 출력 단위에서의 무게 텐서. 참고:http://jmlr.org/proceedings/papers/v9/glorot10a/glorot10a.pdf

편집:이것은 무엇을 발견에 코드 및 설명서가 포함되어 있습니다. 아마도 당신 수 있는지 확인하는 것을 초기화를 다음과 같이 실행하여 eval 무게에!

해설 (1)

에 따라[이 코스](https://www.youtube.com/watch?v=s2coXdufOzE)by Andrew Ng 과자 설명서,사용하는 경우ReLU으로 활성화 기능,더 나은 변화의 기본 무게 이니셜라이저는(자비에 균일)을Xavier 일반by:

y = tf.layers.conv2d(x, kernel_initializer=tf.contrib.layers.xavier_initializer(uniform=False), )
해설 (0)