Answers.Body: <p>Keeping the same channel size allows the model to maintain rank but i would say the main reason is convenience. Its easier book keeping.</p>
  
  <p>Also in many model cases output features need some form of alignment with the input (example being all models using residual units -- <span class="math-container">$\hat{x} = F(x) + x$</span> </p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2019-06-10T17:11:21.153Z
Answers.Text: What do you mean by "rank" in this context? It is also not clear the question because the depth of the input and output volumes are usually different.
Answers.UserDisplayName: nbro
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2019-06-10T17:54:47.610Z
Answers.Text: also good point about alignment because GPU and CPU vector ops need this
Answers.UserDisplayName: user8426627
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2019-06-10T16:14:20.947Z
Answers.LastActivityDate: 2019-06-10T16:14:20.947Z
Answers.UserDisplayName: mshlis
Body: <p>Here's the famous VGG-16 model.</p>
  <p><a href="https://i.sstatic.net/Wgf0y.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/Wgf0y.png" alt="VGG16" /></a></p>
  <p>Do the inputs and outputs of a convolutional layer, before pooling, usually have the same depth?  What's the reason for that?</p>
  <p>Is there a theory or paper trying to explain this kind of setting?</p>
  
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2020-07-04T20:32:31.787Z
Comments.Text: I edited this post in order to save it. It wasn't clear what you meant by "input/output channels". To answer what I think is your question: no, the depth of the inputs and outputs of a convolutional layer are not typically the same.
Comments.UserDisplayName: nbro
Tags: <neural-networks><convolutional-neural-networks><convolution><convolutional-layers>
Title: Why do the inputs and outputs of a convolutional layer usually have the same depth?
UserDisplayName: Captain Tomato
ThreadText: # Why do the inputs and outputs of a convolutional layer usually have the same depth?
  
  (Asked by: username_0 on 2019-06-10)
  
  Here's the famous VGG-16 model.
  
  [![VGG16](https://i.sstatic.net/Wgf0y.png)](https://i.sstatic.net/Wgf0y.png)
  
  Do the inputs and outputs of a convolutional layer, before pooling, usually have the same depth? What's the reason for that?
  
  Is there a theory or paper trying to explain this kind of setting?
  
  **Tags:** neural-networks, convolutional-neural-networks, convolution, convolutional-layers
  > **Comments:**
  > **username_1**: I edited this post in order to save it. It wasn't clear what you meant by "input/output channels". To answer what I think is your question: no, the depth of the inputs and outputs of a convolutional layer are not typically the same.  
  
  ---
  
  ## 1 answers
  
  ### Answer by username_2 on 2019-06-10. Score: -1
  
  Keeping the same channel size allows the model to maintain rank but i would say the main reason is convenience. Its easier book keeping.
  
  Also in many model cases output features need some form of alignment with the input (example being all models using residual units -- $\hat{x} = F(x) + x$
  
  > **Comments:**
  > **username_1**: What do you mean by "rank" in this context? It is also not clear the question because the depth of the input and output volumes are usually different.  
  > **username_3**: also good point about alignment because GPU and CPU vector ops need this  
  
  ---
  
  