This document presents research on using convolutional neural network (CNN) models for image classification. It introduces CNNs and describes their basic architecture including convolutional layers, pooling layers, ReLU layers, and fully connected layers. It then discusses implementing three CNN configurations on the CIFAR-10 dataset to classify images into 10 classes. The first model is a simple CNN, while the other two add techniques like dropout regularization to prevent overfitting. The results show dropout regularization can significantly improve accuracy, and lower batch sizes may achieve better results than higher batch sizes. The goal is to compare the CNN variants' performance on image classification.