Machine learning provides a lot of opportunities for SEO professionals to add to their toolkits. In this post, we will see how SEOs can leverage machine learning in their daily work.
- Making predictions
- Building SEO experiments
- Clustering pages and keywords
- Improving SEO with semantics and NLP
- Generating content
This article is a no-code gentle overview of machine learning for SEO.
It is meant to give a sense of the value that machine learning can bring to SEO professionals and promote incredible work from the community.
Basics of Machine Learning
Machine learning (ML) is the use of computer algorithms and statistical methods to help computers learn and make decisions from data, without human supervision.
The two main branches of machine learning are supervised learning and unsupervised learning.
Supervised learning
Supervised learning helps to make predictions using labelled data.
Example of supervised learning in SEO
Assigning a category to a new web page by training on existing pages that have previously been manually labelled with categories.
Unsupervised learning
Unsupervised learning helps to make predictions using unlabelled data.
Example of unsupervised learning in SEO
Finding duplicate content by comparing the level of similarity between articles. In that case, there are manually created labels. The predictions have to be made through the understanding of the content using Natural Language processing.
3 Most Common Applications of Machine Learning in SEO
Machine learning tasks that we most often see the SEOs execute are:
- Natural Language Processing (NLP)
- Clustering
- Forecasting
1. Natural Language Processing
Natural language processing, or NLP, refers to the way computers try to analyse and synthesise natural language and speech. Specifically, NLP in machine learning tries to provide meaning to natural language by using techniques such as tokenization, normalization, semantic analysis and mode.
Examples of Natural Language Processing Tasks
SEO will enjoy natural language processing as it helps de-duplication of content, topical understanding of content, understanding of search engine processes and many other crucial SEO tasks.
- Named Entity Recognition (finding entities in string of text)
- Duplicate content detection
- Sentiment analysis
- Text generation
Useful NLP Machine Learning Algorithms
No library has caused more sensation in the SEO community than GPT-3 and I have yet to find someone more aware of its applications for SEOs than Vincent Terrasi.
- Google’s BERT (by Pierre Rouarch)
- Facebook’s BART (by Hamlet Batista)
- Hugging face transformers (by Andrea Volpini)
- spaCy (by Dr. W.J.B. Mattingly)
- Google’s NLP API (by Greg Bernhart)
- BlazingText / Word2Vec (by Shrikar Archak)
- Sentiment Analysis with TextBlob (by Pragyanshu Labh)
Text processing libraries to prepare data for machine learning
- Scikit-learn‘s TFIDF (by Koray Gübür)
- Polyfuzz (by Lee Foot)
2. Clustering
Clustering in machine learning is an unsupervised learning set of algorithms that divide objects into similar clusters based on similar characteristics. Clustering is one of the most useful ML techniques used in SEO as it helps to group keywords, topics and web pages together without the need for previously labelled data.
Examples of Clustering Tasks
- Grouping Google Search Console’s Queries with KMeans (by Konrad Burchardt)
Useful Clustering Machine Learning Algorithms
- Scikit-learn’s KMeans as well as many other clustering algorithms
- sciPy’s KMeans as well Hierarchical clustering
3. Forecasting
The last very important SEO task to be done through machine learning that we will cover in this article is forecasting. Forecasting tries to predict new data points in a time series based on previous data points and / or additional data sets.
Examples of Forecasting Tasks
Forecasting can be useful for SEO to predict and make estimations of what traffic should be expected to be in the future and know whether or not their site performs accordingly. It can be also used in causal inference SEO experiments.
Useful Forecasting Machine Learning Algorithms
- Scikit-learn’s regression algorithms (by Hülya Çoban)
- Statsmodel (by Andreas Voniatis)
- Causal Impact for SEO Experiments
- Forecasting SEO traffic with Prophet and Python (by Daniel Heredia)
Building Web Applications for your Machine Learning Models
At some point, you may want to make your machine learning programs open-source, or even available publicly through a web application.
No application framework has had more popularity within the SEO community than Streamlit, passionately brought to light by Charly Wargnier. Don’t believe me? Have a look at his portfolio:
Getting Started in Machine Learning
I have found that it is better to have a small machine learning background before you can really get value from it.
The reason for that is that the quality of your machine learning predictions is directly correlated with your capacity to provide good input data.
However, you can always rely on other people’s code to enhance your knowledge and gain insights into your data, even if the result is not perfect.
Find your own path in a way to will trigger your interest and keep going according to your own need.
I suggest that you read this introduction by Elias Dabbas:
Data Science for SEO and Digital Marketing : a suggested guide for beginners
Learn Machine Learning with Python
To learn machine learning you need to learn either R, Python or NodeJS. I have a complete tutorial on Python SEO.
Alternatively, I have learned both Python and Machine Learning through a yearly subscription at DataCamp and that was my best investment of the year. Here is the career track that I have followed and which took me around 6-8 months to complete:
Data Scientist with Python Career Track
Some Incredible Contributors That Teach SEOs Machine Learning
- Hamlet Batista (RIP)
- Vincent Terrasi
- Charly Wargnier
- Andrea Volpini
- Koray Gübür
- Daniel Heredia
- Greg Bernhardt
- Elias Dabbas
- Hülya Çoban
- Alessio Nittoli
- JR Oakes
- Stefan Neefischer
- Britney Muller
- Ruth Everett
- Jessica Peck
- Lazarina Stoy
Interesting Resources on Machine Learning for SEO
- A Beginner’s Guide To Machine Learning For SEOs by Lazarina Stoy
Conclusion
That was the end of the small introduction to Machine learning for SEOs.
However, just know that learning machine learning is not the only value that SEOs will get from learning Python.
In fact, it does not even make the podium of the most valuable things that you can get out of learning Python.
Although it is not critical to know Python to be a good SEO professional, I can’t encourage you enough. Just go ahead and learn Python! You will love it and you will see your career grow at a faster pace because of it.
SEO Strategist at Tripadvisor, ex- Seek (Melbourne, Australia). Specialized in technical SEO. Writer in Python, Information Retrieval, SEO and machine learning. Guest author at SearchEngineJournal, SearchEngineLand and OnCrawl.