ML Models & Algorithms
Convolutional Neural Network (CNN)
In shortA deep learning architecture that scans data with small learned filters to detect local patterns; the classic model for image recognition.
A convolutional neural network (CNN) is a type of deep learning model designed to find local patterns in grid-like data, above all images. Instead of looking at every pixel independently, it slides small learned filters across the image to detect edges, textures and shapes, then combines them into higher-level features such as faces, products or logos.
How it works
A CNN stacks three kinds of layer. Convolutional layers apply filters (small grids of weights) across the input, producing feature maps that light up where a pattern appears. Pooling layers shrink those maps, keeping the strongest signals and making the network less sensitive to exact position. Fully connected layers at the end turn the features into a prediction, such as a class label. Early layers learn simple features like edges; deeper layers learn complex ones.
LeCun and colleagues showed CNNs reading handwritten digits in the 1990s, and AlexNet’s 2012 ImageNet win made them the standard for computer vision. Well-known pre-trained CNNs include VGG, ResNet and EfficientNet. CNNs have also been applied to text, for example sentence classification and sentiment analysis of short texts.
How it’s used in SEO and marketing
- Image classification and tagging for product catalogues and image libraries.
- Extracting image features for clustering and visual similarity.
- Detecting duplicate or near-duplicate images.
- Powering parts of visual search and image understanding in search engines.
- Sentiment analysis of short social texts, as covered in MLforSEO’s sentiment deep dive.
Example
In MLforSEO’s image clustering practical, the advanced approach uses a pre-trained CNN such as ResNet, VGG or EfficientNet. You remove the final classification layers, pass each image through the network to get a feature vector (2,048 numbers for ResNet50), reduce it with PCA or UMAP, then cluster. It suits larger sets, around 10,000 images or more, where colour alone is not enough and you care about patterns, textures and shapes.
Limitations and things to watch
- Training a CNN from scratch needs many labelled images and GPU time. Using a pre-trained model is usually the practical route.
- Pre-trained models reflect their training data and can misread niche products or under-represented groups.
- Transformer-based vision models and multimodal models such as CLIP now often outperform CNNs, especially when you need to match images with text.
- Results are hard to explain. Spot-check clusters and labels by eye.
- In marketing contexts, “CNN” here means the neural network, not the news network.
Learn it on MLforSEO
- Image Clustering by Color with Three Machine Learning Approaches (resource).
- Sentiment Analysis: A Deep Dive Into the Theory, Methods, and Applications
- Image SEO in 2026 (CLIP and image similarity).
- Introduction to Machine Learning for SEO course, practical on clustering images.
Where Convolutional Neural Network (CNN) shows up on MLforSEO
Learn it in a course
Read about it on the blog
Try it yourself
Sources and further reading
- Stanford CS231n: Convolutional Neural Networks for Visual Recognition
- Krizhevsky, Sutskever & Hinton (2012): ImageNet Classification with Deep Convolutional Neural Networks
- Kim (2014): Convolutional Neural Networks for Sentence Classification
- Keras Applications (pre-trained ResNet, VGG, EfficientNet)
- Image Clustering by Color with Three Machine Learning Approaches MLforSEO
Other terms from ML Models & Algorithms
- BERT (Bidirectional Encoder Representations from Transformers)Google's 2018 transformer language model that reads text in both directions to produce context-aware embedding…
- BERTopicA modular topic modelling technique that clusters transformer embeddings and labels each cluster with class-ba…
- BIRCH (Balanced Iterative Reducing and Clustering using Hierarchies)BIRCH (Balanced Iterative Reducing and Clustering using Hierarchies) clusters very large numeric datasets by s…
- BM25A classic ranking function that scores documents by how often query words appear, adjusted for word rarity and…
- Boyer-MooreA fast exact string-search algorithm that compares a pattern from right to left and skips ahead after mismatch…
- c-TF-IDFClass-based TF-IDF: treats each cluster as one document to find the words that best describe it, used by BERTo…
- Centroid-based ClusteringA clustering family that groups data around central points (centroids), each the average of its cluster's memb…
- DBSCANDensity-based clustering that groups closely packed points, finds the number of clusters itself and labels iso…
- Decision TreeA supervised model that predicts by asking a series of yes/no questions about the data, branching like a flowc…

