title: Determining the values of the filter matrices in a CNN
body: <p>I am getting started with deep learning and have a basic question on CNN's.
  I understand how gradients are adjusted using backpropagation according to a loss function.
  But I thought the values of the convolving filter matrices (in CNN's) needs to be determined by us.</p>
  
  <p>I'm using Keras and this is how (from a tutorial) the convolution layer was defined:</p>
  
  <pre><code>classifier = Sequential()
  classifier.add(Conv2D(32, (3, 3), input_shape = (64, 64, 3), activation = 'relu'))
  </code></pre>
  
  <p>There are 32 filter matrices with dimensions 3x3 is used. </p>
  
  <p>But, how are the values for these 32x3x3 matrices are determined?</p>