title: What is the difference between xavier_initializer and xavier_initializer_conv2d?
body: <p>I noticed that TensorFlow 1.0 contains two Xavier initalization helpers in contrib,</p>
  
  <ul>
  <li><a href="https://www.tensorflow.org/api_docs/python/tf/contrib/layers/xavier_initializer" rel="noreferrer">tf.contrib.layers.xavier_initializer()</a> and</li>
  <li><a href="https://www.tensorflow.org/api_docs/python/tf/contrib/layers/xavier_initializer" rel="noreferrer">tf.contrib.layers.xavier_initializer_conv2d()</a></li>
  </ul>
  
  <p>Both link to the same documentation page and have the same signature:</p>
  
  <pre><code>tf.contrib.layers.xavier_initializer(uniform=True, seed=None, dtype=tf.float32)
  tf.contrib.layers.xavier_initializer_conv2d(uniform=True, seed=None, dtype=tf.float32)
  </code></pre>
  
  <p>however the difference between them is not explained at all. I can guess by the name that the <code>_conv2d</code> version should be used for 2D convolutional layers, but would it have a noticeable impact if one were to use the regular version?</p>