Convolutional Neural Networks
A Convolutional Neural Network (CNN) is a feedforward neural network that utilizes filters to select which features are relevant during learning and which are not. CNN’s were designed to resolve problems with the Curse of Dimensionality that traditional fully connected neural networks faced by using filters to perform feature engineering, thus reducing the dimensions. While there are many implementations of CNN’s, they always have a convolutional filter (kernel) layer, and often have regularization built into them as well. They have seen extensive use in industry with regards to image and video or for computer vision problems.
Code Examples
All of the code examples are written in Python, unless otherwise noted. |
Containers
These are code examples in the form of Jupyter notebooks running in a container that come with all the data, libraries, and code you’ll need to run it. Click here to learn why you should be using containers, along with how to do so. |
Quickstart: Download Docker, then run the commands below in a terminal. |
Computer Vision Image Toolkit
An introductory notebook showing how to implement many different types of image processing. Towards the end of this notebook there is an example of different kinds of filters, along with a demonstration of how convolution kernels work.
#pull container, only needs to be run once
docker pull ghcr.io/thedatamine/starter-guides:cv-image-toolkit
#run container
docker run -p 8888:8888 -it ghcr.io/thedatamine/starter-guides:cv-image-toolkit
Convolutional Neural Networks, Anomaly Identification, and Reading TFRecords
Here we explore using Convolutional Neural Networks (CNN’s) to classify images of concrete by their anomaly status (that is, whether they have a crack or not). Our data is supplied in the form of TFRecords, so we look at how to read those in for training and testing.
#pull container, only needs to be run once
docker pull ghcr.io/thedatamine/starter-guides:cnn-anomaly-reading-tfrecords
#run container
docker run -p 8888:8888 -it ghcr.io/thedatamine/starter-guides:cnn-anomaly-reading-tfrecords
Need help implementing any of this code? Feel free to reach out to datamine-help@purdue.edu and we can help!