Facebook Algorithmus 2021 – Wie sagt der News Feed voraus, was du sehen willst?

Wenn es um den News Feed Algorithmus geht, gibt es viele Theorien und Mythen. Die meisten Menschen verstehen, dass ein Algorithmus am Werk ist und viele kennen einige der Faktoren, die diesen Algorithmus beeinflussen (ob du einen Beitrag magst oder dich mit ihm beschäftigst, etc.). Aber es gibt immer noch eine ganze Menge, das missverstanden wird.

Sie teilen viele der Details und Funktionen des News Feeds öffentlich. Aber unter der Haube ist das Machine Learning (ML) Ranking System, das den News Feed antreibt, unglaublich komplex, mit vielen Schichten. Sie teilen neue Details darüber, wie das Facebook Ranking-System funktioniert und welche Herausforderungen es mit sich bringt, ein System zu bauen, das die Inhalte für mehr als 2 Milliarden Menschen personalisiert und jedem von ihnen Inhalte zeigt, die für sie relevant und bedeutsam sind, jedes Mal, wenn sie auf Facebook kommen.

Was ist daran so schwer?

Zunächst einmal ist das Volumen enorm. Mehr als 2 Milliarden Menschen auf der ganzen Welt nutzen Facebook. Für jede dieser Personen gibt es mehr als tausend „Kandidaten“-Posts (oder Posts, die potenziell im Feed dieser Person erscheinen könnten). Sie sprechen hier von Billionen von Beiträgen für alle Menschen auf Facebook.

Bedenke nun, dass es für jede Person auf Facebook tausende von Signalen gibt, die sie auswerten müssen, um zu bestimmen, was diese Person am relevantesten finden könnte. Sie haben also Billionen von Beiträgen und Tausende von Signalen – und sie müssen sofort vorhersagen, was jede dieser Personen in ihrem Feed sehen möchte. Wenn du Facebook öffnest, läuft dieser Prozess im Hintergrund ab, und zwar in der Sekunde, die es braucht, um deinen News Feed zu laden.

Und wenn das alles funktioniert, ändern sich die Dinge und sie müssen neue Probleme berücksichtigen, wie Clickbait und die Verbreitung von Fehlinformationen. Wenn das passiert, müssen sie neue Lösungen finden. In Wirklichkeit besteht das Ranking-System nicht nur aus einem einzigen Algorithmus, sondern aus mehreren Schichten von ML-Modellen und Rankings, die Facebook anwenden, um die für jeden Nutzer relevantesten und sinnvollsten Inhalte vorherzusagen. Während Facebook uns durch die einzelnen Stufen bewegen, grenzt das Ranking-System die Tausenden von möglichen Beiträgen auf die wenigen Hundert ein, die zu einem bestimmten Zeitpunkt in den News Feeds der Nutzer erscheinen.

Grafik, wie personalisierte News Feeds generiert werden

Wie funktioniert das?

Vereinfacht gesagt, bestimmt das System, welche Beiträge in deinem News Feed erscheinen und in welcher Reihenfolge, indem es vorhersagt, was dich am ehesten interessiert oder anspricht. Diese Vorhersagen basieren auf einer Vielzahl von Faktoren, einschließlich dessen, was und wem du in letzter Zeit gefolgt bist, was dir gefallen hat oder womit du dich beschäftigt hast. Um zu verstehen, wie das in der Praxis funktioniert, fangen sie damit an, was mit einer Person passiert, die sich bei Facebook anmeldet: Sie werden ihn Juan nennen.

Seit Juan sich gestern eingeloggt hat, hat sein Freund Wei ein Foto von seinem Cockerspaniel gepostet. Eine andere Freundin, Saanvi, postete ein Video von ihrem Morgenlauf. Seine Lieblingsseite veröffentlichte einen interessanten Artikel über den besten Weg, die Milchstraße bei Nacht zu sehen, während seine Lieblingskochgruppe vier neue Sauerteigrezepte postete.

All diese Inhalte sind wahrscheinlich relevant oder interessant für Juan, weil er sich entschieden hat, den Personen oder Seiten zu folgen, die sie teilen. Um zu entscheiden, welche dieser Dinge in Juans News Feed weiter oben erscheinen sollten, müssen sie vorhersagen, was für ihn am wichtigsten ist und welche Inhalte den höchsten Wert für ihn haben. Mathematisch ausgedrückt, müssen sie eine Zielfunktion für Juan definieren und eine Ein-Ziel-Optimierung durchführen.

Sie können die Eigenschaften eines Posts nutzen, wie z.B. wer auf einem Foto getaggt ist und wann es gepostet wurde, um vorherzusagen, ob Juan es mögen könnte. Wenn Juan zum Beispiel dazu neigt, häufig mit Saanvis Posts zu interagieren (z.B. teilen oder kommentieren) und ihr Laufvideo sehr aktuell ist, besteht eine hohe Wahrscheinlichkeit, dass Juan ihren Post mögen wird. Wenn Juan in der Vergangenheit mehr mit Videoinhalten als mit Fotos interagiert hat, könnte die Like-Vorhersage für Wei’s Foto seines Cockerspaniels ziemlich niedrig sein. In diesem Fall würde das Facebook Ranking-Algorithmus Saanvis Laufvideo höher ranken als Wei’s Hundefoto, weil er eine höhere Wahrscheinlichkeit vorhersagt, dass Juan es mögen würde.

Aber das Liken ist nicht die einzige Art und Weise, wie Menschen ihre Vorlieben auf Facebook ausdrücken. Jeden Tag teilen Menschen Artikel, die sie interessant finden, sehen sich Videos von Menschen oder Berühmtheiten an, denen sie folgen, oder hinterlassen nachdenkliche Kommentare zu den Posts ihrer Freunde. Mathematisch gesehen werden die Dinge komplexer, wenn sie für mehrere Ziele optimieren müssen, die sich alle zu Facebooks Hauptziel addieren: den größten langfristigen Wert für Menschen zu schaffen, indem sie ihnen Inhalte zeigen, die für sie sinnvoll und relevant sind.

Mehrere ML-Modelle erstellen mehrere Vorhersagen für Juan: die Wahrscheinlichkeit, dass er sich mit dem Foto von Wei, dem Video von Saanvi, dem Artikel über die Milchstraße oder den Sauerteigrezepten beschäftigt. Jedes Modell versucht, diese Inhalte für Juan zu bewerten. Manchmal stimmen sie nicht überein – es könnte eine höhere Wahrscheinlichkeit geben, dass Juan Saanvis laufendes Video mag als den Milchstraßen-Artikel, aber es könnte wahrscheinlicher sein, dass er den Artikel kommentiert als das Video. Sie brauchen also eine Möglichkeit, diese unterschiedlichen Vorhersagen zu einem Score zu kombinieren, der für deren primäres Ziel, den langfristigen Wert, optimiert ist.

Wie können sie messen, ob etwas langfristigen Wert für eine Person schafft? Sie fragen sie. Zum Beispiel befragen sie die Leute, wie sinnvoll sie eine Interaktion mit ihren Freunden fanden oder ob ein Beitrag ihre Zeit wert war, damit deren System widerspiegelt, was die Leute sagen, dass sie Spaß haben und sinnvoll finden. Dann können sie jede Vorhersage für Juan berücksichtigen, basierend auf den Aktionen, von denen die Leute uns (über Umfragen) sagen, dass sie sinnvoller sind und ihre Zeit wert sind.

Das Peeling der Schichten

Um mehr als tausend Posts pro Nutzer, pro Tag, für mehr als 2 Milliarden Menschen – in Echtzeit – zu bewerten, müssen sie den Prozess effizient gestalten. Sie bewältigen dies in verschiedenen Schritten, die strategisch angeordnet sind, um ihn schnell zu machen und die Menge der benötigten Rechenressourcen zu begrenzen.

Zuerst sammelt das System alle Kandidaten-Posts, die sie möglicherweise für Juan ranken können (das Cockerspaniel-Foto, das Laufvideo, etc.). Dieser Bestand umfasst alle Beiträge, die von einem Freund, einer Gruppe oder einer Seite, mit der er verbunden ist, mit Juan geteilt wurden und die seit seinem letzten Login erstellt und nicht gelöscht wurden. Aber wie sollten sie mit Beiträgen umgehen, die vor Juans letztem Login erstellt wurden und die er noch nicht gesehen hat?

Um sicherzustellen, dass ungesehene Beiträge wieder berücksichtigt werden, wenden sie eine Bumping-Logik für ungelesene Beiträge an: Frische Beiträge, die für Juan in seinen vorherigen Sitzungen gewertet wurden (aber von ihm nicht gesehen wurden), werden zum wählbaren Bestand für diese Sitzung hinzugefügt. Außerdem wenden sie eine Action-Bumping-Logik an, so dass alle Posts, die Juan bereits gesehen hat und die eine interessante Konversation unter seinen Freunden ausgelöst haben, ebenfalls zum wählbaren Inventar hinzugefügt werden.

Als Nächstes muss das System jeden Beitrag für eine Vielzahl von Faktoren bewerten, wie z.B. die Art des Beitrags, die Ähnlichkeit mit anderen Beiträgen und wie sehr der Beitrag mit dem übereinstimmt, womit Juan zu interagieren pflegt. Um dies für mehr als 1.000 Posts zu berechnen, für jeden der Milliarden von Nutzern – alles in Echtzeit – lassen sie diese Modelle für alle Kandidaten-Stories parallel auf mehreren Maschinen, den sogenannten Prädiktoren, laufen.

Bevor sie all diese Vorhersagen zu einem einzigen Score zusammenfassen, muss Facebook einige zusätzliche Regeln anwenden. Sie warten, bis sie diese ersten Vorhersagen haben, damit sie den Pool der zu bewertenden Beiträge eingrenzen können – und sie wenden sie über mehrere Durchgänge an, um Rechenleistung zu sparen.

Zuerst werden bestimmte Integritätsprozesse auf jeden Beitrag angewendet. Diese dienen dazu, zu bestimmen, welche Integritätserkennungsmaßnahmen, wenn überhaupt, auf die für das Ranking ausgewählten Beiträge angewendet werden müssen. Im nächsten Durchgang grenzt ein leichtgewichtiges Modell den Pool der Kandidaten auf etwa 500 der relevantesten Posts für Juan ein. Durch das Ranking von weniger Stories können sie leistungsfähigere neuronale Netzwerkmodelle für die nächsten Durchgänge verwenden.

Der nächste Durchgang ist der Hauptbewertungsdurchgang, in dem der größte Teil der Personalisierung stattfindet. Hier wird ein Score für jede Story unabhängig berechnet und dann werden alle 500 Posts nach Score geordnet. Bei einigen kann die Punktzahl für Likes höher sein als für Kommentare, da manche Menschen sich lieber durch Liken als durch Kommentieren ausdrücken. Jede Aktion, die eine Person nur selten ausführt (zum Beispiel eine Like-Vorhersage, die sehr nahe bei Null liegt), bekommt automatisch eine minimale Rolle im Ranking, da der vorhergesagte Wert sehr niedrig ist.

Zum Schluss führt Facebook den kontextuellen Durchlauf durch, in dem kontextuelle Merkmale wie Regeln für die Vielfalt der Inhaltstypen hinzugefügt werden, um sicherzustellen, dass Juans News Feed eine gute Mischung von Inhaltstypen hat und er nicht mehrere Video-Posts nacheinander sieht. All diese Ranking-Schritte passieren in der Zeit, die Juan braucht, um die Facebook-App zu öffnen, und innerhalb von Sekunden hat er einen bewerteten News Feed, den er durchstöbern und genießen kann.

Quelle: Facebook

PS: Jetzt verrate ich dir, wie ich 210k Monatsumsatz im 7. Monat ohne Namensliste gemacht habe: Hier zur Schritt-für-Schritt-Anleitung in meiner Facebook Gruppe mit über 27.000 Networkern.