Convolutional neural network
lastmod 2026-10-11created 2015-10-1551 edits
In machine learning, a convolutional neural network (CNN, or ConvNet) is a type of feed-forward artificial neural network where the individual neurons are tiled in such a way that they respond to overlapping regions in the visual field. Convolutional networks were inspired by biological processes and are variations of multilayer perceptrons which are designed to use minimal amounts of preprocessing. They are widely used models for image and video recognition.
A convolutional neural network is the same as a conventional Neural network. The difference is that it uses Convolution to extract meaningful features.
Introduce
You have a set of images and labels saying whether each image contains a person or not. Your goal is to guess, given an image, whether there is a person in it. The basic approach would be to extract SIFT features and apply a classification model, but the accuracy is poor. This is because the features differ when the person is far away, doing a handstand, or close up. If you want to classify this with Deep learning, you can use a convolutional neural network.
Category
Terams
- Filter: the matrix or values used to apply Convolution to the input image.
- Feature map: the data resulting from passing an image through a Convolution filter.
Convolution calculate example
- okdalto/conv_visualizer - Convolution Visualization Project
- TensorFlow and deep learning, without a PhD
- [Recommended] 37. Building the Conv layer of a ConvNet (lec 11-1) <- You need to understand this to understand 1x1 convolution.
Theory_-_convolutional_networks.gif
Think of it like a matrix, as shown below.
Ratsgos_blog_-_CNN_Forward_Pass.png
CNN Backpropagation
- [Recommended] Backpropagation in CNN - ratsgo's blog 1
Average Pooling
By the chain rule of differentiation, the gradient at the current point equals the incoming gradient multiplied by the local gradient. The average is computed by summing all values and dividing by the number of elements. If there are m elements, the local gradient at the Average Pooling point is 1/m.
Ratsgos_blog_-_Average_Pooling_Backpropagation.png
Max Pooling
If pooling is done with the maximum value, backpropagation works as below. That is, the local gradient of the element holding the maximum is 1 and the rest are 0, so the result is obtained by multiplying these by the incoming gradient.
Ratsgos_blog_-_Max_Pooling_Backpropagation.png
CNN
Ratsgos_blog_-_CNN_Backpropagation.png
Layer
It usually consists of several layers and basically has three different kinds of layers.
- Convolution layer: the layer that extracts Convolution features. It extracts meaningful features.
- Polling layer: CNNs are usually applied to images. Because images have too many pixels, the process of sub-sampling to reduce the features is called polling.
- Feedforward layer: applied last, and used for classification with the features coming out of the Convolution and Polling layers. It behaves like an ordinary Neural Network.
A typical CNN is structured as follows.
Convolution layer -> Polling layer -> Convolution layer -> Polling layer -> ... -> Feedforward layer
That is, Convolution layers and Polling layers are used alternately to extract features, and classification is finally done through the Feddforward layer.
Intuitively, think of the Pooling layer as reducing the size of the image. If Convolution features are extracted after reducing the image size, both large and small people from the problem in the example above can be detected. For this reason, Pooling layers and Convolution layers are used alternately, and naturally, the more layers there are, the better the classification performance will be.
Cnn_layer.png
Fully Connected Network
Computing the parameters needed to connect every input layer unit to the hidden layer was feasible, but for somewhat larger, realistic images such as 96*96, Fully Connected is unsuitable.
Locally Connected Network
Connects only the pixels in a nearby region of the input to a hidden layer node.
Vision Layers
- Convolution
- Pooling
- Local Response Normalization (LRN)
- im2col
Models
The following well-known models exist.
Table of Machine learning
Documentation
Bayesian probability
- Bayesian Reasoning and Machine Learning
- http://web4.cs.ucl.ac.uk/staff/D.Barber/pmwiki/pmwiki.php?n=Brml.Online
- http://web4.cs.ucl.ac.uk/staff/D.Barber/textbook/020217.pdf
-
020217_-_Bayesian_Reasoning_and_Machine_Learning.pdf
Deep learning
- ImageNet Classification with Deep Convolutional Neural Networks (AlexNet)
- http://www.cs.toronto.edu/~fritz/absps/imagenet.pdf
- http://papers.nips.cc/paper/4824-imagenet-classification-with-deep-convolutional-neural-networks.pdf
-
ImageNet_Classification_with_Deep_Convolutional_Neural_Networks.pdf - [Korean translation] ImageNet classification using deep convolutional neural networks
-
ImageNet_Classification_with_Deep_Convolutional_Neural_Networks_-_ko.pdf
- Going deeper with convolutions (GoogleNet)
- http://arxiv.org/pdf/1409.4842v1.pdf
-
Going_deeper_with_convolutions.pdf - Translation: GoogleNet
- Feature article: Deep Hypernetwork models (Seoul National University / Byoung-Tak Zhang)
-
Deep_Hypernetwork_models_201508.pdf
- [Mocrosoft] Deep Residual Learning for Image Recognition (Winner ILSVRC2015)
-
Deep_Residual_Learning_for_Image_Recognition(Winner_ILSVRC2015)_Microsoft.pdf
- [Microsoft] Fast R-CNN, Towards Real-Time Object Detection with Region Proposal Networks (Winner ILSVR2015)
-
Fast_R-CNN,Towards_Real-Time_Object_Detection_with_Region_Proposal_Networks(Winner_ILSVR2015)_Microsoft.pdf
- Learning Deconvolution Network for Semantic Segmentation
- http://cvlab.postech.ac.kr/research/deconvnet/
- Deep EXpectation of apparent age from a single image
- https://data.vision.ee.ethz.ch/cvl/rrothe/imdb-wiki/
- Inside-Outside Net: Detecting Objects in Context with Skip Pooling and Recurrent Neural Networks.
-
Inside_outside_net_detecting_objects_in_context_with_skip_pooling_and_recurrent_neural_networks_2015.pdf - A paper on methods for detecting small objects.
- Cho Dae-hyup's blog - Understanding deep learning and TensorFlow for those who gave up on math
- http://bcho.tistory.com/1208
-
Machine_learning_ebooks_-_Machine_learning_for_those_who_abandon_math.pdf
- Densely Connected Convolutional Networks (DenseNets)
- Deep learning CVPR2017 Best Paper Award
- Deep Learning Interviews book: Hundreds of fully solved job interview questions from a wide range of key topics in AI.
- Deep learning interview book
- A collection of practical questions and solutions for master's/PhD students learning machine learning and for job seekers
- A printed copy can be purchased, but the full PDF is freely available
- [Recommended] "2025 Key Terms You Must Know in the AI Era, Seen Through AI Trends and Issues" published by NIA (National Information Society Agency)
- Key terms you must know in the AI era (168p PDF) | GeekNews
- https://www.nia.or.kr/site/nia_kor/ex/bbs/View.do?cbIdx=82618&bcIdx=28928&parentSeq=28928
-
Nia.or.kr_-ai-_2025_terms.pdf
- There Will Be a Scientific Theory of Deep Learning
- There will be a scientific theory of deep learning. | GeekNews
- There Will Be a Scientific Theory of Deep Learning
- A paper arguing that a scientific theory characterizing key properties of deep learning, such as its training process, hidden representations, final weights, and performance, is taking shape
- Presents five lines of research (interpretable idealized settings, tractable limits, simple mathematical laws, hyperparameter theory, universal behavior) as the core evidence
Tutorials
- Getting Started with Deep Learning Properly (author: Takayuki Okatani / translator: Shim Hyo-seop)
-
Deep_Learning_-Takayuki_Okatani-2015-_sample.pdf
- Introductory guide to machine learning - IDG Deep Dive
- http://www.itworld.co.kr/techlibrary/97428
-
IDG_DeepDive_Machine_learning-20160113.pdf
- Understanding Deep Learning (unpublished; 2016-08-22 ver)
-
Understanding_deep_learning_0822.pdf
- Fundamental of Reinforcement Learning
- https://www.gitbook.com/book/dnddnjs/rl/details
-
Fundamental_of_Reinforcement_Learning.pdf - Modulabs - Fundamentals of reinforcement learning
- Deep Learning Papers Reading Roadmap (deep learning papers roadmap)
- https://github.com/songrotek/Deep-Learning-Papers-Reading-Roadmap/blob/master/README.md
-
Deep_Learning_Papers_Reading_Roadmap.md.zip
- [Recommended] Machine Learning-based Web Exception Detection (reference site for the Financial Security Institute project!)
- https://cloudfocus.aliyun.com/Machine-Learning-based-Web-Exception-Detection-89782?spm=a2c1b.a2c1b4.a2c1b4.16.ZSQoEd
-
Machine_Learning-based_Web_Exception_Detection_-Insights_and_Trends-_Alibaba_Cloud_Focus.pdf
- Machine learning basics, parts 1–57 (Miscellaneous explorations - Chamstudy ePaiai : Naver blog)
- http://sams.epaiai.com/220498694383
- Microsoft releases ML for Beginners course
- A 12-week, 24-lesson curriculum created by the MS Azure Clouds Advocates team
- A classic machine learning course using Scikit-learn (deep learning to come in a separate AI course)
- https://github.com/microsoft/ML-For-Beginners
- CS146S: The Modern Software Developer (Korean) | GeekNews
- [Original] CS146S Korean Edition | The Modern Software Developer
- The official Korean version of Stanford's CS146S course
Compress model
- Deep Compression and EIE - Deep Neural Network Model Compression and Efficient Inference Engine
-
Deep_compression_and_EIE_PPT.pdf
- Learning bothWeights and Connections for Efficient Neural Networks
-
Learning_both_weights_and_connections_for_efficient_neural_networks_2015.pdf
Convolutional neural network
- CNN Presentation using Reveal.js.
- Author - me
-
Reveal-ml.tar.gz
- Gradient-Based Learning Applied to Document Recognition
- http://yann.lecun.com/exdb/publis/pdf/lecun-01a.pdf
-
Gradient-Based_Learning_Applied_to_Document_Recognition.pdf
- Visualizing and Understanding Convolutional Neural Networks
- http://arxiv.org/abs/1311.2901
-
1311.2901v3.pdf
- Compressing CNN for Mobile Device (Samsung) - why CNN models need compression etc ...
- [http://mlcenter.postech.ac.kr/files/attach/workshop_fall_2015/삼성전자_김용덕_박사.pdf](http://mlcenter.postech.ac.kr/files/attach/workshop_fall_2015/삼성전자_김용덕_박사.pdf)
-
Samsung_-_Compressing_CNN_for_Mobile_Device.pdf
- Using Filter Banks in Convolutional Neural Networks for Texture Classification
- https://arxiv.org/abs/1601.02919
Deep belief network
- The Applications of Deep Learning on Traffic Identification
-
Us-15-Wang-The-Applications-Of-Deep-Learning-On-Traffic-Identification-wp.pdf - https://www.blackhat.com/docs/us-15/materials/us-15-Wang-The-Applications-Of-Deep-Learning-On-Traffic-Identification-wp.pdf
Deconvolution neural network
- Learning Deconvolution Network for Semantic Segmentation
- http://cvlab.postech.ac.kr/research/deconvnet/
- https://arxiv.org/abs/1505.04366
-
1505.04366.pdf
Segmentation
- Learning to Segment (Facebook Research)
- https://research.fb.com/learning-to-segment/
- DeepMask+SharpMask as well as MultiPathNet.
- Recurrent Instance Segmentation
- https://arxiv.org/abs/1511.08250
-
1511.08250.pdf - Slideshare - Single Shot MultiBox Detector and Recurrent Instance Segmentation
- vid2vid
- https://github.com/NVIDIA/vid2vid
- Pytorch implementation for high-resolution (e.g., 2048x1024) photorealistic video-to-video translation.
- It can be used for turning semantic label maps into photo-realistic videos, synthesizing people talking from edge maps, or generating human motions from poses.
Fire Detection
Organized under Fire Detection#Deep learning based.
Background subtraction
Organized under Background subtraction#Deep learning based.
LSTM
Organized under Long short-term memory.
Learning
- Siamese Neural Networks for One-Shot Image Recognition
- https://jayhey.github.io/deep%20learning/2018/02/06/saimese_network/
- Training a network in deep learning requires a very large amount of training data. One-shot learning overcomes this drawback by training the network so that it can classify even with only one image per label.
NVIDIA AI Developer Newsletter
- [Recommended] AI Can Transform Anyone Into a Professional Dancer
- https://news.developer.nvidia.com/ai-can-transform-anyone-into-a-professional-dancer/
- https://arxiv.org/abs/1808.07371
- Transforming Standard Video Into Slow Motion with AI
- https://news.developer.nvidia.com/transforming-standard-video-into-slow-motion-with-ai/
- NVIDIA SPLATNet Research Paper Wins a Major CVPR 2018 Award
- https://news.developer.nvidia.com/nvidia-splatnet-research-paper-wins-a-major-cvpr-2018-award/
- AI Learns to Play Dota 2 with Human Precision
- https://news.developer.nvidia.com/ai-learns-to-play-dota-2-with-human-precision/
- [Recommended] This AI Can Automatically Remove the Background from a Photo
- https://news.developer.nvidia.com/this-ai-can-automatically-remove-the-background-from-a-photo/
- NVDLA Deep Learning Inference Compiler is Now Open Source
- https://devblogs.nvidia.com/nvdla/
Nature
- Deep learning of aftershock patterns following large earthquakes
- https://www.reddit.com/r/MachineLearning/comments/9bo9i9/r_deep_learning_of_aftershock_patterns_following/
- https://www.nature.com/articles/s41586-018-0438-y
- https://drive.google.com/file/d/1DSqLgFZLuNJXNi2dyyP_ToIGHj94raWX/view
Cancer
- Deep Neural Networks Improve Radiologists’ Performance in Breast Cancer Screening
- https://medium.com/@jasonphang/deep-neural-networks-improve-radiologists-performance-in-breast-cancer-screening-565eb2bd3c9f
Text Generation
See Text Generation.
See also
- Convolution arithmetic: A technical report on convolution arithmetic in the context of deep learning. (convolution gif generator)
- Vision Transformer
Favorite site
Machine learning
- Wikipedia (en) explanation of machine learning
- Machine Learning - OpenCV machine learning algorithms 2
- UNIVERSITY OF OXFORD: COMPUTER SCIENCE: Machine Learning: 2014-2015 Course materials (University of Oxford machine learning course materials and videos)
- History of machine learning 1
- History of machine learning 2
- Parameter tuning and training
- Team AI Korea : We do Artificial Intelligence
- [Recommended] Mad for Simplicity - Enginius/Machine Learning (lots of machine learning content, neatly organized)
- [Recommended] HUB-AI - AI STUDY (lots of AI study materials)
- How a professional programmer who gave up on math can start studying machine learning
- A look at basic math for machine learning by mingrammer
- [Recommended] Browse state-of-the-art
- [Recommended] Artificial Intelligence (AI) & Machine Learning (ML) Dictionary - WikiDocs
E-book
- [Recommended] 15 recommended free textbooks on robotics and machine learning/AI
- The Element of Statistical Learning: Data Mining, Inference, and Prediction – T. Hastie, R. Tibshirani, J. Friedman (2009)
- Introduction to Machine Learning – A. Shashua (2008)
- Deep Learning – An MIT Press book in preparation - Y. Bengio (2015)
- Learning Deep Architectures for AI – Y. Bengio (2009)
- Gaussian Process for Machine Learning – C. Rasmussen, C. Williams
- Reinforcement Learning – C. Weber, M. Elshaw, N. Mayer (2008)
- Reinforcement Learning: An Introduction – R. Sutton, A. Barto (1998)
- Bayesian Reasoning and Machine Learning – D. Barber (2014)
Data analysis
Artificial neural network
- Wikipedia (en) explanation of artificial neural networks
- Neural networks - Data Mining 3
- Sigmoid Function of Artificial neural network 4
- [Recommended] Neural network theory : Oh Chang-seok 5 (includes explanations of several activation functions (Activation function))
- MLWiki (will mainly explain neural networks, including Deep Learning)
- Study/Artificial Intelligence: Artificial Neural Network
- A Neural Network in 11 lines of Python (Part 1) (writes a Neural Network directly in Python code)
Convolutional neural network
- Wikipedia (en) explanation of CNN
- LeNet-5, convolutional neural networks
- TensorFlow - (5) MNIST - CNN
- [Recommended] VGG Convolutional Neural Networks Practical 6 (an example that works through a CNN step by step)
- Convolutional Neural Networks (formulas for Convolutional, Max-Pooling, Fully-Connected and Backpropagation)
- SlideShare: Backpropagation in Convolutional Neural Network
- Songorithm ML : Middle Learning = Shallow + Deep Machine Learning
Segmentation
- [Recommended] A LOOK AT IMAGE SEGMENTATION USING CNNS 10 (CNN)
Deep learning
- Wikipedia (en) explanation of deep learning
- Deep learning tutorial for beginners
- Korean dependency parsing using deep learning
- Deep Learning, let's take a quick look
- Welcome to Deep Learning
Deep learning libraries
- Wikipedia (en) Comparison of deep learning software
- Deep Learning Comp Sheet: Deeplearning4j vs. Torch vs. Theano vs. Caffe vs. TensorFlow
- Which Deep Learning Library should I choose?
- [Recommended] Evaluation of Deep Learning Toolkits
Andrew Ng
- [Recommended] Coursera - Machine Learning - Stanford - by Andrew Ng 1415
Machine Learning Exercises In Python
- Part 1 - Simple Linear Regression 19
- Part 2 - Multivariate Linear Regression 20
- Part 3 - Logistic Regression 21
- Part 4 - Multivariate Logistic Regression 22
- Part 5 - Neural Networks 23
- Part 6 - Support Vector Machines 24
- Part 7 - K-Means Clustering & PCA 25
- Part 8 - Anomaly Detection & Recommendation 26
Guides
- Deeplearning4j #2 example MNIST
- Classifying MNIST digits using Logistic Regression
- Deep Learning
- Samsung Software Membership: Artificial Neural Network #1 (a simple Neuron implementation in C++ code)27
- Samsung Software Membership: Artificial Neural Network #2 (a simple Feedforward neural network implementation in C++ code) 28
- Number plate recognition with Tensorflow (car license plate recognition)
- [Recommended] GPU: how much faster than CPU? 29 (compares forward time on GPU and CPU for well-known deep learning model architectures)
Tutorials
- WikiDocs - Deep Learning theory and practice (under revision)
- [Recommended] WikiDocs - Machine Learning lecture notes
- [Recommended] Gihub - 1ambda - Data Analysis 30
- UFLDL Tutorial (Unsupervised Feature Learning and Deep Learning)
- opentutorials - Machine learning
- [Recommended] GitBook - leonardoaraujosantos > Artificial Inteligence 31
- [Recommended] Other posts in the 'Machine learning_Prof. Sung Kim' category
- [Recommended] 170915 Tensorflow seminar: from deep learning theory to practice - POSTECH 32
- A page summarizing the prerequisites for understanding Reinforcement Learning
- [Recommended] Neural Networks : Zero to Hero - coding neural network development from scratch | GeekNews
- A neural network development course by Andrej Karpathy, former head of AI at Tesla
- Starts from the basics of backpropagation and goes all the way to developing deep neural networks like the latest GPT
- Language models are a good way to learn deep learning. Most of what you learn applies immediately even if you later expand to areas like computer vision
- [Original] Neural Networks: Zero To Hero
- [Original] aie-book/resources.md at main · chiphuyen/aie-book
- A curated selection of the most helpful items from the 1,200+ links and 1,000+ AI GitHub repos Chip Huyen consulted while writing the book "AI Engineering"
Data pool
- Fueling the Gold Rush: The Greatest Public Datasets for AI 33 (a collection of datasets for AI!)
Service
- Aifiddle - Design, Train & Share AI Models from your browser (lets you easily assemble deep learning models in the browser)
- PlayGround - Tinker With a Neural Network Right Here in Your Browser. Don’t Worry, You Can’t Break It. We Promise (visualizes graphs of data passing between the model's layers)
- DeepL Translate: The world's most accurate translator
- A tool from the search engine Kagi that "generates summaries of anything on the web"
- Universal Summarizer - summarizes everything for you | GeekNews
Sample images useful for proposal drafts
- [https://www.google.com/imgres?imgurl=https%3A%2F%2Fd3i71xaburhd42.cloudfront.net%2F791a9a8d8fe3110985211b3256b67c0e979fdf8a%2F2-Figure1-1.png&imgrefurl=https%3A%2F%2Fwww.semanticscholar.org%2Fpaper%2FImage-Sequences-Based-Traffic-Incident-Detection-Zou-Shi%2F791a9a8d8fe3110985211b3256b67c0e979fdf8a%2Ffigure%2F0&tbnid=U1aALMVaNKcjhM&vet=10CBAQxiAoAWoXChMImOranIz17gIVAAAAAB0AAAAAECg..i&docid=jy0zapjJfnlb9M&w=564&h=426&itg=1&q=Person%20Tracking%20&client=firefox-b-d&ved=0CBAQxiAoAWoXChMImOranIz17gIVAAAAAB0AAAAAECg#imgrc=zFEtt7J5NRRniM&imgdii=IsNk3wEGRScDPM Google Image Search] - samples of car object detection at intersections
Online demo
References
-
Ratsgos_blog_-Deep_Learning-_CNN_backpropagation.pdf ↩
-
Machine_Learning_-_OpenCV_ML_algorithms.pdf ↩
-
S1_nn.pdf ↩
-
Sigmoid_Function_of_Artificial_Neural_Network.pdf ↩
-
Aistudy.co.kr_-_theory_oh.pdf ↩
-
VGG_Convolutional_Neural_Networks_Practical.pdf ↩
-
ConvNets_24_April.pdf ↩
-
Forward_and_Backward_Propagation_of_the_Convolutional_Layer.pdf ↩
-
The_easiest_way_to_understand_CNN_backpropagation.pdf ↩
-
A_Look_at_Image_Segmentation_using_CNNs_–_Mohit_Jain.pdf ↩
-
Artificial_Intelligence_6-Deep_Learning.pdf ↩
-
The_Devil_is_always_in_the_Details_-_Must_Know_Tips_and_Tricks_in_DNNs.pdf ↩
-
Openresearch.ai-190921.zip ↩
-
Stanford-machine_learning-andrew_ng-lectures.tar.gz ↩
-
SanghyukChun.github.io-006e2ae.tar.gz ↩
-
1ambda.github.io-19962c5.tar.gz ↩
-
Machine_Learning_Exercises_In_Python_-_Part_1.pdf ↩
-
Machine_Learning_Exercises_In_Python_-_Part_2.pdf ↩
-
Machine_Learning_Exercises_In_Python_-_Part_3.pdf ↩
-
Machine_Learning_Exercises_In_Python_-_Part_4.pdf ↩
-
Machine_Learning_Exercises_In_Python_-_Part_5.pdf ↩
-
Machine_Learning_Exercises_In_Python_-_Part_6.pdf ↩
-
Machine_Learning_Exercises_In_Python_-_Part_7.pdf ↩
-
Machine_Learning_Exercises_In_Python_-_Part_8.pdf ↩
-
Samsung_software_membership_-_Neural_network_01.pdf ↩
-
Samsung_software_membership_-_Neural_network_02.pdf ↩
-
GPU_-how_much_faster_than_CPU-_NeoBrain.pdf ↩
-
1ambda.github.io-master-5c58cab.zip ↩
-
Gitbook_-leonardoaraujosantos-_artificial-inteligence.pdf ↩
-
170915_Tensorflow_Seminar_From_Deep_Learning_Theory_to_Practice_-_POSTECH.pdf ↩
-
Fueling_the_Gold_Rush_-The_Greatest_Public_Datasets_for_AI-Startup_Grind-_Medium.pdf ↩
- 3DSegmentation:Basic
- Artificial neural network
- Backpropagation
- ClaudeCode:HtmlGallery
- CNN Explainer
- Convolution
- ConvolutionalNeuralNetwork:Example
- Cv2.filter2D
- Deep learning
- Dehazing
- Fully Convolutional Networks for Semantic Segmentation
- Generative Adversarial Networks
- Image segmentation
- Learning Deconvolution Network for Semantic Segmentation
- Machine learning
- MachineLearning:Tutorials
- Object Recognition
- One by One Convolution
- Regions with Convolutional Neural Network
- Reveal.js
- Traffic Signs Recognition
- Vision Transformer