Answers.Body: <p>The convolutional aspect of a CNN comes purely from the connections between layers. Instead of a fully-connected network, which can be difficult to train and tends to overfit more, the convolutional network utilizes hierarchical patterns in the data to limit the number of connections - a local edge detection feature in an image analysis network, for example, only needs input from a small number of local pixels, not the entire image. But in principle, you could assign weights to a fully-connected network to perfectly mimic a convolutional one - you just set the weights of the unneeded connections to zero. Because a general ANN has all the connections present in a CNN plus more, it can do anything a CNN can do plus more, although the training can be more difficult.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2020-06-11T18:45:19.707Z
Answers.Text: Might be worth showing with an example, just how crazy the numbers get if you try to do this with a typical small image size and multi-layer CNN. It really demonstrates how efficient CNN approach is
Answers.UserDisplayName: Neil Slater
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2020-06-12T02:29:49.203Z
Answers.Text: Yeah I agree with @NeilSlater, I didn't quite get the "utilizing of hierarchical patterns" part of the answer. Can you please explain that part in brief with an example?
Answers.UserDisplayName: Shrijit Basak
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2020-06-11T16:47:03.603Z
Answers.LastActivityDate: 2020-06-11T16:47:03.603Z
Answers.UserDisplayName: Nuclear Hoagie
Answers.Body: <p>It can be argued that CNN will outperform a fully connected network if they have the same structure (number of neurons).</p>
  
  <p>Normal neural networks can probably learn to detect things like CNNs, but the task would be a lot more computationally expensive. In a CNN, all neurons in a feature maps share the same parameters, so if CNN learns to recognize a pattern in one location, it can detect the pattern in any other location. Furthermore, CNNs take into account the fact that pixels that are closer in proximity with each other are more heavily related than the pixels that are further apart, this information is lost in a Normal neural network.</p>
  
  <p>Read More <a href="https://towardsdatascience.com/cnn-vs-fully-connected-network-for-image-processing-8c5b95d4e42f" rel="nofollow noreferrer">here</a>.</p>
  
Answers.ContentLicense: CC BY-SA 4.0
Answers.CreationDate: 2020-06-12T07:59:24.990Z
Answers.LastActivityDate: 2020-06-12T07:59:24.990Z
Answers.UserDisplayName: felix95
Body: <p>When I was learning about neural networks, I saw that a complex neural network can understand the MNIST dataset and a simple convolution network can also understand the same. So I would like to know if we can achieve a CNN's functionality with just using a simple neural network without the convolution layer and if we can then how to convert a CNN into an ANN. </p>
  
Tags: <neural-networks><convolutional-neural-networks><comparison><feedforward-neural-networks>
Title: Can we achieve what a CNN can do with just a normal neural network?
UserDisplayName: Shrijit Basak
ThreadText: # Can we achieve what a CNN can do with just a normal neural network?
  
  (Asked by: username_0 on 2020-06-11)
  
  When I was learning about neural networks, I saw that a complex neural network can understand the MNIST dataset and a simple convolution network can also understand the same. So I would like to know if we can achieve a CNN's functionality with just using a simple neural network without the convolution layer and if we can then how to convert a CNN into an ANN.
  
  **Tags:** neural-networks, convolutional-neural-networks, comparison, feedforward-neural-networks
  
  
  ---
  
  ## 2 answers
  
  ### Answer by username_1 on 2020-06-11. Score: 1
  
  The convolutional aspect of a CNN comes purely from the connections between layers. Instead of a fully-connected network, which can be difficult to train and tends to overfit more, the convolutional network utilizes hierarchical patterns in the data to limit the number of connections - a local edge detection feature in an image analysis network, for example, only needs input from a small number of local pixels, not the entire image. But in principle, you could assign weights to a fully-connected network to perfectly mimic a convolutional one - you just set the weights of the unneeded connections to zero. Because a general ANN has all the connections present in a CNN plus more, it can do anything a CNN can do plus more, although the training can be more difficult.
  
  > **Comments:**
  > **username_2**: Might be worth showing with an example, just how crazy the numbers get if you try to do this with a typical small image size and multi-layer CNN. It really demonstrates how efficient CNN approach is  
  > **username_0**: Yeah I agree with @username_2, I didn't quite get the "utilizing of hierarchical patterns" part of the answer. Can you please explain that part in brief with an example?  
  
  ---
  
  ### Answer by username_3 on 2020-06-12. Score: 0
  
  It can be argued that CNN will outperform a fully connected network if they have the same structure (number of neurons).
  
  Normal neural networks can probably learn to detect things like CNNs, but the task would be a lot more computationally expensive. In a CNN, all neurons in a feature maps share the same parameters, so if CNN learns to recognize a pattern in one location, it can detect the pattern in any other location. Furthermore, CNNs take into account the fact that pixels that are closer in proximity with each other are more heavily related than the pixels that are further apart, this information is lost in a Normal neural network.
  
  Read More [here](https://towardsdatascience.com/cnn-vs-fully-connected-network-for-image-processing-8c5b95d4e42f).
  
  
  ---
  
  