Introduction to Convolutional Neural Network (CNN/ConvNET)-insights from amateur George (Tian Zhou)

Slides:



Advertisements
Similar presentations
A brief review of non-neural-network approaches to deep learning
Advertisements

CSC321: 2011 Introduction to Neural Networks and Machine Learning Lecture 7: Learning in recurrent networks Geoffrey Hinton.
ImageNet Classification with Deep Convolutional Neural Networks
Lecture 14 – Neural Networks
Lecture 3: CNN: Back-propagation
Overview of Back Propagation Algorithm
Convolutional Neural Networks for Image Processing with Applications in Mobile Robotics By, Sruthi Moola.
ECE 6504: Deep Learning for Perception Dhruv Batra Virginia Tech Topics: –(Finish) Backprop –Convolutional Neural Nets.
Deep Convolutional Nets
CSC321: 2011 Introduction to Neural Networks and Machine Learning Lecture 6: Applying backpropagation to shape recognition Geoffrey Hinton.
ImageNet Classification with Deep Convolutional Neural Networks Presenter: Weicong Chen.
Neural Networks Lecture 11: Learning in recurrent networks Geoffrey Hinton.
Convolutional Neural Network
Deep Learning Overview Sources: workshop-tutorial-final.pdf
When deep learning meets object detection: Introduction to two technologies: SSD and YOLO Wenchi Ma.
Deeply-Recursive Convolutional Network for Image Super-Resolution
Deep Learning for Dual-Energy X-Ray
Demo.
Convolutional Neural Network
Predicting Visual Search Targets via Eye Tracking Data
The Relationship between Deep Learning and Brain Function
CS 6501: 3D Reconstruction and Understanding Convolutional Neural Networks Connelly Barnes.
Summary of “Efficient Deep Learning for Stereo Matching”
Gradient-based Learning Applied to Document Recognition
Data Mining, Neural Network and Genetic Programming
Computer Science and Engineering, Seoul National University
Lecture 5 Smaller Network: CNN
Neural Networks 2 CS446 Machine Learning.
Convolution Neural Networks
How it Works: Convolutional Neural Networks
Convolutional Networks
CS6890 Deep Learning Weizhen Cai
Machine Learning: The Connectionist
R-CNN region By Ilia Iofedov 11/11/2018 BGU, DNN course 2016.
Non-linear classifiers Neural networks
convolutional neural networkS
Human-level control through deep reinforcement learning
Bird-species Recognition Using Convolutional Neural Network
Introduction to Neural Networks
Image Classification.
convolutional neural networkS
Convolutional Neural Networks
Deep learning Introduction Classes of Deep Learning Networks
Introduction of MATRIX CAPSULES WITH EM ROUTING
Object Classification through Deconvolutional Neural Networks
Very Deep Convolutional Networks for Large-Scale Image Recognition
Smart Robots, Drones, IoT
CSC 578 Neural Networks and Deep Learning
Object Detection Creation from Scratch Samsung R&D Institute Ukraine
Neural Networks Geoff Hulten.
On Convolutional Neural Network
Lecture: Deep Convolutional Neural Networks
Use 3D Convolutional Neural Network to Inspect Solder Ball Defects
Visualizing and Understanding Convolutional Networks
Forward and Backward Max Pooling
Analysis of Trained CNN (Receptive Field & Weights of Network)
Convolutional Neural Networks
Mihir Patel and Nikhil Sardana
ImageNet Classification with Deep Convolutional Neural Networks
CSC 578 Neural Networks and Deep Learning
CSC321: Neural Networks Lecture 11: Learning in recurrent networks
Reuben Feinman Research advised by Brenden Lake
CS295: Modern Systems: Application Case Study Neural Network Accelerator Sang-Woo Jun Spring 2019 Many slides adapted from Hyoukjun Kwon‘s Gatech “Designing.
DRC with Deep Networks Tanmay Lagare, Arpit Jain, Luis Francisco,
VERY DEEP CONVOLUTIONAL NETWORKS FOR LARGE-SCALE IMAGE RECOGNITION
Image recognition.
Debasis Bhattacharya, JD, DBA University of Hawaii Maui College
Example of training and deployment of deep convolutional neural networks. Example of training and deployment of deep convolutional neural networks. During.
CSC 578 Neural Networks and Deep Learning
Principles of Back-Propagation
Presentation transcript:

Introduction to Convolutional Neural Network (CNN/ConvNET)-insights from amateur George (Tian Zhou)

Big Thanks to Brandon’s Presentation Brandon Rohrer http://brohrer.github.io/how_convolutional _neural_networks_work.html https://brohrer.github.io/blog.html

A toy ConvNet: X’s and O’s Says whether a picture is of an X or an O CNN X or O We want to know if a given pixel is x or o. by passing the image through the black box “CNN” and CNN process it and gives a possibility of the prediction.

Convolution Kernal, Filter

Filtering: The math behind the match Line up the filter and the image patch. Multiply each image pixel by the corresponding filter pixel. Add them up. Divide by the total number of pixels in the filter. Move across

Line up the filter and the image patch. 1 x 1 = 1 Line up the filter and the image patch. Multiply each image pixel by the corresponding filter pixel. Add them up. Divide by the total number of pixels in the filter. Move across

1+1+1+1+1+1+1+1+1 9 =1

1+1−1+1+1+1−1+1+1 9 =.55 .55

Convolution: Trying every possible match

Convolution: Trying every possible match =

= = =

Convolution layer One image becomes a stack of filtered images (image feature is captured) First define three kernels and pass the image through the kernel to get a filtered picture (image feature is captured.).

Pooling Layer: Reduce the size of image Pick a window size (usually 2 or 3). Pick a stride (usually 2). Walk window across filtered images. From each window, take the maximum value. max pooling maximum

Pooling layer A stack of images becomes a stack of smaller images.

Rectified Linear Units (ReLUs) -Tuning maths A stack of images becomes a stack of images with no negative values.

Stacking Layers can be repeated several times. To achieve decent amount of “predictors” Convolution ReLU Pooling

X O 𝑥 1 𝑤 1 𝑤 2 𝑥 2 𝑤 3 𝑥 3 Σ Output Fully connected layer 𝑓(𝑥) Every value gets a vote, Vote depends on how strongly a value predicts X or O 𝑤 1 X 𝑤 2 𝑤 3 … 𝑤 12 O

X O

Fully connected layer of unknown image X .92 O .51

Putting it all together A set of pixels becomes a set of votes. .92 X O connected Fully connected Fully Convolution ReLU Convolution ReLU Pooling Convolution ReLU Pooling .51

Backpropagation .92 Error = right answer – actual answer X O CNN .51

Minimizing error For each feature pixel and voting weight, adjust it up and down a bit and see how the error changes. error weight

Decisions for CNN designers For each convolution layer, How many filter? How many pixels in each filter? For each pooling layer, What window size? What stride?

References Brandon Rohrer, http://brohrer.github.io/how_convolutional_neural_networks_work.html Gu, J., Wang, Z., Kuen, J., Ma, L., Shahroudy, A., Shuai, B., Liu, T., Wang, X., Wang, G., 2015. Recent advances in convolutional neural networks. arXiv:1512.07108. "Convolutional Neural Networks (LeNet) – DeepLearning 0.1 documentation". DeepLearning 0.1. LISA Lab. Hubel, D. and Wiesel, T. (1968). Receptive fields and functional architecture of monkey striate cortex. Journal of Physiology (London), 195, 215–243