πŸ•ΈοΈ
Deep Learning
  • πŸ’«Deep Learning Notes
  • πŸ’ΌPractical Tools
  • πŸ’ŽConcepts of Neural Networks
    • 🌱Introduction
    • πŸ”ŽThe Problem in General
    • πŸ‘·β€β™€οΈ Implementation Notes
    • πŸ“šCommon Concepts
    • πŸ’₯Activation Functions
    • 🎈Practical Aspects
    • πŸ‘©β€πŸ”§ NN Regularization
    • ✨Optimization Algorithms
    • 🎨Softmax Regression
    • πŸƒβ€β™€οΈ Introduction to Tensorflow
    • πŸ‘©β€πŸ’» Python Code Snippets
  • πŸ™‹β€β™€οΈ Hello World of Deep Learning with Neural Networks
    • 🌱Introduction
    • 🌐CNNs In Browser
  • πŸšͺIntroduction to Computer Vision
    • 🌱Introduction
  • 🚩Concepts of Convolutional Neural Networks
    • 🌱Introduction
    • πŸ“ŒCommon Concepts
    • 🌟Advanced Concepts
    • πŸ‘€Visualization
    • πŸ‘΅Classic Networks
    • ✨Other Approaches
    • πŸ•ΈοΈCommon Applications
  • πŸ‘©β€πŸ’» Works and Notes on CNNs
    • 🌱Introduction
  • πŸ’„Popular Strategies of Deep Learning
    • 🌱Introduction
    • πŸš™Transfer Learning
    • πŸ“šOther Strategies
  • 🀑Image Augmentation
    • 🌱Introduction
  • πŸ€Έβ€β™€οΈ Notes on Applied Machine Learning
    • 🌱Introduction
    • πŸ‘©β€πŸ”§ Notes on Structuring Machine Learning Projects
    • πŸ‘©β€πŸ« Implementation Guidelines
  • πŸ•΅οΈβ€β™€οΈ Basics of Object Detection
    • 🌱Introduction
    • β­•Region-Based CNNs
    • 🀳SSD and YOLO
    • πŸ€–TensorFlow Object Detection API
    • 🐞Model Debugging
  • ➰Sequence Models In Deep Learning
    • 🌱Introduction
    • πŸ“šGeneral Concepts
    • πŸ”„Recurrent Neural Networks
    • 🌌Vanishing Gradients with RNNs
    • 🌚Word Representation
    • πŸ’¬Mixed Info On NLP
  • πŸ’¬NLP
    • 🌱Introduction
  • πŸ’¬Applied NLP
    • πŸ™ŒπŸ» Handling texts
    • 🧩Regex
  • πŸ‘€Quick Visual Info
  • πŸ“šPDFs that I found and recommend
Powered by GitBook
On this page
  • πŸ“š Important Terms
  • πŸŽ€ Convolution Example
  • πŸ‘Ό Visualization of Calculation
  • πŸ”Ž Edge Detection
  • πŸ”Ž Edge Detection Examples
  • πŸ™„ What About The Other Numbers
  • ✨ Another Approach
  • πŸ€Έβ€β™€οΈ Computational Details
  • 😐 Downsides
  • πŸ’‘ Solution
  • 🧐 References

Was this helpful?

Export as PDF
  1. Concepts of Convolutional Neural Networks

Common Concepts

PreviousIntroductionNextAdvanced Concepts

Last updated 4 years ago

Was this helpful?

πŸ“š Important Terms

Term

Description

Convolution

Applying some filter on an image so certain features in the image get emphasized

πŸŽ€ Convolution Example

πŸ€” How did we find -7?

We did element wise product then we get the sum of the result matrix; so:

3*1 + 1*0 + 1*(-1)
+
1*1 + 0*0 + 7*(-1)
+
2*1 + 3*0 + 5*(-1)
=
-7

And so on for other elements πŸ™ƒ

πŸ‘Ό Visualization of Calculation

πŸ”Ž Edge Detection

An application of convolution operation

πŸ”Ž Edge Detection Examples

Result: horizontal lines pop out

Result: vertical lines pop out

πŸ™„ What About The Other Numbers

There are a lot of ways we can put number inside elements of the filter.

For example Sobel filter is like:

1   0   -1
2   0   -2
1   0   -1

Scharr filter is like:

3    0   -3
10   0   -10
3    0   -3

Prewitt filter is like:

-1   0   1
-1   0   1
-1   0   1

So the point here is to pay attention to the middle row

And Roberts filter is like:

1    0
0   -1

✨ Another Approach

We can tune these numbers by ML approach; we can say that the filter is a group of weights that:

w1    w2   w3
w4    w5   w6
w7    w8   w9

By that we can get -learned- horizontal, vertical, angled, or any edge type automatically rather than getting them by hand.

πŸ€Έβ€β™€οΈ Computational Details

If we have an n*n image and we convolve it by f*f filter the the output image will be n-f+1*n-f+1

😐 Downsides

  1. πŸŒ€ If we apply many filters then our image shrinks.

  2. 🀨 Pixels at corners aren't being touched enough, so we are throwing away a lot of information from the edges of the image .

πŸ’‘ Solution

We can pad the image πŸ’ͺ

🧐 References

🚩
πŸ“Œ
More on Convolutional Neural Networks