I. Introduction
When facing an image classification problem with only a small dataset of training images, using a pre-trained convolutional neural network (CNN) to initialize the feature weights before fine-tuning on the data becomes an attractive option. The motivation for the project came from this scenario, where a group working to digitize a seminal work on landscape architecture approached the authors to build a machine learning model to classify landscape images using the approximately 600 images in the book as training data. Working with a highly specialized dataset led to concerns about the easily available pre-trained models (trained on ImageNet) and their efficacy on the dataset. An alternate dataset (Places365) was sought to see how models trained on it compared in their final layers after being fine-tuned on our data. Feature visualization arose as a way to explore how the layers of the CNN were activated as a result of training. Feature visualization is a field concerned with creating semantically intelligible representations of a neural network’s learned weights. Past work has applied feature visualization techniques to analyze the transfer learning process. Here we applied the same techniques to understand how the training data itself affects that process. CNNs appear to learn increasingly task-specific representations at each successive layer. Therefore, we hypothesized that the two networks would behave most similarly at the shallowest layers and then diverge relative to depth. In the next section we discuss the research that informs this project.