How to Use Test-Time Augmentation to Make Better Predictions

Last Updated on April 3, 2020 Data augmentation is a technique often used to improve performance and reduce generalization error when training neural network models for computer vision problems. The image data augmentation technique can also be applied when making predictions with a fit model in order to allow the model to make predictions for multiple different versions of each image in the test dataset. The predictions on the augmented images can be averaged, which can result in better predictive […]

Read more

How Do Convolutional Layers Work in Deep Learning Neural Networks?

Last Updated on April 17, 2020 Convolutional layers are the major building blocks used in convolutional neural networks. A convolution is the simple application of a filter to an input that results in an activation. Repeated application of the same filter to an input results in a map of activations called a feature map, indicating the locations and strength of a detected feature in an input, such as an image. The innovation of convolutional neural networks is the ability to […]

Read more

A Gentle Introduction to Padding and Stride for Convolutional Neural Networks

Last Updated on August 16, 2019 The convolutional layer in convolutional neural networks systematically applies filters to an input and creates output feature maps. Although the convolutional layer is very simple, it is capable of achieving sophisticated and impressive results. Nevertheless, it can be challenging to develop an intuition for how the shape of the filters impacts the shape of the output feature map and how related configuration hyperparameters such as padding and stride should be configured. In this tutorial, […]

Read more

A Gentle Introduction to Pooling Layers for Convolutional Neural Networks

Last Updated on July 5, 2019 Convolutional layers in a convolutional neural network summarize the presence of features in an input image. A problem with the output feature maps is that they are sensitive to the location of the features in the input. One approach to address this sensitivity is to down sample the feature maps. This has the effect of making the resulting down sampled feature maps more robust to changes in the position of the feature in the […]

Read more

Convolutional Neural Network Model Innovations for Image Classification

Last Updated on July 5, 2019 A Gentle Introduction to the Innovations in LeNet, AlexNet, VGG, Inception, and ResNet Convolutional Neural Networks. Convolutional neural networks are comprised of two very simple elements, namely convolutional layers and pooling layers. Although simple, there are near-infinite ways to arrange these layers for a given computer vision problem. Fortunately, there are both common patterns for configuring these layers and architectural innovations that you can use in order to develop very deep convolutional neural networks. […]

Read more

How to Develop VGG, Inception and ResNet Modules from Scratch in Keras

Last Updated on July 5, 2019 There are discrete architectural elements from milestone models that you can use in the design of your own convolutional neural networks. Specifically, models that have achieved state-of-the-art results for tasks like image classification use discrete architecture elements repeated multiple times, such as the VGG block in the VGG models, the inception module in the GoogLeNet, and the residual module in the ResNet. Once you able to implement parameterized versions of these architecture elements, you […]

Read more

A Gentle Introduction to 1×1 Convolutions to Manage Model Complexity

Last Updated on July 5, 2019 Pooling can be used to down sample the content of feature maps, reducing their width and height whilst maintaining their salient features. A problem with deep convolutional neural networks is that the number of feature maps often increases with the depth of the network. This problem can result in a dramatic increase in the number of parameters and computation required when larger filter sizes are used, such as 5×5 and 7×7. To address this […]

Read more

A Gentle Introduction to the ImageNet Challenge (ILSVRC)

Last Updated on July 5, 2019 The rise in popularity and use of deep learning neural network techniques can be traced back to the innovations in the application of convolutional neural networks to image classification tasks. Some of the most important innovations have sprung from submissions by academics and industry leaders to the ImageNet Large Scale Visual Recognition Challenge, or ILSVRC. The ILSVRC is an annual computer vision competition developed upon a subset of a publicly available computer vision dataset […]

Read more

Best Practices for Preparing and Augmenting Image Data for CNNs

Last Updated on July 5, 2019 It is challenging to know how to best prepare image data when training a convolutional neural network. This involves both scaling the pixel values and use of image data augmentation techniques during both the training and evaluation of the model. Instead of testing a wide range of options, a useful shortcut is to consider the types of data preparation, train-time augmentation, and test-time augmentation used by state-of-the-art models that notably achieve the best performance […]

Read more

How to Visualize Filters and Feature Maps in Convolutional Neural Networks

Last Updated on July 5, 2019 Deep learning neural networks are generally opaque, meaning that although they can make useful and skillful predictions, it is not clear how or why a given prediction was made. Convolutional neural networks, have internal structures that are designed to operate upon two-dimensional image data, and as such preserve the spatial relationships for what was learned by the model. Specifically, the two-dimensional filters learned by the model can be inspected and visualized to discover the […]

Read more
1 860 861 862 863 864 936