A CNN is a neural network architecture specialized for grid-like data such as images. It uses convolutional filters to detect local patterns and pooling layers to reduce dimensionality. CNNs have achieved state-of-the-art results in tasks like image recognition and object detection.