Title: Building Deep Learning Architectures to Understand Building Architecture Styles
Authors: Caroline Ho & Cole Thomson {cho19, colet}@stanford.edu
Course: CS 230 – Deep Learning
- PyTorch and libraries: Anaconda Python distribution
- Dataset: Xu et al. 25-class architecture dataset
This notebook uses transfer learning to classify images of buildings by architectural style.
Best Results: After pretraining a DenseNet on ImageNet, we achieve an accuracy of 0.795833 and a F1 score of 0.789431. (Visualizations available in notebook.)
This notebook generates images of buildings conditioned on architecture styles using a conditional GAN.
Results after 20 epochs:
Our most successful generated image is this example of Ancient Egyptian architecture, which is visibly a pyramid:
However, most of our images, including this example of American Craftsman architecture, are less clear. (If you look closely, you can see a blurry gabled brown roof and white walls.)
Much of our code has been adapted from the following sources.
- Data: Architectural Style Classification using MLLR
- Classification: PyTorch Transfer Learning Tutorial and Finetuning Torchvision Models Tutorial
- Confusion Matrix: scikit-learn
- Conditional GAN: togheppi's cDCGAN