An Intuitive Explanation of Convolutional Neural Networks (2016)
1–10 of 24 posts
Re: An Intuitive Explanation of Convolutional Neural Networks (2016)
#2Re: An Intuitive Explanation of Convolutional Neural Networks (2016)
#3Also, how do CNNs draw a box around the target in the image?
Re: An Intuitive Explanation of Convolutional Neural Networks (2016)
#4How do CNNs work when the output is multiple categories? For instance, in the same image is a cat and a dog and a car. What's the architecture look like - multiple CNNs, each that can predict one category? Or does one CNN have multiple outputs and if the score > threshold, add that category to the list shown to the user? Also, how do CNNs draw a box around the target in the image?
In the past, some people did this inefficiently by just sliding a window across the image and using the same classifier you'd use for the first problem. But this is inefficient, and different sizes make it more inefficient. So the best solution is to use an "Object Detection" network, look into SSD or YOLO to see an example of this.
Re: An Intuitive Explanation of Convolutional Neural Networks (2016)
#5Is this just the article's over-simplification or are these values really just randomly selected?
Re: An Intuitive Explanation of Convolutional Neural Networks (2016)
#6This article was very helpful. The animations did wonders to show how the networks iterate.
Of course, andrej karpathys Stanford lecture on the subject is as well.
Re: An Intuitive Explanation of Convolutional Neural Networks (2016)
#7> Parameters like number of filters, filter sizes, architecture of the network etc. have all been fixed before Step 1 and do not change during training process – only the values of the filter matrix and connection weights get updated. Is this just the article's over-simplification or are these values really just randomly selected?
The values in the filter matrices and the weights and biases of the fully connected layers are truly random though. They are often initialized with Gaussian random values. Sometimes they are just initialized as all 1's, or 0's. Again, there's no "right" answer (there is probably research out there that recommends one initialization approach over another). These are the values that are trained using gradient descent.
Re: An Intuitive Explanation of Convolutional Neural Networks (2016)
#8How do CNNs work when the output is multiple categories? For instance, in the same image is a cat and a dog and a car. What's the architecture look like - multiple CNNs, each that can predict one category? Or does one CNN have multiple outputs and if the score > threshold, add that category to the list shown to the user? Also, how do CNNs draw a box around the target in the image?
You can, of course, tell the network to output whatever you want: all of the guesses, best guess, top five guesses, all guesses over a threshold, etc.
Note, this is a gross oversimplification, but it gets the general concept across.
Re: An Intuitive Explanation of Convolutional Neural Networks (2016)
#9How do CNNs work when the output is multiple categories? For instance, in the same image is a cat and a dog and a car. What's the architecture look like - multiple CNNs, each that can predict one category? Or does one CNN have multiple outputs and if the score > threshold, add that category to the list shown to the user? Also, how do CNNs draw a box around the target in the image?
Effectively. That's what a DNN is, ANNs with multiple inference layers each one gives their "highest probability" and then the client/system sets the weight threshold for what is returned.
Re: An Intuitive Explanation of Convolutional Neural Networks (2016)
#10i hit up google scholar occasionally looking for references, but literally everything seems to be applying them to 2D images.