Maschinelles Lernen für SEO - Wie man mit maschinellem Lernen Rankings vorhersagt

Erfahre, wie wir einen Machine-Learning-Algorithmus trainiert haben, um Keywords mit hohem Ranking-Potenzial zu finden, indem wir die Positionen nach On-Page-Optimierungen vorhersagen.

Um Positionsveränderungen nach möglichen On-Page-Optimierungsmaßnahmen vorhersagen zu können, haben wir ein Machine-Learning-Modell mit Keyword-Daten und On-Page-Optimierungsfaktoren trainiert. Mit Hilfe dieses Modells können wir nun automatisch Tausende von potenziellen Keywords analysieren und diejenigen auswählen, bei denen wir mit ein paar einfachen On-Page-Optimierungen gute Chancen auf interessante Platzierungen haben.

In der Ende dieses Artikels, teilen wir den gesamten Quellcode dieser maschinelles Lernen SEO Experiment mit dir, damit du es selbst ausprobieren kannst!

Willst du diesen Artikel in einer anderen Sprache lesen oder teilen? Es gibt Deutsch und Französisch Übersetzungen dieses Artikels verfügbar.

Der Aufstieg des maschinellen Lernens in der SEO

Google arbeitet schon seit einiger Zeit daran, maschinelles Lernen in seine Produkte und Dienste zu integrieren. Mit Hilfe des maschinellen Lernens sind sie in der Lage, Dinge zu erreichen, die ohne sie sehr schwierig oder sogar unmöglich wären.

Als SEOs beobachten wir diese Entwicklung vielleicht mit ein wenig Angst. Wenn maschinelles Lernen auf Suchalgorithmen angewendet wird, werden diese Algorithmen immer komplexer und schwieriger zu verstehen, was unsere Arbeit erheblich erschwert.

Aber warum machen wir nicht einfach maschinelles Lernen für SEO nutzen, um mit Google mithalten zu können? Wenn SEO durch maschinelles Lernen schwieriger wird, ist es doch am besten, wenn wir selbst maschinelles Lernen einsetzen, oder?

In diesem Beitrag zeigen wir dir anhand eines praktischen Beispiels, wie du maschinelles Lernen nutzen kannst, um deine Suchmaschinenoptimierung zu verbessern.

Der Fall - Identifizierung von Keywords mit hohem Ranking-Potenzial durch Vorhersage von Positionsveränderungen nach Optimierungen

Wenn wir als SEOs Keyword-Daten finden wollen, stehen uns eine Menge toller Tools zur Verfügung. Die Herausforderung besteht nicht darin, Keywords zu finden, sondern sie zu analysieren und zu priorisieren. Schauen wir uns zunächst die Keyword-Daten an, die uns SEMrush für unsere Beispiel-Website liefert www.barf-alarm.de. Wir sind an Keywords interessiert, für die wir bereits ranken und die ein hohes Suchvolumen haben.

Wie du im Screenshot sehen kannst, liefert uns SEMrush bereits eine hohe Anzahl von Keywords (mehr als 1100) für die sehr Nischenthema der Beispiel-Website.

Wenn wir die Keywords hinzufügen, für die unsere Konkurrenten ranken, wir aber nicht, können wir dieses Keyword-Set leicht auf mehr als 3600 Keywords erweitern:

Das ist zwar immer noch keine große Anzahl von Keywords im Vergleich zu Analysen für größere Websites oder breiter gefasste Themen, aber es ist bereits eine Menge, die manuell zu analysieren eine große Herausforderung wäre. Dennoch müssen wir diese Keywords filtern, um herauszufinden, welche relevant sind und für welche wir Chancen auf eine Top-10-Position haben, indem wir bestimmte Seiten auf unserer Website optimieren.

Machen wir es auf die Art des maschinellen Lernens! Unser Ziel ist es, herauszufinden, für welche der 3600 Keywords, die wir gesammelt haben, eine Top-10-Position möglich ist.

Mit maschinellem Lernen Ranking-Potenzial identifizieren - Schritt für Schritt

Schritt 1: Überlegen, wie wir diese Aufgabe manuell erledigen würden

Wenn wir unsere Liste mit 3600 Keywords manuell auf eine Handvoll Keywords mit hohem Ranking-Potenzial filtern wollten, würden wir uns wahrscheinlich Metriken wie Suchvolumen und CPC ansehen, um ein Gefühl für die Wettbewerbssituation jedes Keywords zu bekommen. Ein hohes Suchvolumen und ein hoher CPC deuten in der Regel auf einen hohen Wettbewerb für ein Keyword hin, was es schwieriger macht, gute Rankings zu erzielen.

Wir können auch unsere Konkurrenten analysieren. Wenn ein sehr ähnlicher Konkurrent für einen Suchbegriff, auf den wir abzielen, in den Top 10 rangiert, ist es wahrscheinlich, dass auch wir ein solches Ranking erreichen können.

Zu guter Letzt können wir einen Blick auf die Faktoren der On-Page-Optimierung werfen. Wenn eine unserer Seiten bereits sehr gut für ein bestimmtes Keyword optimiert ist, aber nur auf Seite zwei oder drei rangiert, wird es sehr schwierig sein, die Platzierungen mit On-Page-Optimierungsmaßnahmen weiter zu verbessern. Wenn wir dagegen keine Seite haben, die auf ein Keyword abzielt, oder nur eine Seite, die nicht sehr gut optimiert ist, ist es wahrscheinlicher, dass wir mit On-Page-Optimierungsmaßnahmen die Top 10 für dieses Keyword erreichen können.

Wir können dieselben Daten, die wir normalerweise manuell analysieren würden, verwenden, um unseren maschinellen Lernalgorithmus zu trainieren. Schauen wir uns die nächsten Schritte an, um zu erfahren, wie das funktioniert.

Schritt 2: Sammeln und Umwandeln der benötigten Daten

Jetzt müssen wir die Daten sammeln, die wir normalerweise für die oben beschriebenen manuellen Analysen verwenden würden. Für dieses Experiment nutzen wir die API von SEMrush, um Daten über alle Keywords abzurufen, für die unsere Beispielwebsite und ihre Konkurrenten ranken:

Nachdem wir diese Daten gesammelt haben, crawlen wir alle Ranking-Seiten unserer Beispiel-Website und die Websites der Konkurrenten und prüfen, ob die Phrase, für die die Seite gerankt wird, im Titel, Inhalt, URL-Pfad oder in der Domain der Ranking-Seite enthalten ist. Wir speichern die Information darüber als Zahl, denn der von uns verwendete Algorithmus für maschinelles Lernen arbeitet nur mit Zahlen und akzeptiert keinen Text als Eingabe. Wenn also zum Beispiel alle Wörter der Phrase ’barfen fleisch“, für die eine Seite rangiert, im Titel-Tag dieser Seite gefunden werden, speichern wir den Wert ”1“ in ”title_found“. Wenn nur eines der Wörter (50% aller Wörter) gefunden wird, speichern wir den Wert ”0.5“, und wenn keine Wörter der Phrase gefunden werden, speichern wir den Wert ”0“.

Jetzt schreiben wir auch alle Domains und Keywords in Zahlen um, damit wir sie in unseren Algorithmus für maschinelles Lernen einspeisen können. Alles zusammengenommen haben wir jetzt eine Liste von Seiten, die für Keywords ranken, mit Informationen über die Wettbewerbssituation (CPC und Suchvolumen) und grundlegende On-Page-Faktoren.

Schritt 3: Training des maschinellen Lernmodells

Als Nächstes teilen wir unsere Daten in Trainingsdaten (80%) und Testdaten (20%) auf. Die Trainingsdaten werden benötigt, um den Algorithmus für maschinelles Lernen zu trainieren, und die Testdaten, um die Ergebnisse des Algorithmus zu überprüfen. Dann wählen wir einen Algorithmus, in diesem Fall einen MLPClassifier, und trainiere den Algorithmus. Aufgrund verschiedener Tests glauben wir, dass ein auf einem neuronalen Netz basierender Algorithmus für diese Art von Anwendung am besten geeignet ist.

Das ist der Teil, an dem deine Maschine eine Menge harter Arbeit leisten muss und du vielleicht ein paar Minuten warten musst. Oder Stunden...

Schritt 4: Vorhersage von Rankings für optimierte Landing Pages

Mit dem von uns erstellten Modell können wir nun Vorhersagen machen. In unserem Beispiel sagen wir das Ranking unserer Website www.barf-alarm.de für die Phrase “barf fleisch kaufen” voraus. Dazu verwenden wir die zuvor gesammelten Informationen und die Optimierungswerte der Seite (Phrase nicht im Titel oder in der URL und nur teilweise im Inhalt und im Domainnamen enthalten). Unser trainierter Algorithmus sagt für die Seite die Position 20 voraus, basierend auf den Informationen, die wir gerade gegeben haben:

Wenn wir auf unsere Testdaten zurückblicken, rangiert unsere Website für diese Phrase tatsächlich auf Position 18. Das bedeutet, dass unser maschineller Lernalgorithmus noch nicht 100% genau ist, aber für den Anfang ist das nicht schlecht:

Sehen wir uns nun an, was unser Algorithmus für eine optimierte Version dieser Seite vorhersagt, also eine, bei der die Phrase im Titel und im Inhalt der Seite vorkommt. Wir wollen wissen, ob es sinnvoll ist, diese Seite zu optimieren. Also fragen wir unseren Algorithmus, auf welcher Position wir seiner Meinung nach ranken würden, wenn wir die Seite für diesen Begriff optimieren. Wir füttern den Algorithmus mit denselben Daten wie zuvor, nur dass die Phrase dieses Mal im Titel und im Inhalt enthalten ist.

Oh wow, unser Modell sagt Position 1 für eine Seite voraus, die für diese Phrase optimiert ist. Wir wissen bereits, dass unser Algorithmus noch nicht 100% genau ist, aber für den Zweck dieses Experiments funktioniert er gut: Die Identifizierung von Keywords mit hohem Ranking-Potenzial. Mal sehen, ob die Vorhersagen für andere Phrasen realistischer aussehen!

Schritt 5: Ein vollständiges Ergebnis für alle potenziellen Keywords, die wir identifiziert haben

Machen wir also das, was wir gerade für alle 3600 Keywords gemacht haben, die wir zu Beginn gesammelt haben. Unser Modell erstellt eine Liste von Keywords mit aktuellen und vorhergesagten Positionen:

Wie du im Schnappschuss oben sehen kannst, sagt das Modell keine Rankings für irrelevante Keywords wie “kreuzberg” (ein Stadtteil von Berlin), “durchfall” (Diarrhö) oder “ziege” (Ziege) voraus. Das ist ein Zeichen für Qualität: Wir würden nicht erwarten, dass wir für Suchbegriffe, die für unser Geschäft nicht wirklich relevant sind, gut ranken können.

Filtern wir die Liste noch ein bisschen weiter, um ein noch besseres Ergebnis zu erzielen. Wenn wir einen Filter für voraussichtliche Platzierungen unter 10 anwenden, erhalten wir eine Liste von Keywords, für die unser Algorithmus glaubt, dass wir auf Seite 1 von Google ranken können:

Das ist ein großartiges Ergebnis! Wir haben jetzt eine Liste mit etwa 600 meist relevanten Keywords, die eine hohe Chance haben, nach einigen sehr einfachen On-Page-Optimierungen (einschließlich der Phrasen in den Titel-Tags und dem Seiteninhalt) auf der ersten Seite von Google zu ranken. Wir müssen nicht 3600 Keywords manuell überprüfen und können damit beginnen, optimierte Seiten für die 600 Keywords zu erstellen, die unser Machine Learning Algorithmus ausgewählt hat. Es kann sein, dass es einige Falschmeldungen gibt und die Ranking-Vorhersagen in einigen Fällen etwas zu enthusiastisch sind, aber das ist ein sehr guter Ausgangspunkt für eine vernünftige On-Page-Optimierung.

Abschließende Überlegungen

Wir haben in diesem Beispiel einige sehr grundlegende Daten verwendet, vor allem für Optimierungsmaßnahmen. Wir haben nur ein paar Faktoren betrachtet, wie die Platzierung von Keywords in den Titel-Tags und den Inhalt der Seiten. Es wäre sicherlich sinnvoll, noch weitere relevante Daten hinzuzufügen, z. B. externe Links oder TF*IDF-Analysen. Unser Beispiel ist nur eine grundlegende Demonstration dessen, was mit maschinellem Lernen in der SEO möglich ist.

Wenn du mehr Rankingdaten extrahierst, als wir hier gemacht haben, und mehr Wettbewerber und Keywords analysierst, sollten deine Vorhersagen besser werden. Es besteht auch die Möglichkeit, die Parameter des Maschinenalgorithmus zu optimieren oder einen besseren Algorithmus zu verwenden.

Bist du an weiteren Experimenten wie diesem interessiert?

Geh einfach zu labs.staging.searchviu.com, Melde dich an und wir halten dich auf dem Laufenden, wenn wir neue Experimente in unserem Blog veröffentlichen oder die Ergebnisse auf Konferenzen vorstellen.

Willst du das selbst ausprobieren?

Wir haben den vollständigen Quellcode dieses Experiments (Python, Jupyter Notebook) in unserem offenen SucheVIU Labs Github Repository. Auf diese Weise kannst du dieses Experiment für deine eigene Website und mit deinen eigenen Daten ausprobieren.

In unserem Repository findest du auch ein einfaches Beispiel für maschinelles Lernen zur Vorhersage der CTR auf der Grundlage von Google Search Console-Daten, das für deine ersten Schritte im Bereich maschinelles Lernen für SEO interessant sein könnte.

Danke!

Wir möchten uns bei unseren Freunden von SEMrush für die Bereitstellung der Daten, die wir für dieses Experiment benötigten. Wenn du einen Account oder Credits für die SEMrush API brauchst, um das Experiment selbst auszuprobieren, kannst du dich mit uns in Verbindung setzen Evgeni Sereda bei SEMrush.

Außerdem möchten wir uns bei den Organisatoren der SEO-Tag, der größten SEO-Konferenz in Deutschland, dafür, dass wir dieses Experiment dieses Jahr zum ersten Mal auf ihrer Veranstaltung präsentieren durften.

4 Antworten

  1. Das ist großartig! Ich werde mir das angebotene Lernmodell ansehen. Ich habe angefangen, verschiedene Anwendungsfälle für Deep Learning und SEO zu erforschen. Ich habe das Gefühl, dass dieser Bereich die SEO definitiv verändern wird, und wenn wir uns nicht darauf einstellen, werden wir Probleme bekommen. Danke, dass du deine Studie geteilt hast.

  2. Das ist genau das, wonach wir gesucht haben. Es gibt zwar inzwischen viele Tools auf dem Markt, die eine prädiktive Analyse der SERP-Performance bieten, wie BrightEdge oder MarketBrew, aber warum nicht selbst entwickeln, wenn du das Talent dazu hast? Ich wäre gerne dabei gewesen, als du das ursprünglich vorgestellt hast. Tolle Arbeit!

  3. Das ist großartig, danke fürs Teilen. Ich habe das Repo gerade geforkt und plane, selbst damit zu experimentieren. Ich bin ein R-Nutzer, also wird die Arbeit in Python eine schöne Abwechslung sein. Es wird interessant sein zu sehen, was ich herausfinde.

  4. Interessante Methode. Ich habe meine Python-Suche begonnen, also wird das hilfreich sein. Eine weitere Möglichkeit, deine Chancen zu verstehen, ist der Google Volatility Score, der eine seriöse Alternative zu anderen Wettbewerbs-Scores ist

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert