-
BEREICH
-
Ausführungsformen der vorliegenden Erfindung betreffen den Bereich des prädiktiven verhaltensorientierten Targetings.
-
HINTERGRUND
-
Viele Besitzer oder Herausgeber von Webseiten möchten ihren die Webseite besuchenden Benutzern Informationen oder Werbungen präsentieren, wobei diese Informationen zu den Charakteristiken des Benutzers passen sollen, um den Wert der Werbung zu erhöhen. Dieser Vorgang wird im Allgemeinen als „Targeting” von Benutzern bezeichnet. Zu diesem Zweck versuchen Anbieter von Webseiten und/oder speziellen Diensten, so viele persönliche Informationen wie möglich über Benutzer einzuholen, wobei diese Informationen auf verschiedene Weisen gesammelt werden können. Zum Beispiel, werden beim „Behavioural Targeting” (verhaltensorientierten Targeting) unter anderem Informationen über das Browsing- oder „Klick”-Verhalten von Benutzern analysiert. Wenn ein solcher Informationstyp mit demografischen Daten und/oder Daten zusammengeführt wird, die von Anfragen und Umfragen erhalten werden, und wenn Informationen über Benutzer mit Informationen über andere Benutzer mit ähnlichen Charakteristiken, z. B. durch kollaboratives Filtern, kombiniert werden, dann wird es möglich, Charakteristiken von Benutzern auf der Basis ihres Browsing-Verhaltens vorherzusagen. Dieser Vorgang ist als „Predictive Behavioural Targeting” (prädiktives verhaltensorientiertes Targeting) bekannt.
-
Die deutsche Patentspezifikation
DE 10 2004 047 815 B4 beschreibt ein Verfahren zum Erzeugen und Routen von Werbungen, wobei das Browsing-Verhalten eines Benutzers mit Daten über die Interessen des Benutzers und mit persönlichen Informationen über den Benutzer kombiniert wird. Steuerdaten zum Auswählen von Werbungen auf der Basis dieser Informationen werden in Benutzerprofilen für jeden Benutzer gespeichert, und diese Benutzerprofile werden dann verglichen und ihre Vollständigkeit und Ähnlichkeiten werden analysiert.
-
ZUSAMMENFASSUNG EINIGER AUSFÜHRUNGSFORMEN DER ERFINDUNG
-
Es ist wesentlich für prädiktives verhaltensorientiertes Targeting, dass Charakteristiken eines Benutzers, für den ein Targeting durchgeführt werden soll, so schnell wie möglich vorhergesagt werden, da auf der Basis der vorhergesagten Charakteristiken gewöhnlich ein Werbeserver (Ad-Server) eine weitere Auswahl von Informationen über den Benutzer, für den ein Targeting durchgeführt werden soll, treffen muss, so dass eine weitere Verzögerung entsteht. So sollten beispielsweise Charakteristiken innerhalb von etwa einigen Sekunden oder sogar Millisekunden vorhersagbar sein.
-
Ein besonders unkomplizierter Ansatz zum Vorhersagen von Charakteristiken eines aktuellen Benutzers besteht darin, sein Browsing-Verhalten mit einer Datenbank zu vergleichen, die das Browsing-Verhalten sowie assoziierte Charakteristiken einer Vielzahl von Benutzern speichert, indem der Benutzer mit dem am besten übereinstimmenden Browsing-Verhalten identifiziert wird und seine assoziierten Charakteristiken als Vorhersage benutzt werden. Ein solcher Ansatz ist allgemein als k-nächster-Nachbar-Ansatz (k-nearest-neighbour approach) bekannt. Da die gesamte Datenbank für jede Vorhersage durchsucht werden muss, ist die Vorhersagezeit recht groß. Ferner muss die gesamte Datenbank zugänglich sein, wenn eine Vorhersage gemacht werden soll.
-
Ferner ist es im Allgemeinen wünschenswert, eine schnelle Vorhersage bereits dann geben zu können, wenn es nur wenige Informationen über das Browsing-Verhalten eines aktuellen Benutzers gibt, z. B. im Falle eines Erstbenutzers, über den nur bekannt ist, dass er auf die aktuelle Webseite zugegriffen hat. In dem in
DE 10 2004 047 815 B4 beschriebenen profilgestützten System müsste zunächst ein Profil eingerichtet und mit Profilinformationen von Profilen anderer Benutzer angereichert werden, die als dem aktuellen Benutzer ähnlich angesehen werden, was eine erhebliche Menge Zeit erfordert.
-
Daher ist es unter anderem Aufgabe der Erfindung, eine verbesserte Lösung für prädiktives verhaltensorientiertes Targeting bereitzustellen.
-
Gemäß einem ersten Aspekt der Erfindung wird ein Verfahren offenbart, das von zumindest einer Vorrichtung ausgeführt wird, wobei das Verfahren Folgendes umfasst:
- – Erhalten von Informationen über ein Zugriffsverhalten eines aktuellen Benutzers, der auf Inhalt zugreift;
- – Vorhersagen, mit einem Vorhersagemodul der Vorrichtung und als Reaktion auf das Erhalten der Informationen über das Zugriffsverhalten des aktuellen Benutzers, zumindest einer Charakteristik des aktuellen Benutzers zumindest auf der Basis eines Modells für die Charakteristik und auf der Basis der erhaltenen Informationen über das Zugriffsverhalten des aktuellen Benutzers, wobei das Modell zumindest auf einem Satz von Parametern basiert, der von einem Trainingsmodul zumindest auf Basis einer Vielzahl von Trainingssätzen ermittelt zumindest und dem Vorhersagemodul von Zeit zu Zeit für Aktualisierungszwecke bereitgestellt wird, wobei jeder Trainingssatz der Trainingssätze für einen jeweiligen Trainingsbenutzer von mehreren Trainingsbenutzern Informationen über ein Zugriffsverhalten dieses jeweiligen Trainingsbenutzers und Informationen über die Charakteristik dieses jeweiligen Trainingsbenutzers umfasst, und
- – Bereitstellen von Informationen über die vorhergesagte Charakteristik des aktuellen Benutzers, so dass Informationen auf den aktuellen Benutzer zumindest auf der Basis der Informationen über die vorhergesagte Charakteristik ausgerichtet werden können.
-
Gemäß einem zweiten Aspekt der Erfindung wird ein Computerprogramm offenbart, das Programmcode zum Ausführen des Verfahrens gemäß dem ersten Aspekt der Erfindung oder beliebigen seiner nachfolgend beschriebenen Ausführungsformen umfasst, wenn das Computerprogramm auf einem Prozessor ausgeführt wird. Das Computerprogramm kann beispielsweise über ein Netzwerk wie z. B. das Internet verteilbar sein. Das Computerprogramm kann beispielsweise zumindest teilweise Software und/oder Firmware eines Prozessors repräsentieren. Das Computerprogramm kann beispielsweise in einem computerlesbaren Medium speicherbar und/oder codierbar sein. Das computerlesbare Medium kann beispielsweise als elektrisches, magnetisches, elektromagnetisches, optisches oder sonstiges Speichermedium ausgestaltet sein und kann entweder ein entfernbares Medium oder ein fest in einer Vorrichtung oder einem Terminal installiertes Medium sein. Nichteinschränkende Beispiele für ein solches computerlesbares Medium sind ein Direktzugriffsspeicher (RAM) oder ein Festwertspeicher (ROM). Das computerlesbare Medium kann beispielsweise ein greifbares Medium wie z. B. ein greifbares Speichermedium sein. Ein computerlesbares Medium wird als ein Medium verstanden, das von einem Computer wie z. B. einem Prozessor gelesen werden kann.
-
Gemäß einem dritten Aspekt der Erfindung wird eine Vorrichtung offenbart, die zum Ausführen des Verfahrens gemäß dem ersten Aspekt der Erfindung oder beliebigen seiner nachfolgend beschriebenen Ausführungsformen konfiguriert ist oder jeweilige Mittel zum Ausführen der Verfahrensschritte des Verfahrens gemäß dem ersten Aspekt der Erfindung oder beliebigen seiner nachfolgend beschriebenen Ausführungsformen umfasst.
-
Gemäß einem vierten Aspekt der Erfindung wird eine Vorrichtung offenbart, die zumindest einen Prozessor und zumindest einen Speicher mit Computerprogrammcode umfasst, wobei der zumindest eine Speicher und der Computerprogrammcode so konfiguriert sind, um, mit dem zumindest einen Prozessor, die Vorrichtung zu veranlassen, zumindest das Verfahren gemäß dem ersten Aspekt der Erfindung oder beliebigen seiner nachfolgenden beschriebenen Ausführungsformen auszuführen.
-
Die Vorrichtung gemäß dem dritten und vierten Aspekt der Erfindung kann insbesondere die Vorrichtung sein, die das Verfahren gemäß dem ersten Aspekt der Erfindung ausführt und das Vorhersagemodul umfasst.
-
Gemäß einem fünften Aspekt der Erfindung wird ein System offenbart, das eine Vorrichtung gemäß dem dritten oder vierten Aspekt der Erfindung und das Trainingsmodul umfasst.
-
Es werden nachfolgend beispielhafte Merkmale und beispielhafte Ausführungsformen beschrieben, die gleichermaßen auf den ersten, zweiten, dritten, vierten und fünften Aspekt der Erfindung zutreffen. Alle beispielhaften Merkmale und beispielhaften Ausführungsformen sind als auch in allen möglichen Kombinationen miteinander offenbart zu verstehen.
-
Es werden Informationen über ein Zugriffsverhalten eines aktuellen Benutzers erhalten, der auf Inhalt zugreift. Der Inhalt kann beispielsweise ein Inhalt beliebigen ITyps sein, auf den ein Benutzer, insbesondere ein menschlicher Benutzer, zugreifen kann, z. B. Inhalt des Internets oder von irgendeinem anderen Netzwerk wie z. B. einem sozialen Netzwerk. Der Inhalt kann beispielsweise elektronischer Inhalt wie z. B. Inhalt sein, der betrachtet oder angehört werden kann. insbesondere ist eine Webseite des Internets als ein Beispiel für Inhalt zu verstehen, auf den ein Benutzer zugreifen kann, z. B. über einen Web-Browser wie z. B. Internet Explorer, Mozilla Firefox oder Apple’s Safari-Browser. Eine Webseite kann beispielsweise ein Teil eines Satzes von einer oder mehreren verwandten Webseiten sein, die eine Website bilden. Mit dem Begriff „aktueller Benutzer” wird in dieser Spezifikation ein Benutzer bezeichnet, der auf Inhalt zugreift und für den ein Targeting durchgeführt werden soll, z. B. während und/oder nach dem Zugreifen auf den Inhalt. Darüber hinaus ist der Begriff „aktuell” nicht in einer begrenzenden Weise anzusehen. Das Zugriffsverhalten des aktuellen Benutzers kann sich beispielsweise auf das Zugreifen auf Inhalt durch den aktuellen Benutzer beziehen. Zum Beispiel, wenn der Inhalt eine oder mehrere Webseiten beinhaltet, dann kann sich das Zugriffsverhalten beispielsweise auf das Zugreifen auf die Webseiten durch den aktuellen Benutzer beziehen und kann dann beispielsweise als das Klick-Verhalten des aktuellen Benutzers verstanden werden. Die Informationen über das Zugriffsverhalten können dann beispielsweise Informationen über die Typen (z. B. im Hinblick auf Inhaltskategorien) von Webseiten, auf die der aktuelle Benutzer zugreift, und/oder auf Häufigkeiten beziehen, mit denen der aktuelle Benutzer darauf zugreift. Informationen über das Zugriffsverhalten des aktuellen Benutzers können beispielsweise mittels eines Cookies, insbesondere eines Cookies von Dritten (third-party-cookie) gesammelt werden. Die Informationen über das Zugriffsverhalten des aktuellen Benutzers können bereits den Inhalt berücksichtigen, auf den der aktuelle Benutzer gerade zugreift, oder können ihn auch noch nicht berücksichtigen. Die Informationen über das Zugriffsverhalten des aktuellen Benutzers können beispielsweise von einer Cookie-Verarbeitungseinheit erhalten werden, die Teil der Vorrichtung oder eine hinsichtlich der Vorrichtung separate Einheit bilden kann.
-
Als Reaktion auf das Erhalten der Informationen über das Zugriffsverhalten des aktuellen Benutzers wird zumindest eine Charakteristik des aktuellen Benutzers von einem Vorhersagemodul der Vorrichtung zumindest (oder nur) auf der Basis eines Modells für die Charakteristik und der erhaltenen Informationen über das Zugriffsverhalten des aktuellen Benutzers vorhergesagt. Die Charakteristik kann beispielsweise eine demografische Charakteristik des Benutzers sein, wie z. B. Geschlecht, Alter, Altersgruppe, Einkommen oder Einkommensgruppe sein, um nur einige nicht begrenzende Beispiele zu nennen. Ebenso kann sich die Charakteristik auf ein Interesse des Benutzers beziehen, wie z. B. ein Interesse an einem spezifischen Thema oder Produkt.
-
Das Modell basiert zumindest auf einem Satz von Parametern, der von einem Trainingsmodul ermittelt und dem Vorhersagemodul von Zeit zu Zeit für Aktualisierungszwecke bereitgestellt wird. Darin kann das Trainingsmodul Teil der Vorrichtung oder Teil einer Einheit sein, die separat von der Vorrichtung ist. Das Vorhersagemodul und das Trainingsmodul sind als funktionell separat und/oder entkoppelt voneinander zu verstehen. Das Vorhersagemodul wendet das Modell auf die erhaltenen Informationen über das Zugriffsverhalten des aktuellen Benutzers an, um eine Charakteristik des aktuellen Benutzers vorherzusagen. Das Trainingsmodul stellt – von Zeit zu Zeit (z. B. in regelmäßigen oder unregelmäßigen Zeitabständen) – den Satz von Parametern bereit, auf dem das von dem Vorhersagemodul angewandte Modell basiert. Das Vorhersagemodul kann somit unabhängig von dem Trainingsmodul auf der Basis des Satzes von Parametern arbeiten, den es derzeit hat. Wenn es ein Update für diesen Satz von Parametern gibt, dann wird dieses Update dem Vorhersagemodul vom Trainingsmodul bereitgestellt. Es ist jedoch insbesondere möglich, die Ermittlung des Satzes von Parametern durch das Trainingsmodul und/oder die Bereitstellung des Updates des Satzes von Parametern dem Vorhersagemodul insbesondere nicht als Reaktion auf das Erhalten des Zugriffsverhaltens des aktuellen Benutzers auszuführen. Im Gegensatz dazu kann das Ermitteln und/oder Bereitstellen eines Updates für den Satz von Parametern beispielsweise durch andere Ereignisse ausgelöst werden, wie nachfolgend erörtert wird. Die Vorhersage der Charakteristik des aktuellen Benutzers einerseits und das Ermitteln und/oder Bereitstellen von Updates für den Parametersatz andererseits kann somit als asynchron mit Bezug zueinander angesehen werden. Die Verbindung zwischen beiden Prozessen kann als durch die Updates gebildet angesehen werden, die dem Vorhersagemodul vom Trainingsmodul bereitgestellt werden. Die funktionelle Trennung von Vorhersage und Training erlaubt eine starke Verkürzung der Vorhersagezeit (d. h. der Zeit, die zum Vorhersagen einer Charakteristik des aktuellen Benutzers auf der Basis der erhaltenen Informationen über sein Zugriffsverhalten benötigt wird). Die Vorhersage wird daher durch Training nicht mehr verlangsamt (wie dies bei trägem Lernen (Lazy-Learning) der Fall wäre). Ferner erlaubt die Verwendung eines parameterbasierten Modells für die Vorhersage (anstatt einer riesigen Datenbank von jeweiligen Profilen und/oder jeweiligen Sätzen von Zugriffsverhalten und assoziierten Charakteristiken von Benutzern, die Informationen für Millionen von Benutzern enthalten) auch eine rasche Vorhersage von Charakteristiken eines aktuellen Benutzers selbst dann, wenn es nur wenige Informationen über das Zugriffsverhalten des aktuellen Benutzers gibt (z. B. nur Informationen über den Inhalt, auf den der aktuelle Benutzer gerade zugreift). Die funktionelle Trennung von Vorhersage und Training lässt es auch zu, dass das Vorhersagemodul als Online-Modul arbeitet (z. B. als Teil eines Webservers), das eingehende Anforderungen zur Vorhersage der Charakteristiken des aktuellen Benutzers auf der Basis der Informationen über das Zugriffsverhalten des aktuellen Benutzers handhabt, die (z. B. zusammen) mit der Anforderung erhalten werden, und sofort (z. B. mit einer Verzögerung von nur Millisekunden, z. B. mit einer durchschnittlichen Verzögerung von weniger als 10, 20, 50, 100 oder 500 Millisekunden) die vorhergesagte Charakteristik bereitstellt. Das Online-Modul kann somit in Echtzeit arbeiten. Im Gegensatz dazu kann das Trainingsmodul als Offline-Modul betrieben werden, das beispielsweise keine Anforderungen in Echtzeit bedient. Ein neuer Satz von Parametern kann beispielsweise ermittelt und/oder dem Vorhersagemodul vom Trainingsmodul bereitgestellt werden, wenn eine ausreichende Anzahl von neuen und/oder aktualisierten Trainingssätzen, auf deren Basis der Satz von Parametern ermittelt wird, erhalten wurde. Alternativ oder zusätzlich kann das Trainingsmodul die Ermittlung und/oder Bereitstellung des Satzes von Parametern auf der Basis eines regelmäßigen Plans durchführen. In jedem Fall kann eine Häufigkeit des Vorhersagens der Charakteristik eines aktuellen Benutzers (wie zuvor vom Vorhersagemodul durchgeführt wurde) größer sein als eine Häufigkeit des Ermittelns und/oder Bereitstellens des Satzes von Parametern (wie vom Trainingsmodul durchgeführt).
-
Das Trainingsmodul ermittelt den Satz von Parametern zumindest auf der Basis von Informationen von mehreren Trainingssätzen, wobei jeder Trainingssatz der Trainingssätze für einen jeweiligen Trainingsbenutzer aus mehreren Trainingsbenutzern Informationen über ein Zugriffsverhalten dieses jeweiligen Trainingsbenutzers und Informationen über die Charakteristik (und möglicherweise auch über weitere Charakteristiken) dieses jeweiligen Trainingsbenutzers umfasst. Darin definiert der Begriff „Trainingsbenutzer” einen Benutzer, für den sowohl Informationen über sein Zugriffsverhalten als auch Informationen über die Charakteristik zur Verfügung stehen (und die somit einen Trainingssatz bilden) und vom Trainingsmodul zum Ermitteln eines Updates (oder der Anfangsversion) für den Satz von Parametern benutzt wird. Dieser Begriff ist in keinerlei Weise als weiter einschränkend anzusehen. Ein Trainingsbenutzer kann sich möglicherweise von einem regelmäßigen oder normalen Benutzer dahingehend unterscheiden, dass er/sie Informationen über die Charakteristik freiwillig (z. B. durch Teilnahme an einer Umfrage) gibt, oder dadurch, dass Informationen über die Charakteristik auf andere Weise für diesen Benutzer zur Verfügung stehen (z. B. von einer Datenbank, z. B. einer Nielsen-Datenbank). Es ist zu bemerken, dass der aktuelle Benutzer auch ein Trainingsbenutzer sein kann, z. B. dann, wenn der aktuelle Benutzer Informationen über die Charakteristik bereitstellt. Da die Trainingssätze Informationen sowohl über das Zugriffsverhalten als auch über die Charakteristik für mehrere Trainingsbenutzer umfassen, kann das Trainingsmodul davon den Satz von Parametern ableiten, der es zulässt, auch die Charakteristik des aktuellen Benutzers auf der Basis von Informationen über das Zugriffsverhalten des aktuellen Benutzers undddem auf diesem Satz von Parametern basierenden Modell vorherzusagen. Dabei beinhaltet der Satz von Parametern möglicherweise keine Trainingssätze. Stattdessen kann dies als eine (mathematische) Generalisierung der Informationen über einige oder alle Trainingssätze verstanden werden. Insbesondere hängt zumindest ein Parameter des Satzes von Parametern (oder sogar einige oder alle Parameter des Satzes von Parametern) von Informationen von mehreren Trainingssätzen (oder sogar allen Trainingssätzen) der Trainingssätze ab. So würde sich selbst dann, wenn das Vorhersagemodul und das Trainingsmodul beide als Reaktion auf den Erhalt von Informationen über das Zugriffsverhalten eines aktuellen Benutzers arbeiten würden (d. h. nicht asynchron arbeiten würden), das gesamte System immer noch vollkommen von einem Lazy-Learning-System unterscheiden, da es immer einen Zwischenschritt des Ermittelns eines Satzes von Parametern auf der Basis der Trainingssätze gibt, und dieser Satz von Parametern wird dann in einem weiteren Schritt über das Modell auf die Informationen über das Zugriffsverhalten des aktuellen Benutzers angewandt.
-
Die vorhergesagte Charakteristik des aktuellen Benutzers wird dann beispielsweise einem Werbeserver (entweder direkt oder indirekt) oder einer anderen Entität bereitgestellt, damit Information auf den aktuellen Benutzer zumindest auf der Basis der Informationen über die vorhergesagte Charakteristik ausgerichtet werden kann. Zum Beispiel, wenn die Charakteristik ein Alter oder Geschlecht oder ein Interesse des aktuellen Benutzers ist, dann kann diese Information für eine geeignete Auswahl von Informationen wertvoll sein (wie z. B. Werbeanzeigen oder Empfehlungen), die dem aktuellen Benutzer bereitgestellt werden sollen. Dieses Targeting kann z. B. stattfinden, während der aktuelle Benutzer auf den Inhalt zugreift, oder danach.
-
Gemäß einer Ausführungsform aller Aspekte der Erfindung ist die Charakteristik des aktuellen Benutzers durch Klassifizieren eines Vektors, der die Informationen über das Zugriffsverhalten des aktuellen Benutzers repräsentiert, in eine von zumindest zwei Klassen, und das Modell basiert auf einer Support-Vector-Maschine, die die Klassifizierung zulässt. Eine Support-Vector-Maschine ist ein Konzept in der Statistik und Computerwissenschaft zum Ermitteln einer Hyperebene oder eines Satzes von Hyperebenen in einem mehrdimensionalen Raum, um in dem mehrdimensionalen Raum enthaltene Vektoren zu trennen, die mit zwei oder mehr Klassen assoziiert sind. Eine gute Trennung wird beispielsweise dann erzielt, wenn die Hyperebene den größtmöglichen Abstand vom nächsten Vektor jeder Klasse hat. Ein Beispiel für eine Repräsentation der Informationen über das Zugriffsverhalten des aktuellen Benutzers als Vektor ist beispielsweise der fünfdimensionale Vektor mit Komponenten (0, 2, 3, 0, 6), die anzeigen, dass der aktuelle Benutzer in der verfügbaren Beobachtungsperiode 0 Webseiten über Sportthemen, 2 Webseiten über Geschäftsthemen, 3 Webseiten über Kunstthemen, 0 Webseiten über Fahrzeugthemen und 6 Webseiten über Modethemen besucht hat. Ferner kann, wenn die Charakteristik des aktuellen Benutzers das Geschlecht des aktuellen Benutzers ist, das mit der Klasse „männlich” oder „weiblich” assoziiert ist, ein solcher Vektor beispielsweise als „weiblich” klassifiziert werden. Die Charakteristik kann natürlich alternativ mit einer Klassifizierung eines Vektors in mehr als zwei Klassen vorhersagbar sein. Zum Beispiel, wenn die Charakteristik eine Altersgruppe des aktuellen Benutzers ist, dann kann sie mit einer Klassifizierung in den folgenden Altersklassen assoziiert sein: 0–10, 11–20, 21–30, 31–45, 46–60 und 61–90 Jahre.
-
In dieser Ausführungsform kann der Satz von Parametern zum Beispiel eine Entscheidungsfunktion der Support-Vector-Maschine definieren, die zum Ausführen der Klassifizierung auf den Vektor, der die Informationen über das Zugriffsverhalten des aktuellen Benutzers repräsentiert, anwendbar ist. Die Entscheidungsfunktion kann sich beispielsweise auf die ein oder mehreren Hyperebenen beziehen, die von der Support-Vector-Maschine ermittelt werden. Zum Beispiel, falls die Charakteristik des aktuellen Benutzers durch eine Klassifizierung eines die Informationen über das Zugriffsverhalten des aktuellen Benutzers repräsentierenden Vektors in eine von zwei Klassen vorhersagbar ist, dann kann der Satz von Parametern beispielsweise Komponenten eines Normalen-Vektors und einen Bias umfassen, der eine Hyperebene der Support-Vector-Maschine definiert. Eine Vorhersage der Charakteristik des aktuellen Benutzers auf der Basis einer Entscheidungsfunktion einer Support-Vector-Maschine kann rechnerisch äußerst kostenarm sein. So kann es beispielsweise ausreichen, jede Komponente (oder nur jede Nicht-Null-Komponente) des Vektors mit einem assoziierten Parameter aus dem Satz von Parametern zu multiplizieren, das Ergebnis aufzusummieren, einen der Parameter aus dem Satz von Parametern zu addieren und das Vorzeichen des Gesamtergebnisses zu ermitteln. Diese geringe Komplexität der Anwendung der Entscheidungsfunktion ist besonders vorteilhaft, da sie im Vorhersagemodul angewendet werden muss, wo eine Echtzeitvorgang mit geringstmöglichen Verzögerungen gewünscht wird.
-
In dieser Ausführungsform können die Informationen über das Zugriffsverhalten des jeweiligen in dem Trainingssatz enthaltenen Trainingsbenutzers für jeden Trainingssatz der Trainingssätze einen Trainingsvektor repräsentieren, der mit einer Klasse assoziiert ist, die von den Informationen über die Charakteristik des jeweiligen im Trainingssatz enthaltenen Trainingsbenutzers ableitbar ist, und der Satz von Parametern kann durch das Trainingsmodul ermittelt werden, um eine Trennung von Trainingsvektoren verschiedener Klassen gemäß einem vordefinierten Optimierungskriterium zu reflektieren. Zum Beispiel, wenn die Charakteristik ein Geschlecht ist, dann kann jeder Trainingssatz beispielsweise den Trainingsvektor (der die Informationen über das Zugriffsverhalten des Trainingsbenutzers repräsentiert) und Informationen über das Geschlecht des Trainingsbenutzers umfassen. Der Satz von Parametern wird dann ermittelt, um eine Trennung zwischen den Trainingsvektoren von männlichen Trainingsbenutzern und den Trainingsvektoren von weiblichen Trainingsbenutzern gemäß dem vordefinierten Optimierungskriterium zu erzielen. Das vordefinierte Optimierungskriterium kann beispielsweise eine Maximierung des jeweiligen Abstands des Trainingsvektors, der der Hyperebene am nächsten liegt, sowohl in der männlichen als auch der weiblichen Klasse von Trainingsvektoren (gemeinsam optimale Hyperebene genannt). Ebenso gut können andere Optimierungskriterien angewandt werden. So kann beispielsweise ein Optimierungskriterium angewandt werden, das zu einer Soft-Margin-Hyperebene führt.
-
Gemäß einer Ausführungsform aller Aspekte der Erfindung umfassen die Informationen über das Zugriffsverhalten des aktuellen Benutzers für jede Inhaltskategorie eines Satz von einer oder mehreren Inhaltskategorien Informationen darüber, wie oft Zugriffe auf Inhalt, der zu der Inhaltskategorie gehört, durch den aktuellen Benutzer in einer Zeitperiode beobachtet wurden, und die Informationen über das Zugriffsverhalten eines in den Trainingssätzen enthaltenen jeweiligen Trainingsbenutzers beinhalten jeweils für jede Inhaltskategorie eines Satzes von einer oder mehreren Inhaltskategorien Informationen darüber, wie oft ein Zugriff auf Inhalt, der zu der Inhaltskategorie gehört, durch den Trainingsbenutzer in einer Zeitperiode beobachtet wurde. Die Informationen über das Zugriffsverhalten können dann beispielsweise die Form eines Inhaltskategoriehistogramms für einen Benutzer annehmen. Nichtbegrenzende Beispiele für Inhaltskategorien sind Sport, Geschäft, Wirtschaft, Kunst, Mode, Autos usw. Die Zeitperiode kann beispielsweise eine begrenzte oder unbegrenzte Zeitperiode sein, z. B. die Zeitperiode seit Beginn der Beobachtung. Der Satz von einer oder mehreren für den aktuellen Benutzer benutzten Inhaltskategorien und der Satz von einer oder mehreren für die Trainingsbenutzer benutzten Inhaltskategorien kann beispielsweise gleich sein, kann sich aber auch zumindest teilweise unterscheiden. Die Informationen darüber, wie oft Zugriffe auf Inhalt, der zur Inhaltskategorie gehört, beobachtet wurden, können nur zu einer begrenzten Anzahl von Inhaltsquellen gehören. Zum Beispiel, wenn der Zugriff auf Inhalt in Form des Besuchs einer Webseite erfolgt und der Webseitenbesuch auf der Basis eines Cookies eines Dritten beobachtet wird, dann werden nur Besuche von Webseiten beobachtet, auf die sich das Cookie des Dritten bezieht (z. B. weil die Webseite eine Informationsanforderung (z. B. ein Web-Bug) von der Webseite des Dritten enthält, die das Cookie des Dritten gesetzt hat).
-
In dieser Ausführungsform erfolgt eine Entscheidung darüber, ob Inhalt zu einer der Inhaltskategorien gehört, durch eine Entscheidungseinheit auf der Basis eines empfangenen Inhaltsklassifikators und/oder auf der Basis einer Analyse zumindest eines Teils des Inhalts. Die Entscheidungseinheit kann beispielsweise Teil der Vorrichtung sein oder kann Teil einer anderen Vorrichtung sein, die von der Vorrichtung getrennt ist. Die Entscheidungseinheit kann beispielsweise Teil einer Cookie-Verarbeitungseinheit sein, die wiederum Teil der Vorrichtung oder davon getrennt sein kann. Die Informationen über das Zugriffsverhalten des aktuellen Benutzers können beispielsweise durch die Vorrichtung oder die Vorhersageeinheit von der Entscheidungseinheit oder der Cookie-Verarbeitungseinheit erhalten werden. Wenn beispielsweise ein aktueller Benutzer/Trainingsbenutzer (diese Bezeichnung soll sich nachfolgend entweder auf den aktuellen Benutzer oder den Trainingsbenutzer beziehen) auf eine Webseite (als Beispiel für Inhalt) zugreift, die eine Anforderung (z. B. ein Web-Bug oder ein Tracking-Pixel oder -Script) von Daten von einer Webseite eines Dritten enthält (oder damit assoziiert ist, z. B. in Form eines Scripts eines Tracking-Pixels, das mit einigen oder allen Webseiten einer Website assoziiert ist), dann kann der Webserver der Webseite des Dritten (Webserver des Dritten genannt) – auf die erste Kommunikation mit dem Webbrowser des aktuellen Benutzers/Trainingsbenutzers hin – vom Web-Browser des aktuellen Benutzers/Trainingsbenutzers verlangen, ein Cookie (z. B. eine kleine Textdatei) zu setzen und den Inhalt des Cookie bei jeder Anforderung von Inhalt von der Webseite des Dritten bereitzustellen. Die Anforderung von Daten (z. B. das Web-Bug) von der Webseite des Dritten kann mit einem Inhaltsklassifikator oder mit einer Kennung (z. B. dem Uniform Resource Locator (URL)) der Webseite versehen werden, in der die Anforderung von Daten enthalten oder mit der die Anforderung von Daten assoziiert ist. Wenn also die Anforderung von Daten vom Webserver des Dritten vom Web-Browser eines aktuellen Benutzers/Trainingsbenutzers gestartet wird, dann wird der Webserver des Dritten über den Inhalt der Webseite, in die die Anforderung von Daten eingebettet wurde (oder mit der die Anforderung von Daten assoziiert ist), durch den Inhaltsklassifikator informiert, oder kann solche Informationen durch eine Analyse des (z. B. abgerufenen) Inhalts dieser Webseite auf der Basis der Kennung erlangen (wenn keine dedizierte Kennung in der Anforderung von Daten enthalten ist, dann kann stattdessen der in der Anforderung an den Webserver des Dritten enthaltene HTML-Referer verwendet werden). Auf der Basis der Kenntnis des Inhalts der Webseite, auf die der aktuelle Benutzer/Trainingsbenutzer zugreift, kann somit ein Inhaltskategoriehistogramm gestartet oder aktualisiert oder zurück in das Cookie des Web-Browsers des aktuellen Benutzers/Trainingsbenutzers geschrieben werden. Dieses Inhaltskategoriehistogramm wird dann, zusammen mit dem Inhaltsklassifikator oder einer Kennung der Webseite, dem Web-Server des Dritten jedesmal bereitgestellt, wenn auf eine Webseite, die eine Anforderung von Daten von der Webseite des Dritten enthält (oder damit assoziiert ist), vom aktuellen Benutzer/Trainingsbenutzer zugegriffen wird.
-
In dieser Ausführungsform kann die Vorhersage der Charakteristik des aktuellen Benutzers auf einer Darstellung der Informationen über das Zugriffsverhalten des aktuellen Benutzers basiert werden, in der die Information darüber, wie oft der aktuelle Benutzer auf Inhalt zugegriffen hat, der zu den Inhaltskategorien des Satzes von einer oder mehreren Inhaltskategorien gehört, normalisiert wurde, und wobei der Satz von Parametern auf der Basis von Trainingssätzen ermittelt werden kann, in denen die jeweiligen Informationen darüber, wie oft der jeweilige Trainingsbenutzer auf Inhalt zugegriffen hat, der zu Inhaltskategorien des Satzes von einer oder mehreren Inhaltskategorien gehört, normalisiert wurden. Das Normalisieren der Informationen darüber, wie oft der aktuelle Benutzer/Trainingsbenutzer auf Inhalt zugegriffen hat, der zu Inhaltskategorien des Satzes von einer oder mehreren Inhaltskategorien gehört, kann beispielsweise berücksichtigen, dass Zugriffe auf allgemein häufig besuchten Inhalt eine geringere Relevanz haben als Zugriffe auf allgemein weniger frequentierten Inhalt. Das Normalisieren der Informationen darüber, wie oft der aktuelle Benutzer auf Inhalt zugegriffen hat, der zu Inhaltskategorien des Satzes von einer oder mehreren Inhaltskategorien gehört, kann z. B. Teil der Vorhersage sein. Zum Beispiel kann die Information darüber, wie oft der aktuelle Benutzer auf Inhalt zugegriffen hat, der zu Inhaltskategorien des Satzes von einer oder mehreren Inhaltskategorien gehört, in einer nicht-normalisierten Form gespeichert werden (z. B. in einem Cookie wie nachfolgend beschrieben) und kann nur für den Zweck des Vorhersagens der Charakteristiken des aktuellen Benutzers normalisiert werden. Das Normalisieren kann beispielsweise die Anzahl von Klicks eines aktuellen Benutzers/Trainingsbenutzers pro Inhaltskategorie (z. B. in einer Zeitperiode), eine Gesamtwahrscheinlichkeit, dass eine Inhaltskategorie angeklickt wird, und eine Gesamtzahl von Klicks eines aktuellen Benutzers/Trainingsbenutzers (z. B. in der Zeitperiode) berücksichtigen.
-
Gemäß einer Ausführungsform aller Aspekte der Erfindung wird zumindest ein Teil der Informationen über das Zugriffsverhalten des aktuellen Benutzers in einem Cookie auf einem Web-Browser des aktuellen Benutzers gespeichert und vom Web-Browser beispielsweise einem Cookie-Verarbeitungssystem bereitgestellt, das Teil der Vorrichtung oder davon getrennt ist. Der Teil der Informationen über das Zugriffsverhalten des aktuellen Benutzers kann beispielsweise zu Inhalt gehören, auf den der aktuelle Benutzer vor dem Zugreifen auf den Inhalt (d. h. den aktuellen Inhalt) zugegriffen hat. Dieser Teil der Informationen über das Zugriffsverhalten des aktuellen Benutzers kann beispielsweise mit Informationen über den aktuellen Inhalt angereichert werden (z. B. durch eine Cookie-Verarbeitungseinheit oder eine Entscheidungseinheit, die beispielsweise einen Teil der Cookie-Verarbeitungseinheit bilden kann). Diese angereicherten Informationen können dann beispielsweise zurück im Cookie auf dem Web-Browser gespeichert werden. Der Teil der Informationen über das Zugriffsverhalten des im Cookie gespeicherten aktuellen Benutzers kann beispielsweise (z. B. in einer HTTP GET Anforderung) bereitgestellt werden, weil das Cookie mit einer Domäne/Pfad-Kombination assoziiert ist (eine Kombination, die eine Domäne und einen Pfad vorgibt, wobei der Pfad ebenso gut auch nur ein „/” sein kann), die mit einer Domäne/Pfad-Kombination einer Anforderung (von Daten z. B. einem Image-Tag wie z. B. einem HTTP IMG oder einem Script) übereinstimmt, die in dem Inhalt enthalten oder damit assoziiert ist, auf den der aktuelle Benutzer gerade zugreift. Das Cookie kann beispielsweise ein Cookie eines Dritten sein. Die Domäne/Pfad-Kombination kann beispielsweise eine Webseite vorgeben (oder eine gesamte Website, die mehrere Webseiten enthält), die mit der Vorrichtung assoziiert ist, z. B. weil die Vorrichtung ein Webserver (oder ein Teil davon) für diese Webseite (oder Website) ist. Die initiale Setzen des Cookies (und das nachfolgende Aktualisieren des Cookie) kann beispielsweise von der Vorrichtung ausgelöst werden (z. B. durch eine Cookie-Verarbeitungseinheit davon). Der Inhalt des Cookie kann beispielsweise verschlüsselt und/oder komprimiert sein.
-
In dieser Ausführungsform kann zumindest ein Teil der Informationen über das Zugriffsverhalten eines Trainingsbenutzers der Trainingsbenutzer in einem Cookie auf einem Web-Browser des Trainingsbenutzers gespeichert werden, wobei zumindest eine Domäne (oder Domäne/Pfad-Kombination), für die das Cookie gesetzt wurde wurde, mit einer Domäne (oder Domäne/Pfad-Kombination) übereinstimmt, für die das auf dem Web-Browser des aktuellen Benutzers gespeicherte Cookie gesetzt wurde. Das auf dem Web-Browser des aktuellen Benutzers gesetzte Cookie und das auf dem Web-Browser des Trainingsbenutzers gesetzte Cookie können somit beispielsweise beide von derselben Entität gesetzte Cookies sein, zum Beispiel von einem mit der Domäne (oder Domäne/Pfad-Kombination) assoziierter Webserver. Das Cookie kann beispielsweise ein Cookie eines Dritten sein. Die Vorrichtung kann beispielsweise der Webserver oder ein Teil davon sein. Die Vorrichtung kann dann zum Beispiel die Informationen über das Zugriffsverhalten des in dem Cookie auf dem Webserver des Trainingsbenutzers gespeicherten Trainingsbenutzers zu einer Datenbank leiten (die Teil der Vorrichtung oder getrennt davon sein kann), wobei das Trainingsmodul Zugang zu der Datenbank hat. Wenn die auf dem Web-Browser des aktuellen Benutzers oder des Trainingsbenutzers gesetzten Cookies von derselben Entität gesetzt werden, dann kann diese Entität eine Informationssammlung über das Zugriffsverhalten des aktuellen Benutzers und des Trainingsbenutzers steuern, die beide zum Vorhersagen der Charakteristik des aktuellen Benutzers benötigt werden.
-
Gemäß einer Ausführungsform aller Aspekte der Erfindung werden die in einem Trainingssatz der Trainingssätze enthaltenen Informationen über die Charakteristik eines Trainingsbenutzers anhand einer Umfrage erhalten, die mit dem Trainingsbenutzer durchgeführt wird, und mit den Informationen über das Zugriffsverhalten des Trainingsbenutzers assoziiert, um den Trainingssatz zu erhalten. Die Umfrage kann beispielsweise eine Online-Umfrage sein. Die Umfrage kann beispielsweise auf einem Satz von vom Trainingsbenutzer zu beantwortenden Fragen basieren. Die Charakteristik kann beispielsweise als Antwort auf eine Frage der Umfrage erhalten werden oder kann von einer Analyse von jeweiligen Antworten auf eine oder mehrere Fragen der Umfrage ableitbar sein. Die Teilnahme an der Umfrage kann beispielsweise einem Trainingsbenutzer dann angeboten werden, wenn ein Trainingsbenutzer auf Inhalt zugreift, z. B. durch einen Werbeserver. Die Umfrage kann beispielsweise von dem Werbeserver wie andere vom Werbeserver verwaltete Werbeanzeigen behandelt werden. Die Präsentation der Umfrage kann beispielsweise vom Werbeserver auf eine solche Weise gesteuert werden, dass eine tägliche Mindestanzahl von Präsentationen der Umfrage gewährleistet wird. Optional kann die Präsentation der Umfrage an eine Häufigkeitsgrenze gebunden sein, um zu vermeiden, dass die Umfrage zu oft demselben Benutzer präsentiert wird. Eine Darstellung von vom Trainingsbenutzer als Reaktion auf die Umfrage gegebenen Antworten kann beispielsweise der Vorrichtung (oder einer anderen Entität, die von der Vorrichtung getrennt ist) bereitgestellt werden (z. B. über eine HTTP-Anforderung), die diese Darstellung mit Informationen über das Zugriffsverhalten des Trainingsbenutzers kombiniert. Diese Kombination kann beispielsweise auf einer Kennung (z. B. einer anonymen oder anonymisierten Kennung) des Trainingsbenutzers und/oder des Web-Browsers und/oder des elektronischen Geräts basieren, auf dem der Web-Browser des Trainingsbenutzers läuft. Zum Beispiel kann ein Trainingsbenutzer anhand einer Kennung (z. B. einem soUnique User Identifier, UUID) identifiziert werden, die in einem Cookie des Trainingsbenutzers gespeichert wird und die sowohl dann ausgelesen wird, wenn der Trainingsbenutzer an der Umfrage teilnimmt, als auch dann, wenn Informationen über das Zugriffsverhalten des Trainingsbenutzers gesammelt werden. Dies kann durch Assoziieren sowohl der Umfrage als auch der Webseiten, auf die der Trainingsbenutzer zugegriffen hat, mit einem Web-Bug oder Script zum Verfolgen des Trainingsbenutzers erfolgen, wobei das Web-Bug oder das Script zum Beispiel bewirkt, dass derselbe Webserver über die Teilnahme des Trainingsbenutzers an der Umfrage und über Zugriffe des Trainingsbenutzers auf die Webseite informiert wird. Alternativ kann ein elektronischer Fingerabdruck des vom Trainingsbenutzer s zum Zugreifen auf Webseiten benutzten Geräts beispielsweise als Kennung verwendet werden. Die Kennung kann beispielsweise mit der Darstellung von vom Trainingsbenutzer gegebenen Antworten in der Umfrage und mit den Informationen über das Zugriffsverhalten des Trainingsbenutzers assoziiert werden. Zusätzlich oder alternativ können die Informationen über die Charakteristik eines Trainingsbenutzers, enthalten in einem Trainingssatz der Trainingssätze, von einer Datenquelle wie z. B. einer Nielsen-Datenbank oder einer Datenbank erhalten werden, die von den Trainingsbenutzern bereitgestellte (z. B. demografische) Informationen über die Trainingsbenutzer speichert, z. B. dann, wenn diese sich für einen Service registrieren oder einen Vertrag abschließen.
-
Gemäß einer Ausführungsform aller Aspekte der Erfindung wird eine wirkliche Adresse des aktuellen Benutzers durch eine Anonymisiereinheit anonymisiert, und die Informationen über das Zugriffsverhalten des aktuellen Benutzers werden mit der anonymisierten Adresse und nicht mit der wirklichen Adresse erhalten. Die Adresse kann beispielsweise eine IP-(Internet Protocol)-Adresse des Benutzers sein. Die Anonymisiereinheit kann beispielsweise zwischen einen Web-Browser des aktuellen Benutzers und die Vorrichtung geschaltet werden (die beispielsweise ein Web-Browser oder ein Teil davon sein kann). Auf diese Weise ist die wirkliche Adresse des aktuellen Benutzers der Vorrichtung unbekannt, so dass die Privatsphäre des aktuellen Benutzers geschützt wird. Ebenso kann auch die wirkliche Adresse der Trainingsbenutzer durch die Anonymisiereinheit anonymisiert werden, z. B. dann, wenn die Informationen über das Zugriffsverhalten und/oder die Informationen über die Charakteristik des Trainingsbenutzers bereitgestellt werden. Die Anonymisiereinheit kann beispielsweise ein Proxy-Server wie beispielsweise ein Reverse-Proxy-Server sein.
-
In dieser Ausführungsform können die Informationen über die vorhergesagte Charakteristik des aktuellen Benutzers beispielsweise mit der anonymisierten Adresse und nicht der wirklichen Adresse bereitgestellt werden.
-
Gemäß einer Ausführungsform aller Aspekte der Erfindung werden die Informationen über die vorhergesagte Charakteristik des aktuellen Benutzers so formatiert, dass sie mit einem Format übereinstimmen, das von einem Werbeserver benötigt wird, der das Ausrichten der Informationen auf den aktuellen Benutzer zumindest auf der Basis der Informationen über die vorhergesagte Charakteristik ausführt. Verschiedene Werbeserver können beispielsweise unterschiedliche Formate für die vorhergesagte Charakteristik erfordern. Ein Beispiel für ein Format ist ein Schlüsselwertpaar (Key-Value) (wie Geschlecht – männlich, oder Alter – 20). Verschiedene Werbeserver können beispielsweise verschiedene Schlüsselwertpaare benutzen, so dass eine entsprechende Formatierung unvermeidlich sein kann. Die Formatierung kann beispielsweise durch eine Formatiereinheit erfolgen, die Teil der Vorrichtung oder einer anderen Einheit sein kann, die separat von der Vorrichtung ist.
-
Gemäß einer Ausführungsform aller Aspekte der Erfindung werden die Informationen über die vorhergesagte Charakteristik des aktuellen Benutzers einem Werbeserver bereitgestellt, der das Targeting der Informationen für den aktuellen Benutzer zumindest auf der Basis der Informationen über die vorhergesagte Charakteristik ausführt. Die Informationen über die vorhergesagte Charakteristik können dem Werbeserver beispielsweise direkt oder indirekt bereitgestellt werden. Zum Beispiel können die Informationen über die vorhergesagte Charakteristik einem Web-Browser des aktuellen Benutzers bereitgestellt und dann vom Web-Browser dem Werbeserver bereitgestellt werden, z. B. mit Hilfe einer Ortsumleitung (location redirect), die mit Informationen über die vorhergesagte Charakteristik angereichert ist. Zum Beispiel können Informationen über das Zugriffsverhalten des aktuellen Benutzers zunächst der Vorrichtung (z. B. einem Webserver) bereitgestellt werden, die die Charakteristiken des aktuellen Benutzers als Reaktion auf die erhaltenen Informationen über das Zugriffsverhalten des aktuellen Benutzers vorhersagt. Die Informationen über das Zugriffsverhalten des aktuellen Benutzers können beispielsweise zumindest teilweise in einem Cookie auf dem Web-Browser des aktuellen Benutzers gespeichert werden (ein weiterer Teil dieser Informationen kann beispielsweise ein Inhaltsklassifikator sein, der zusammen mit dem Inhalt des Cookies bereitgestellt wird, wie oben erläutert wurde), und wird dann bereitgestellt (z. B. über HTTP GET), wenn der aktuelle Benutzer auf Inhalt zugreift, der mit dem Cookie assoziiert ist (d. h. der auf einer mit dem Cookie assoziierten Domäne/Pfad-Kombination bereitgestellt wird). Die Antwort (z. B. über eine HTTP-Response) an den Web-Browser des aktuellen Benutzers kann dann beispielsweise eine Anweisung zum Speichern von aktualisierten Informationen über das Zugriffsverhalten des aktuellen Benutzers in das Cookie auf dem Web-Browser und eine Ortsumleitungsanforderung (z. B. über HTTP LOCATION) enthalten, die die Adresse des Werbeservers vorgibt und ferner Informationen über die vorhergesagte Charakteristik enthält. Auf diese Weise können Informationen über das Zugriffsverhalten des aktuellen Benutzers gesammelt und Informationen über die vorhergesagte Charakteristik dem Werbeserver bereitgestellt werden, wobei der einzige Eingriff in oder die einzige Änderung von Inhalt (z. B. die Webseite eines Herausgebers), auf den der aktuelle Benutzer zugreift, die Hinzufügung einer Anforderung von Daten (von einer mit der Vorrichtung assoziierten Domäne) zu dem Inhalt ist.
-
In dieser Ausführungsform kann der Werbeserver die Speicherung der Informationen über die vorhergesagte Charakteristik in einem Cookie auf einem Web-Browser des aktuellen Benutzers auslösen. Die Informationen über das vorhergesagte Profil stehen dem Werbeserver dann auf jeder Webseite zur Verfügung, die bewirkt, dass der Web-Browser des aktuellen Benutzers den Inhalt des Cookie des Werbeservers dem Werbeserver bereitstellt, z. B. weil eine Anforderung von Daten (z. B. ein Web-Bug) in Verbindung mit dem Werbeserver oder ein Script für die Kommunikation mit dem Werbeserver in der Webseite enthalten oder damit assoziiert ist. Der Werbeserver kann somit prädiktives verhaltensorientiertes Targeting (auf der Basis einer von der Vorrichtung bereitgestellten vergangenen Vorhersage der Charakteristik des aktuellen Benutzers) selbst dann ausführen, wenn eine Webseite, auf die der aktuelle Benutzer zugegriffen hat, keine Anforderung von Daten in Verbindung mit der Vorrichtung enthält (die eine neue Vorhersage auslösen würde), sondern nur eine mit dem Werbeserver assoziierte Anforderung von Daten umfasst (wobei die im Cookie des Werbeservers gespeicherte vorhergesagte Charakteristik natürlich nach einiger Zeit veraltet, wenn sie nicht durch die Vorrichtung aufgefrischt wird).
-
Gemäß einer Ausführungsform aller Aspekte der Erfindung wird eine aktualisierte Version des Satzes von Parametern durch das Trainingsmodul ermittelt und dem Vorhersagemodul bereitgestellt jedesmal dann, wenn eine Anzahl von neuen und/oder zumindest teilweise aktualisierten Trainingssätzen einen vordefinierten Wert erreicht hat. Die Trainingssätze können beispielsweise in einer oder mehreren Datenbanken gespeichert werden. Darin können zum Beispiel die jeweiligen Informationen über das Zugriffsverhalten der Trainingsbenutzer in einem ersten Teil der Datenbank (oder in einer ersten Datenbank) gespeichert werden und die jeweiligen Informationen über die Charakteristik der Trainingsbenutzer können in einem zweiten Teil der Datenbank (oder einer zweiten Datenbank) gespeichert werden, wobei Informationen, die zum selben Trainingsbenutzer gehören, z. B. über eine Kennung (z. B. eine anonyme oder anonymisierte Kennung) des Trainingsbenutzers verknüpft werden können. Alternativ können die Trainingssätze gemeinsam in derselben Datenbank gespeichert werden, z. B. nachdem die Informationen über das Zugriffsverhalten eines Trainingsbenutzers und die Informationen über die Charakteristik des Trainingsbenutzers miteinander assoziiert wurden. Die Informationen über das Zugriffsverhalten eines in einem Trainingssatz enthaltenen Trainingsbenutzers können beispielsweise jedesmal dann aktualisiert werden, wenn neue Informationen über das Zugriffsverhalten des Trainingsbenutzers verfügbar werden (z. B. dann, wenn Inhalt eines Cookie bereitgestellt wird, das auf einem Web-Browser des Trainingsbenutzers gesetzt und mit einer Entität (z. B. der Vorrichtung) assoziiert ist, die diese Informationen zur Datenbank leitet). Ebenso können die Informationen über die Charakteristik eines Trainingsbenutzers aktualisiert werden, wenn neue verwandte Informationen verfügbar werden, wobei diese neuen Informationen beispielsweise von einer Online-Umfrage und/oder von anderen Datenquellen erhalten werden können. Ein Trainingssatz kann beispielsweise dann als neu angesehen werden, wenn zumindest eine der Informationen über das Zugriffsverhalten des Trainingsbenutzers und der Informationen über die Charakteristik des Trainingsbenutzers zuvor nicht verfügbar war. Ein Trainingssatz kann beispielsweise dann als zumindest teilweise aktualisiert angesehen werden, wenn zumindest eine der Informationen über das Zugriffsverhalten des Trainingsbenutzers und der Informationen über die Charakteristik des Trainingsbenutzers aktualisiert wurde. Zum Beispiel kann ein einziger Zähler benutzt werden, um sowohl neue eingehende Trainingssätze als auch aktualisierte Trainingssätze zu zählen. Wenn der Zähler den vordefinierten Wert übersteigt, dann kann das Trainingsmodul angeregt werden, eine aktualisierte Version des Satzes von Parametern zu ermitteln (z. B. auf der Basis nur der neuen und aktualisierten Trainingssätze oder auf der Basis der neuen und aktualisierten Trainingssätze sowie von zumindest einigen Trainingssätzen, die weder neu noch aktualisiert waren (z. B. alle verfügbaren Trainingssätze)), und sie dem Vorhersagemodul bereitzustellen. Der vordefinierte Wert kann zum Beispiel einen ersten Wert in einer Startphase und einen zweiten Wert in einer der Startphase folgenden Phase haben. Zum Beispiel kann der erste Wert kleiner sein als der zweite Wert, so dass der Satz von Parametern für das Modell schnell für eine Vorhersage verfügbar wird. Eine höhere Qualität des Satzes von Parametern wird dann in der Phase nach der Startphase erzielt.
-
Gemäß einer Ausführungsform aller Aspekte der Erfindung ist die Vorrichtung ein Webserver oder ein Teil davon. Der Webserver kann beispielsweise mit einer Domäne assoziiert sein, für die Cookies eines Dritten in Web-Browsern des aktuellen Benutzers und der Trainingsbenutzer gesetzt wurden.
-
Gemäß einer Ausführungsform aller Aspekte der Erfindung umfasst die Vorrichtung ferner das Trainingsmodul. Ein Prozessor der Vorrichtung kann dann beispielsweise gemeinsam die Funktionalität des Vorhersagemoduls und die Funktionalität des Trainingsmoduls implementieren. Diese Funktionalitäten können jedoch von unterschiedlichen Threads des Prozessors gehandhabt werden. Alternativ kann die Vorrichtung separate Prozessoren zum jeweiligen Ausführen der Funktionalität des Vorhersagemoduls und der Funktionalität des Trainingsmoduls umfassen. Weiter kann alternativ das Trainingsmodul nicht in der Vorrichtung enthalten sein, kann aber in einer Entität enthalten sein, die sich von der Vorrichtung unterscheidet (z. B. in einem Server (z. B. einem Backend-Server), der mit der Vorrichtung kommuniziert).
-
Gemäß einer Ausführungsform aller Aspekte der Erfindung werden zwei oder mehr Charakteristiken des aktuellen Benutzers vorhergesagt, und jede der Charakteristiken wird von einem jeweiligen Modell vorhergesagt. Zwei oder mehr Charakteristiken des aktuellen Benutzers können dann beispielsweise zum Bilden eines Profils des aktuellen Benutzers berücksichtigt werden. Für jedes Modell kann dann ein jeweiliger Satz von Parametern vom Trainingsmodul (oder von jeweiligen Trainingsmodulen) ermittelt und dem Vorhersagemodul (oder jeweiligen Vorhersagemodulen) von Zeit zu Zeit für Aktualisierungszwecke bereitgestellt werden.
-
In dieser Ausführungsform kann eine Plausibilitätsprüfung mit Bezug auf zumindest zwei von ihren jeweiligen Modellen vorhergesagte Charakteristiken durchgeführt werden. Zum Beispiel kann, wenn eine Charakteristik ein Familienstand des aktuellen Benutzers ist und eine andere Charakteristik des aktuellen Benutzers eine Altersgruppe des aktuellen Benutzers ist, dann geprüft werden, ob die Familienstände im Hinblick auf die Altersgruppe plausibel sind, um widersprüchliche Ergebnisse zu vermeiden. Solche widersprüchlichen Ergebnisse können dem Trainingsmodul (oder Trainingsmodulen) zurückgemeldet werden, um den Vorgang des Ermittelns der jeweiligen Parametersätze zu verbessern.
-
Gemäß einer Ausführungsform aller Aspekte der Erfindung betrifft die Charakteristik demografische Informationen, insbesondere Informationen über eines von Geschlecht, Rasse, Alter, Familienstand, Behinderungen, Mobilität, Eigenheimbesitz, Anstellungsstatus, Wohnort und Einkommen, oder auch Informationen über ein Interesse, insbesondere ein Interesse an einem bestimmten Thema oder Produkttyp.
-
Weitere vorteilhafte Ausführungsformen der Erfindung werden durch die ausführliche Beschreibung gegeben, die nachfolgend in Verbindung mit den begleitenden Zeichnungen gegeben wird. Es versteht sich allerdings, dass die Zeichnungen lediglich zur Illustration und nicht als eine Definition der Grenzen der Erfindung ausgelegt sind, hinsichtlich welcher auf die beigefügten Ansprüche Bezug zu nehmen ist. Ferner versteht es sich, dass die Zeichnungen nicht maßstabsgetreu sind und dass sie lediglich die darin beschriebenen Strukturen und Prozeduren von der Idee her illustrieren sollen. Insbesondere ist die Anwesenheit von Merkmalen in den Zeichnungen nicht so zu verstehen, dass diese Merkmale für die Erfindung obligatorisch wären.
-
KURZBESCHREIBUNG DER FIGUREN
-
In den Figuren zeigen:
-
1: ein schematisches Blockdiagramm einer beispielhaften Ausführungsform eines Systems für prädiktives verhaltensorientiertes Targeting gemäß der Erfindung;
-
2a: ein Ablaufdiagramm einer beispielhaften Ausführungsform eines Verfahrens gemäß der Erfindung;
-
2b: ein Ablaufdiagramm einer weiteren beispielhaften Ausführungsform eines Verfahrens gemäß der Erfindung;
-
3: ein schematisches Blockdiagramm einer beispielhaften Ausführungsform einer Vorrichtung gemäß der Erfindung;
-
4: eine schematische Darstellung einer Webseite mit einem eingebetteten Web-Bug, das prädiktives verhaltensorientiertes Targeting auslöst, gemäß einer beispielhaften Ausführungsform der Erfindung;
-
5a: eine Darstellung von mehreren Trainingssätzen gemäß einer beispielhaften Ausführungsform der Erfindung;
-
5b: eine schematische Illustration von zwei Sätzen von Vektoren, die durch eine Hyperebene einer Support-Vector-Maschine getrennt sind, gemäß einer beispielhaften Ausführungsform der Erfindung; und
-
6: ein Ablaufdiagramm einer beispielhaften Ausführungsform eines Verfahrens zum Vorhersagen einer Charakteristik eines Benutzers auf der Basis eines Satzes von Parametern und auf der Basis eines beobachteten Klickverhaltens gemäß einer beispielhaften Ausführungsform der Erfindung.
-
AUSFÜHRLICHE BESCHREIBUNG VON AUSFÜHRUNGSFORMEN DER ERFINDUNG
-
1 ist ein Blockdiagramm einer beispielhaften Ausführungsform eines Systems gemäß der Erfindung.
-
Das System von 1 umfasst ein vom Benutzer 6 betriebenes Terminal 1, einen Werbeserver 3, eine optionale Anonymisiereinheit 4 und ein Vorhersagesystem 5, das wiederum mehrere nachfolgend näher erörterte Komponenten umfasst.
-
Terminal 1 wird durch einen beliebigen Computer repräsentiert, der von einem Benutzer 6 zum Interagieren mit einer Webseite 2 im Internet benutzt wird. Der Computer des Benutzers kann ein Personal Computer oder ein anderes netzwerkfähiges Gerät wie ein Digital Assistant (PDA), ein Mobiltelefon wie ein Smartphone, ein Pager, ein Videospielsystem usw. sein. Die Webseite 2 ist ein Ort im Internet, der im Besitz von Personen ist, die zum Beispiel Medienseiten, soziale Netzwerke und/oder Einzelhändlerseiten bereitstellen.
-
Das Vorhersagesystem 5 kann beispielsweise vom Besitzer der Webseite 2 betrieben werden, der auf seiner Webseite 2 Werbeinformationen auf einen Benutzer 6 auf der Basis von einer oder mehreren vorhergesagten Charakteristiken des Benutzers 6 ausrichten möchte. Die Erfindung ist aber auch besonders dann vorteilhaft, wenn das Vorhersagesystem 5 von einem Diensteanbieter betrieben wird, der den Dienst des Vorhersagens von einer oder mehreren Charakteristiken (z. B. eines Profils) des Benutzers 6 der Webseite 2 anbietet, um das Ausrichten (Targeting) von Werbeinformationen durch den Werbeserver 3 auf den Benutzer 6 auf der Basis der vorhergesagten Charakteristiken zu ermöglichen. Dann wird der Dienst des Vorhersagesystems 5 Besitzern oder Herausgebern von Webseiten angeboten, um Besuchern ihrer Webseiten geeignete Werbungen zu liefern.
-
Es ist leicht zu verstehen, dass 1 zur Vereinfachung der Darstellung die Anwesenheit von nur einem Benutzer 6 zeigt, der auf die Webseite 2 zugreift. Auf die Webseite 2 können mehrere Benutzer über jeweilige Terminals zugreifen, und für jeden dieser Benutzer könnte das Vorhersagesystem 5 ein vorhergesagtes Profil bereitstellen. Ebenso soll in 1 die Anwesenheit von nur einer Webseite 2 und eines assoziierten Werbeservers 3 die Darstellung vereinfachen. Das Vorhersagesystem 5 kann natürlich mit mehreren unterschiedlichen Webseiten und assoziierten Werbeservern arbeiten.
-
Das Vorhersagesystem 5 umfasst eine Cookie-Verarbeitungseinheit 50, ein Vorhersagemodul 51, ein Trainingsmodul 52, eine Datenbank 53 und eine optionale Ausgabeformatierungseinheit 54. Grundsätzlich können alle Komponenten als getrennte Vorrichtungen implementiert werden, die miteinander kommunizieren. Diese Vorrichtungen können an voneinander entfernten Orten positioniert werden, z. B. mit Entfernungen von mehreren hundert Metern dazwischen. Ebenso gut können einige dieser Komponenten in einer oder mehreren jeweiligen getrennten Vorrichtungen vereinigt werden, oder alle Komponenten können zu einer Vorrichtung vereinigt werden. Teile des Vorhersagesystems 5 können Funktionalität eines Web-Browsers implementieren. Demgemäß können zumindest Teile des Vorhersagesystems 5 einen Web-Browser mit erweiterter Funktionalität bilden.
-
Besonders relevant für den Betrieb des Vorhersagesystems 5 ist ein Vorhersagemodul 51, das Informationen über das Klickverhalten (als spezieller Fall des Zugriffsverhaltens) eines Benutzers 6 (eines aktuellen Benutzers), der auf einem vom Terminal 1 betriebenen Web-Browser auf die Webseite 2 zugreift, erhält (siehe Schritt 101) und als Reaktion auf die und auf der Basis der Informationen über das Klickverhalten und auf der Basis eines Vorhersagemodells, das wiederum auf einem Satz von Parametern basiert, eine Charakteristik des Benutzers 6 vorhersagt (siehe Schritt 103). Das Vorhersagemodul 51 kann ebenso gut mehrere Charakteristiken auf der Basis von jeweiligen Vorhersagemodellen mit jeweiligen Parametersätzen vorhersagen. Diese ein oder mehreren vorhergesagten Charakteristiken bilden ein vorhergesagtes Profil, das vom Vorhersagemodul 51 an die Ausgabeformatierungseinheit 54 ausgegeben wird (siehe Schritt 103) und die Basis für die Auswahl einer Werbung für den Einschluss in die Webseite 2 bildet, die besonders auf den Benutzer 6 ausgerichtet ist. Die Ausgabeformatierungseinheit 54 ist jedoch optional, ihre Funktionalität kann beispielsweise im Vorhersagemodul 51 enthalten sein oder ist möglicherweise nicht notwendig, da beispielsweise die Ausgabe des Vorhersagemoduls 51 bereits die Formatierungsanforderung des Werbeservers 3 erfüllt.
-
Eine weitere besonders relevante Komponente des Vorhersagesystems 5 ist das Trainingsmodul 52, das Updates der Sätze von Parametern ermittelt und diese Updates dem Vorhersagemodul 51 bereitstellt (siehe Schritt 110), so dass sie von seinen Vorhersagemodellen zum Vorhersagen der Charakteristiken des Benutzers 6 benutzt werden können. Diese Updates werden vom Trainingsmodul 52 auf der Basis von Trainingssätzen ermittelt, die in der Datenbank 53 gespeichert und aus dieser erhalten werden (siehe Schritt 109), wobei jeder Trainingssatz für einen mit dem Trainingssatz assoziierten jeweiligen Trainingsbenutzer Informationen über sein Klickverhalten sowie Informationen über seine Charakteristiken umfasst, die beispielsweise direkt und indirekt von Online-Umfragen abgeleitet werden können.
-
Gemäß Ausführungsformen der Erfindung sind der Betrieb des Vorhersagemoduls 51 und der des Trainingsmoduls 52 entkoppelt und asynchron. Das Vorhersagemodul 51 ist ein Online-Modul, das auf eingehende Informationen über ein Klickverhalten des Benutzers 6, der auf die Webseite 2 zugreift, reagiert (siehe Schritt 101) und in Echtzeit ein vorhergesagtes Profil für den Benutzer 6 erzeugt (siehe Schritt 103). Im Gegensatz dazu werden die Updates der Sätze von Parametern nicht in Echtzeit ermittelt und bereitgestellt. Ein mögliches Trigger-Ereignis für ein Update der Sätze von Parametern durch das Trainingsmodul 52 kann beispielsweise sein, dass in der Datenbank 53 eine Anzahl von neu empfangenen und aktualisierten Trainingssätzen eine vordefinierte Anzahl erreicht hat. Diese funktionelle Trennung des Vorhersagemoduls 51 und des Trainingsmoduls 52 wird durch die Verwendung von parametrischen Vorhersagemodellen möglich, die keinen Zugriff auf eine Datenbank 53 für jede Vorhersage erfordern, die gemacht werden soll. Sie erlaubt eine erheblich schnellere Vorhersage von Profilen durch das Vorhersagemodul 53 (in der Größenordnung von nur ein paar Millisekunden) und weist den weiteren Vorteil auf, dass Vorhersagen für Benutzer gemacht werden können, für die kein dediziertes Profil zur Verfügung steht, wie dies im Allgemeinen in verhaltensorientierten Targeting-Systemen des Standes der Technik erforderlich ist. Daher können Profile für Benutzer vorhergesagt werden, die dem Vorhersagesystem 5 vor dem erstmaligen Zugriff auf die Webseite 2 völlig unbekannt waren („Erstklicker”), und grundsätzlich mit derselben Geschwindigkeit wie bei einem Benutzer, für den bereits ein ausführliches Klickverhalten zur Verfügung steht.
-
Die Cookie-Verarbeitungseinheit 50 des Vorhersagemoduls 5 handhabt das Setzen von Cookies (siehe Schritt 102) und den Empfang von in Cookies gespeicherten Informationen von (siehe Schritt 100) dem Web-Browser von Terminal 1. Dies kann zum Teil mit von einem Web-Browser implementierter Funktionalität geschehen. Wenn Informationen in den Cookies komprimiert und/oder verschlüsselt sind, dann kann auch die Kompression/Dekompression und/oder die Verschlüsselung/Entschlüsselung von der Cookie-Verarbeitungseinheit ausgeführt werden. Cookies repräsentieren eine Möglichkeit zum Erhalten von Informationen über das Klickverhalten des Benutzers 6. Dazu ist es notwendig, dass ein so genanntes Web-Bug 20 (auch als Tracking-Pixel oder Blind-GIF bezeichnet) vom Herausgeber der Webseite in die Webseite 2 eingebaut wird. Alternativ kann zum Beispiel ein Tracking-Script zentral in der Website eingesetzt werden, die die Webseite umfasst, und kann dann mit einigen oder allen Webseiten der Website assoziiert werden. Das Web-Bug kann beispielsweise ein HTML-Image-Tag sein, das einen URL (Uniform Resource Locator) vorgibt, wo Bilddaten heruntergeladen werden sollen (alternativ kann das Web-Bug auch als Script wie z. B. als JavaScript-Bildobjekt implementiert werden). Diese Bilddaten sind gewöhnlich nur ein 1×1 Pixelbild, das den Rest der Webseite 2 nicht stört (es kann beispielsweise transparent sein). Das Weg-Bug bewirkt jedoch, dass der Web-Browser die Bilddaten von dem Webserver anfordert, der mit der im URL vorgegebenen Domäne assoziiert sind. Im Vorhersagesystem 5 ist die Cookie-Verarbeitungseinheit 50 zum Setzen von Cookies über Web-Browser verantwortlich, die Daten von der mit dem Vorhersagesystem 5 assoziierten Domäne anfordern und noch kein Cookie für diese Domäne gesetzt haben (siehe Schritt 102). Die Cookies können zum Beispiel zeitlich begrenzt sein, z. B. auf ein Jahr. Nachfolgend wird beispielhaft angenommen, dass die Domäne des Vorhersagesystems 5 „nugg.ad” ist. Wenn nun der Benutzer 6 zum ersten Mal auf die Webseite 2 mit dem Web-Bug 20 darin zugreift (oder nach dem Löschen oder dem Ablauf eines bereits existierenden Cookie erneut auf die Site zugreift) und wenn das Web-Bug 20 Bilddaten in der Domäne „nugg.ad” vorgibt, wird die Cookie-Verarbeitungseinheit 50 auf den Empfang der Anforderung von Bilddaten hin mit Anweisungen für den Web-Browser vom Benutzer 6, ein Cookie im Web-Browser (HTTP Set-Cookie) für die Domäne „nugg.ad” zu speichern (der Pfadparameter des Cookie kann beispielsweise einfach „1” sein), antworten. Wenn der Benutzer 6 mit seinem Web-Browser erneut auf eine das Web-Bug 20 enthaltende Webseite 2 oder auf eine andere Webseite zugreift, die ein Web-Bug hat, der Bilddaten in der Domäne „nugg.ad” vorgibt, dann stellt der Web-Browser von Benutzer 6 automatisch den Inhalt des gespeicherten Cookie der Cookie-Verarbeitungseinheit 50 bereit (siehe Schritt 100). In ihrer Antwort kann dann die Cookie-Verarbeitungseinheit 50 aktualisierte Informationen in das Cookie schreiben, das wiederum im Web-Browser gespeichert werden soll (siehe Schritt 102). Da das Cookie zu einer Domäne gehört, die sich von der Domäne von Webseite 2 unterscheidet, wird dieses Cookie gewöhnlich als „Cookie eines Dritten” (Third-Party-Cookie) bezeichnet. In Ausführungsformen der vorliegenden Erfindung wird das Cookie im Web-Browser von Benutzer 6 (und gleichermaßen in jeweiligen Web-Browsern von anderen Benutzern) zum Speichern von Informationen über das Klickverhalten von Benutzer 6 auf eine dezentralisierte Weise benutzt.
-
In Ausführungsformen der Erfindung werden die Informationen über das Klickverhalten durch ein Inhaltskategoriehistogramm dargestellt, das anzeigt, wie oft Zugriffe durch einen Benutzer auf Webseiten, die zu einer bestimmten Inhaltskategorie gehören, beobachtet wurden. Beispiele für Inhaltskategorien sind Kultur, Sport, Kunst, Unterhaltung, Geschäftliches, Politik usw. Dieses Inhaltskategoriehistogramm wird in einem Cookie gespeichert.
-
Die Entscheidung darüber, zu welcher Inhaltskategorie die Webseite 2 gehört, auf die der Benutzer 6 zugreift, erfolgt durch die Entscheidungseinheit 501, die in 1 beispielhaft als eine Subkomponente der Cookie-Verarbeitungseinheit 50 angenommen wird. Ebenso gut könnte die Entscheidungseinheit auch eine eigene Komponente des Vorhersagesystems 5 sein. Die von der Entscheidungseinheit 501 getroffene Entscheidung basiert beispielsweise auf einem Inhaltsklassifikator, der beispielsweise aus einem begrenzten Satz von Inhaltskategorien durch den Herausgeber oder Besitzer der Webseite 2 ausgewählt wird und als Parameter in das Web-Bug 20 von Webseite 2 einbezogen wird. Alternativ kann die Entscheidungseinheit 501 eine Inhaltskategorie aus einem Titel oder zumindest einem Teil des Inhalts von Webseite 2 ableiten, z. B. durch Parsen. Eine Kennung von Webseite 2, die es einer Entscheidungseinheit 5 ermöglicht, auf die Webseite 2 zuzugreifen, kann beispielsweise als HTTP-Referer erhalten werden oder kann explizit vom Herausgeber oder Besitzer der Webseite 2 als Parameter in das Web-Bug 20 einbezogen werden. Wenn der Benutzer 6 auf die Webseite 2 zugreift und der Web-Browser vom Benutzer 6 das Web-Bug 20 parst und dementsprechend Bilddaten von der mit dem Vorhersagesystem 5 assoziierten Domäne „nugg.ad” anfordert, dann ermittelt die Entscheidungseinheit 501 somit die Inhaltskategorie von Webseite 2. Wenn zuvor bereits ein Cookie für die Domäne „nugg.ad” am Web-Browser von Benutzer 6 gesetzt wurde, dann wird der Inhalt dieses Cookie der Cookie-Verarbeitungseinheit 50 beim Anfordern der Bilddaten bereitgestellt. Die Entscheidungseinheit 501 kann dann das von dem Cookie erhaltene Inhaltskategoriehistogramm aktualisieren und das aktualisierte Inhaltskategoriehistogramm in das Cookie schreiben. Wenn zuvor noch kein Cookie für die Domäne „nugg.ad” am Web-Browser von Benutzer 6 gesetzt wurde, dann erzeugt die Entscheidungseinheit 501 ein leeres Inhaltskategoriehistogramm, fügt einen Treffer für die Inhaltskategorie von Webseite 2 zum Inhaltskategoriehistogramm hinzu und schreibt dieses Inhaltskategoriehistogramm in ein Cookie für die Domäne „nugg.ad” am Web-Browser von Benutzer 6. Folglich reflektiert, wenn das Web-Bug 20 in mehreren unterschiedlichen Webseiten mit jeweils unterschiedlichem Inhalt enthalten ist und wenn der Benutzer 6 auf mehrere dieser Webseiten zugreift, das im Cookie auf dem Web-Browser des Benutzers gespeicherte Inhaltsdiagramm adäquat die Inhaltskategorien, an denen der Benutzer interessiert ist. Ferner ist durchaus klar, dass die Entscheidungseinheit 501 der Cookie-Verarbeitungseinheit 50 ein Inhaltskategoriediagramm (z. B. zum Vorhersagemodul 51 wie durch Pfeil 101 angedeutet) bereits bei einem ersten Klick vom Benutzer 6 auf einer Webseite bereitstellen kann, die das Web-Bug 20 enthält, d. h. wenn noch kein Cookie für die Domäne „nugg.ad” auf dem Web-Browser von Benutzer 6 gespeichert war. Es ist auch offensichtlich, dass die Cookie-Messeinheit 50 eine aktualisierte Version des Inhaltskategoriehistogramms für den Benutzer 6 der Datenbank 53 (wie durch Pfeil 108 angedeutet) jedesmal bereitstellen kann, wenn der Benutzer 6 auf eine Webseite (wie die Webseite 2) zugreift, die einen Web-Bug 20 (oder ein ähnliches, mit der Domäne „nugg.ad” assoziiertes Web-Bug) enthält. Das aktualisierte Inhaltskategoriehistogramm eines Benutzers (der in diesem Zusammenhang als „Trainingsbenutzer” bezeichnet wird) bildet einen Teil eines in der Datenbank 53 gespeicherten Trainingssatzes, wobei der andere Teil Informationen über eine oder mehrere Charakteristiken des Trainingsbenutzers umfasst, die beispielsweise von einer mit dem Trainingsbenutzer durchgeführten Online-Umfrage erhalten wurden.
-
Die Ausgabeformatierungseinheit 54 des Vorhersagesystems 5 empfängt vorhergesagte Profile vom Vorhersagemodul 51 (siehe Schritt 103) und wandelt diese Profile in ein Format um, das der Werbeserver 3 als finaler Empfänger des vorhergesagten Profils benötigt (siehe Schritt 104). Das Formatieren kann logisches und/oder technisches Formatieren beinhalten. Das logische Formatieren kann beispielsweise das Kombinieren von einer oder mehreren vorhergesagten Charakteristiken zu einer neuen Charakteristik oder das Ableiten einer Charakteristik von einer oder mehreren vorhergesagten Charakteristiken beinhalten. Das technische Formatieren kann beispielsweise das Umwandeln eines/r Datenformats und/oder -syntax von einer oder mehreren vorhergesagten Charakteristiken beinhalten. Die Formatanforderungen von Werbeserver 3 können beispielsweise im Web-Bug 20, z. B. über einen oder mehrere Parameter davon definiert werden.
-
Die Anonymisiereinheit 4 ist eine optionale Komponente zum Lösen von Problemen in Verbindung mit dem Schutz der Privatsphäre, die beim Verfolgen des Klickverhaltens von Benutzern entstehen können. Dazu wird die Kommunikation zwischen dem Web-Browser von Benutzer 6 und dem Vorhersagesystem 5 über die Anonymisiereinheit 4 geleitet, die die IP-Adresse des Benutzers 6 anonymisiert und dem Vorhersagesystem 5 nur diese anonymisierte IP-Adresse bereitstellt. Das Vorhersagesystem 5 kann somit das Klickverhalten von Benutzer 6 nicht mit der wirklichen IP-Adresse des Benutzers 6 in Verbindung bringen. Trotzdem kann, damit das vorhergesagte Profil zurück zum Web-Browser des Benutzers 6 gesendet werden kann, das Vorhersagesystem 5 die anonymisierte IP-Adresse des Benutzers 6 benutzen, die dann von der Anonymisiereinheit 4 auf die ursprüngliche IP des Benutzers 6 abgebildet wird. Die Anonymisiereinheit 4 wird beispielsweise von Dritten betrieben, die sich bereit erklärt haben, das aufgezeichnete Klickverhalten und/oder die resultierenden vorhergesagten Profile auf keinerlei Weise mit der IP-Adresse eines Benutzers zu verknüpfen. Die Anonymisierheit 4 dient als Verarbeiter von Daten für das Vorhersagesystem 5 und hat vorzugsweise eine vertragliche Vereinbarung, dass jegliche Datenkommunikation zwischen dem Vorhersagesystem 5 und Web-Browsern von Benutzern (wie Benutzer 6) durch einen Anonymisierungsserver in einer Datenzentrale gesendet wird, die nur von der Anonymisiereinheit 4 verwaltet wird. Das Vorhersagesystem 5 hat keinen Zugang zu diesem Server. Die Anonymisiereinheit 4 erzeugt eine anonymisierte IP-Adresse (z. B. durch Anwenden einer Hash-Funktion auf die IP-Adresse). Die Anonymisiereinheit 4 speichert vorzugsweise keine Daten über das Klickverhalten eines Benutzers. Die Anonymisiereinheit 4 leitet diese Daten nur weiter. Die Anonymisiereinheit 4 kann beispielsweise einen Proxy, insbesondere einen Reverse-Proxy repräsentieren. Als weiteres Merkmal kann die Anonymisiereinheit 4 Informationen über den Ort eines Benutzers (sogenannte Geo-Informationen), z. B. Informationen über den Staat oder sogar den Bundesstaat der IP-Adresse des Benutzers ableiten, z. B. unter Verwendung eines Apache-Servermoduls wie „Geo-IP”. Eine genaue Information über den tatsächlichen Ort des Benutzers kann mit diesem Modul nicht gewonnen werden, dies ist lediglich eine wahrscheinliche Annahme über den Staat/Bundesstaat, in dem sich der Benutzer gerade aufhält. Diese Geo-Information kann beispielsweise dem Vorhersagesystem 5 bereitgestellt werden und kann beispielsweise als Charakteristik zu den in der Datenbank 53 gespeicherten Trainingssätzen hinzugefügt werden. Alternativ kann diese Information dem vom Vorhersagemodul 51 vorhergesagten Profil als weitere Charakteristik hinzugefügt und dem Werbeserver 3 zum Targeting bereitgestellt werden (potentiell nach dem Formatieren in der Ausgabeformatierungseinheit 54). Das Targeting kann dann Komponenten von prädiktivem verhaltensorientierten Targeting und von Geo- oder standortgestütztem Targeting haben.
-
Der Werbeserver 3 ist für das Auswählen und Zuführen von Werbungen zur Webseite 2 verantwortlich. Zum Beispiel kann die Webseite 2 einen leeren horizontalen Raum im oberen Teil umfassen, wo eine Bannerwerbung platziert werden soll. Zu diesem Zweck kann die Webseite 2 ein Script für die Kommunikation mit dem Werbeserver 3 beinhalten. Wenn das Script von einem Web-Browser ausgeführt wird, dann wird eine Anforderung für eine Werbung zum Werbeserver 3 gesendet, der die Werbung aus einem Pool von verfügbaren Werbungen auswählt und Parameter (und zum Beispiel die gewählte Werbung oder einen Link zu der Werbung) zum Web-Browser zurücksendet. Um prädiktives verhaltensorientiertes Targeting zu implementieren, muss der Werbeserver 3 mit Informationen über das für den Benutzer 6 vom Vorhersagesystem 5 vorhergesagte Profil versorgt werden. Dies kann beispielsweise durch Benutzen, als Reaktion (siehe Schritt 104) auf die vom Weg-Bug 20 eingeleitete Anforderung (siehe Schritt 102), einer Ortsumleitungsanweisung geschehen, wobei die Ortsumleitungsanweisung die Adresse des Werbeservers 3 sowie Informationen über das vorhergesagte Profil enthält. Dadurch wird bewirkt, dass der Web-Browser (vom Terminal 1 betrieben) von Benutzer 6 den Werbeserver 3 kontaktiert (siehe Schritt 105) und dem Werbeserver 3 die Informationen über das vorhergesagte Profil bereitstellt, die dann vom Werbeserver 3 zum Auswählen einer Werbung für die Webseite 2 benutzt werden kann, die zu dem für den Benutzer 6 vorhergesagten Profil passt. Ferner kann der Werbeserver 3 als Reaktion auf die Anforderung von Schritt 105 den Web-Browser von Benutzer 6 anweisen, ein Werbeserver-Cookie zu setzen (siehe Schritt 107), das das für den Benutzer 6 vorhergesagte Profil speichert. Auf diese Weise hat der Werbeserver 3 zu dem vorhergesagten Profil immer Zugang, wenn der Benutzer 6 auf eine Webseite zugreift, die mit der Domäne des Werbeservers 3 assoziiert ist (z. B. weil die Webseite Daten von der Domäne des Werbeservers anfordert, z. B. über ein Web-Bug). Prädiktives verhaltensorientiertes Targeting ist somit für den Werbeserver 3 selbst dann möglich, wenn das mit der Domäne des Vorhersagesystems 5 assoziierte Web-Bug 20 nicht in der Webseite enthalten ist, auf die der Benutzer 6 zugreift und für die der Werbeserver 3 eine Werbung zuführen soll.
-
Bisher wurde 1 zur Erläuterung verwendet, wie ein Profil für einen Benutzer (Benutzer 6) vorhergesagt wird, der gerade auf eine Webseite (Webseite 2) zugreift. Wie oben erläutert, wird das Profil durch das Vorhersagemodul 51 des Vorhersagesystems 5 auf der Basis von jeweiligen Vorhersagemodellen für jede in dem Profil enthaltene Charakteristik vorhergesagt, wobei ein Satz von Parametern für jedes Vorhersagemodell existiert und wobei die Sätze von Parametern von Zeit zu Zeit vom Trainingsmodul 52 auf der Basis von mehreren in der Datenbank 53 gespeicherten Trainingssätzen erzeugt und aktualisiert werden.
-
1 kann auch zur Erläuterung verwendet werden, wie die Trainingssätze in der Datenbank 53 erhalten werden. Dazu wird Benutzer 6 von 1 nicht mehr als ein Benutzer angesehen, für den ein Profil vorhergesagt werden soll, sondern als ein Benutzer, der auf die Webseite 2 zugreift und an einer ihm präsentierten Umfrage 21 teilnimmt. Der Benutzer 6 wird dann als Trainingsbenutzer angesehen, da er zu einem der in der Datenbank 53 gespeicherten Trainingssätze beiträgt. Dabei wird angenommen, dass der Mechanismus des in der Webseite 2 enthaltenen Web-Bug 20 beibehalten wird, d. h. dass ein Zugriff auf die Webseite 2 durch den Benutzer 6 bewirkt, dass die Cookie-Verarbeitungseinheit 50 aktiviert wird, so dass ein Inhaltskategoriehistogramm für den Benutzer 6 initialisiert und durch einen Treffer für die Inhaltskategorie von Webseite 2 angereichert wird, wenn kein Cookie für die Domäne „nugg.ad” auf dem Web-Browser von Benutzer 6 gespeichert wurde, oder so dass ein existierendes Inhaltskategoriehistogramm, das in einem Cookie auf dem Web-Browser von Benutzer 6 gespeichert ist, mit der Inhaltskategorie von Webseite 2 aktualisiert wird (siehe Schritt 100). In beiden Fällen wird das Inhaltskategoriehistogramm von der Cookie-Verarbeitungseinheit 50 der Datenbank 53 zusammen mit der anonymisierten IP-Adresse von Benutzer 6 zum Speichern bereitgestellt.
-
Wenn jetzt der Benutzer 6, zusätzlich zum Zugreifen auf die Webseite 2, an der Umfrage 21 teilnimmt, indem er die Fragen der Umfrage beantwortet, dann werden Informationen über die Ergebnisse der Umfrage auch der Datenbank 53 zusammen mit der anonymisierten IP-Adresse von Benutzer 6 bereitgestellt (z. B. über eine HTTP-Anforderung, z. B. auch über die Cookie-Verarbeitungseinheit 50). Über die anonymisierte IP-Adresse können die Informationen aus diesen Antworten jetzt mit dem Inhaltskategoriehistogramm für Benutzer 6 verknüpft und damit zum Bilden eines Trainingssatzes für den Trainingsbenutzer 6 gespeichert werden. Die Informationen über die Ergebnisse der Umfrage können beispielsweise zumindest einigen der Charakteristiken entsprechen, die vom Vorhersagemodul 51 vorhergesagt werden können. Zum Beispiel kann ein Geschlecht und/oder eine Altersgruppe in der Umfrage direkt vom Benutzer 6 erfragt werden. Allgemeiner ausgedrückt kann die Umfrage Fragen über Demographie, Lebensweise und Produktinteressen des Benutzers 6 enthalten, um nur ein paar Beispiele zu nennen.
-
Die Umfrage 21 braucht nicht jedem Benutzer 6 vorgelegt zu werden, der auf die Webseite 2 zugreift, sondern nur einem kleinen zufälligen Teil von Benutzern der Webseite 2. Somit kann die Webseite 2 Benutzer bitten, an der Umfrage teilzunehmen, und nur dann, wenn ein Benutzer zustimmt, können die Informationen abgerufen werden. Die Umfrage kann beispielsweise von einem Werbeserver vorgelegt werden, der mit der Webseite 2 assoziiert ist, wie z. B. der Werbeserver 3.
-
Benutzer, denen ein Online-Fragebogen vorgelegt wird, werden vorzugsweise transparent und eindeutig darüber informiert, dass die Teilnahme an der Umfrage freiwillig ist. Benutzer können insbesondere über den Zweck der Umfrage (Verbesserung von Werbung) informiert werden. Umfrageergebnisse brauchen zum Beispiel nicht in einem Cookie gespeichert zu werden. Der Anteil der Benutzer, denen die Umfrage vorgelegt wird, kann unter 1% der Zahl aller Benutzer liegen (z. B. aller Benutzer, die auf die Webseite 2 zugreifen). Der Prozentanteil liegt vorzugsweise zwischen 0,02% und 0,05%.
-
Die Umfrageergebnisse und die Informationen über das Klickverhalten können für auf den Benutzer ausgerichtete Werbung (targeted advertising) genutzt und zum Erzeugen von prädiktiven Modellen gesammelt und ausgewertet werden. Die zugrundeliegende Idee ist, dass Benutzer mit ähnlichem Klickverhalten regelmäßig ein ähnliches demografisches Profil demonstrieren und umgekehrt. Anhand dieser Vorhersagen können Herausgebern und Webseitenbesitzern Profile mit stärkerer Relevanz für Werbung vorgelegt werden. So kann der Herausgeber/Webseitenbesitzer jedem Benutzer angemessene Werbungen auf der Basis der vom Vorhersagesystem 5 gemachten Vorhersagen geben, z. B. in Bezug auf die Demographie, Produktinteressen und/oder Lebensweise dieses Benutzers. Das Ergebnis kann beispielsweise sein, dass einem Webseitenbesucher eines Online-Shops für Lebensmittel, von dem angenommen wird, dass er finanziell gut gestellt ist und einen „nachhaltigen” Lebensstil hat, Werbungen für speziell umweltfreundliche Produkte angeboten werden.
-
Wenn der Benutzer 6 mehrere Webseiten von verschiedenen Herausgebern besucht, die alle den Profilvorhersageservice des Vorhersagesystems 5 benutzen, dann enthält das auf dem Web-Browser von Benutzer 6 gesetzte Cookie Daten von allen betroffenen Herausgebern. Dadurch werden die Klickverhaltensinformationen (z. B. das Inhaltskategoriehistogramm) separat in dem Cookie für die verschiedenen Herausgeber gespeichert und werden separat verarbeitet und genutzt. Vorzugsweise kann ein Herausgeber nicht auf Daten über die Besuche von Webseiten anderer Herausgeber zugreifen. Ferner können Profile immer nur auf der Basis von Cookie-Informationen vorhergesagt werden, die sich direkt auf den Besuch der Webseiten des konkreten Herausgebers und nicht auf Besuche von Webseiten anderer Herausgeber beziehen. Dies gilt auch für die Ableitung der Sätze von Parametern aus den Trainingssätzen, d. h. Sätze von Parametern, die zum Vorhersagen eines Profils für eine Webseite eines Herausgebers benutzt werden sollen, werden nur von Trainingssätzen abgeleitet, die Informationen enthalten, die zu den Webseiten dieses Herausgebers gehören.
-
2a zeigt ein Ablaufdiagramm 200 einer beispielhaften Ausführungsform eines Verfahrens gemäß der Erfindung. Die Schritte 201–206 dieses Ablaufdiagramms reflektieren Funktionalität, die vom Vorhersagemodul 51 implementiert wird (siehe 1). In einem ersten Schritt 201 wird geprüft, ob ein Update von einem oder mehreren Sätzen von Parametern vom Trainingsmodul 52 erhalten wurde (siehe 1). Jeder dieser Sätze von Parametern gehört zu einem jeweiligen Vorhersagemodell, das wiederum zum Vorhersagen einer Charakteristik eines aktuellen Benutzers (wie Benutzer 6 von 1) benutzt werden kann, d. h. einem Benutzer, der gerade auf eine Webseite zugreift, für die prädiktives verhaltensorientiertes Targeting durchgeführt werden soll. Wenn bei der Prüfung festgestellt wird, dass ein Update empfangen wurde, dann wird/werden der/die aktualisierte(n) Satz/Sätze von Parametern in Schritt 202 aufgenommen, z. B. durch Ersetzen des/der existierenden Satzes/Sätze von Parametern durch den/die neuen Satz/Sätze von Parametern. Dann wird in einem Schritt 203 geprüft, ob Informationen über ein Klickverhalten des aktuellen Benutzers empfangen wurden. Wenn dies der Fall ist, dann werden in einem Schritt 204 ein oder mehrere Verhaltensmodelle ausgewählt, die jeweils für die Vorhersage von einer oder mehreren Charakteristiken des aktuellen Benutzers benötigt werden. Informationen über eine Wahl der Charakteristik(en), die vorhergesagt werden soll(en), werden beispielsweise zusammen mit den Informationen über das Klickverhalten des aktuellen Benutzers erhalten (z. B. als Parameter eines Web-Bug). In einem Schritt 205 wird/werden die Charakteristik(en) für den aktuellen Benutzer auf der Basis des/der gewählten Vorhersagemodelle/s vorhergesagt. Wenn das/die gewählte(n) Vorhersagemodell(e) auf (einem) in Schritt 202 aktualisierten jeweiligen Satz/Sätzen von Parametern basiert/basieren, dann wird/werden der/die aktualisierte(n) Satz/Sätze von Parametern für die Vorhersage in Schritt 205 benutzt. Ansonsten wird/werden (ein) nicht aktualisierte(r) Satz/Sätze von Parametern benutzt. Schritt 205 kann optional eine Normalisierung des Klickverhaltens des aktuellen Benutzers umfassen, wie mit Bezug auf Gleichung (4) unten erörtert wird. Schließlich wird/werden in Schritt 206 die vorhergesagte(n) Charakteristik(en) ausgegeben, z. B. an die Ausgabeformatierungseinheit 54 (siehe 1).
-
2b zeigt ein Ablaufdiagramm 300 einer weiteren beispielhaften Ausführungsform eines Verfahrens gemäß der Erfindung. Die Schritte 301–316 dieses Ablaufdiagramms beschreiben den Empfang und die Speicherung von zu Trainingssätzen gehörenden Informationen in der Datenbank 53 (siehe 1), wie durch die Schritte 301–314 repräsentiert, und die Ermittlung oder Aktualisierung von einem oder mehreren Sätzen von Parametern auf der Basis der Trainingssätze durch das Trainingsmodul 52 und die Ausgabe davon, wie durch die Schritte 315–316 repräsentiert. Die Schritte 301–314 können beispielsweise von einer Einheit ausgeführt werden, die die Datenbank 53 steuert, z. B. von der Cookie-Verarbeitungseinheit 50. Die Schritte 315–316 können beispielsweise vom Trainingsmodul 52 ausgeführt werden.
-
In einem ersten Schritt 301 wird eine Zählervariable auf null initialisiert. In einem Schritt 302 wird dann geprüft, ob Informationen über ein Klickverhalten eines Trainingsbenutzers (wie Benutzer 6 in 1) empfangen wurden. Wenn dies nicht der Fall ist, dann springt das Ablaufdiagramm zu Schritt 306. Ansonsten wird geprüft, ob ein Trainingssatz (sowohl mit Informationen über das Klickverhalten des Trainingsbenutzers als auch mit Informationen über eine oder mehrere Charakteristiken des Trainingsbenutzers) bereits in der Datenbank 53 verfügbar ist (Schritt 303). Wenn dies der Fall ist, dann können die Informationen über das Klickverhalten des Trainingsbenutzers im existierenden Trainingssatz in Schritt 310 aktualisiert werden und die Zählervariable wird um eins inkrementiert (Schritt 311). Ansonsten wird in Schritt 304 geprüft, ob Informationen über eine oder mehrere Charakteristiken des Trainingsbenutzers verfügbar (aber noch nicht in einem Trainingssatz für diesen Trainingsbenutzer gespeichert) sind. Wenn dies nicht der Fall ist, dann werden die Informationen über das Klickverhalten des Trainingsbenutzers in Schritt 305 gespeichert (z. B. in der Datenbank 53 oder an einem anderen Speicherort, aber noch nicht als Teil eines Trainingssatzes). Ansonsten kann ein neuer Trainingssatz, der die Informationen über das Klickverhalten des Trainingsbenutzers und die Informationen über die Charakteristik(en) des Trainingsbenutzers enthält, in Schritt 312 erzeugt und in der Datenbank 53 gespeichert werden, und die Zählervariable wird um eins inkrementiert (Schritt 313).
-
Nach Schritt 305, oder wenn die Prüfung in Schritt 302 ein negatives Ergebnis ergibt, wird in Schritt 306 geprüft, ob Informationen über eine oder mehrere Charakteristiken eines Trainingsbenutzers empfangen wurden. Wenn dies nicht der Fall ist, dann springt das Ablaufdiagramm zu Schritt 314. Ansonsten wird geprüft, ob ein Trainingssatz (sowohl mit Informationen über das Klickverhalten des Trainingsbenutzers als auch mit Informationen über eine oder mehrere Charakteristiken des Trainingsbenutzers) bereits in der Datenbank 53 verfügbar ist (Schritt 307). Wenn dies der Fall ist, dann können die Informationen über die Charakteristik(en) des Trainingsbenutzers im existierenden Trainingssatz in Schritt 310 aktualisiert werden und die Zählervariable wird um eins inkrementiert (Schritt 311). Ansonsten wird in Schritt 308 geprüft, ob Informationen über ein Klickverhalten des Trainingsbenutzers verfügbar (aber noch nicht in einem Trainingssatz für diesen Trainingsbenutzer gespeichert) sind. Wenn dies nicht der Fall ist, dann werden die Informationen über die Charakteristik(en) des Trainingsbenutzers in Schritt 309 gespeichert (z. B. in der Datenbank 53 oder an einem anderen Speicherort, aber noch nicht als Teil eines Trainingssatzes). Ansonsten kann ein neuer Trainingssatz, der die Informationen über das Klickverhalten des Trainingsbenutzers und die Informationen über die Charakteristik(en) des Trainingsbenutzers enthält, in Schritt 312 erzeugt und in der Datenbank 53 gespeichert werden, und die Zählervariable wird um eins inkrementiert (Schritt 313).
-
In Schritt 314 wird dann geprüft, ob die Zählervariable größer als ein vordefinierter Trigger-Wert ist. Wenn dies der Fall ist, dann wird dies so angesehen, dass eine ausreichende Anzahl von Trainingssätzen vorhanden ist, um eine Ermittlung (wenn bisher kein(e) Satz/Sätze von Parametern existiert/-en) oder Aktualisierung (wenn bereits (ein) Satz/Sätze von Parametern existieren) von einem oder mehreren Sätzen von Parametern für Vorhersagemodelle auf der Basis der in der Datenbank 53 gespeicherten Trainingssätze zu erlauben, und diese Ermittlung oder Aktualisierung erfolgt in Schritt 315 (durch das Trainingsmodul 52), und der/die ermittelten) oder aktualisierte(n) Satz/Sätze von Parametern wird/werden in Schritt 316 (an das Vorhersagemodul 51) ausgegeben. Das Ablaufdiagramm kehrt dann zu Schritt 310 zurück, wo die Zählervariable auf null zurückgesetzt wird. Das Ablaufdiagramm wird dann wie oben beschrieben wiederholt.
-
Schritt 315 kann optional auch eine Normalisierung der Trainingssätze der Trainingsbenutzer beinhalten, wie nachfolgend für den aktuellen Benutzer mit Bezug auf Gleichung (4) erörtert wird.
-
In der obigen Beschreibung des Ablaufdiagramms 300 von 2b wurde beispielhaft davon ausgegangen, dass Trainingssätze für Trainingsbenutzer nur dann erzeugt und in der Datenbank 53 gespeichert werden, wenn sowohl Informationen über das Klickverhalten eines Trainingsbenutzers als auch Informationen über die Charakteristik(en) des Trainingsbenutzers verfügbar sind. Es ist natürlich auch möglich, Informationen, die zu einem Trainingsbenutzer gehören (d. h. Informationen über das Klickverhalten eines Trainingsbenutzers oder Informationen über die Charakteristik(en) eines Trainingsbenutzers), immer direkt in der Datenbank 53 zu speichern, unabhängig davon, ob die zum Bilden eines Trainingssatzes benötigten ergänzenden Informationen bereits verfügbar sind oder nicht. Nichtsdestotrotz kann weiterhin angenommen werden, dass ein Trainingssatz für einen Trainingsbenutzer in der Datenbank 53 nur dann vorhanden ist, wenn sowohl die Informationen über das Klickverhalten des Trainingsbenutzers als auch die Informationen über die Charakteristik(en) des Trainingsbenutzers vorhanden sind. Sobald dies für einen Trainingsbenutzer der Fall ist (als Reaktion auf den Empfang entweder der Informationen über das Klickverhalten oder der Informationen über die Charakteristik(en) des Trainingsbenutzers, die den Trainingssatz vervollständigen), kann der Zähler für einen neuen Trainingssatz in der Datenbank 53 um eins inkrementiert werden. Der nachfolgende Empfang von Informationen über ein Klickverhalten und/oder (eine) Charakteristik(en) eines Trainingsbenutzers, für den bereits ein Trainingssatz als vorhanden angenommen wird, führt zu einem Update dieses Trainingssatzes und so auch zu einer Inkrementierung des Zählers um eins.
-
3 ist ein schematisches Blockdiagramm einer beispielhaften Ausführungsform einer Vorrichtung 30 gemäß der Erfindung. Die Vorrichtung 30 kann beispielsweise ein Webserver oder zumindest ein Teil davon sein. Die Vorrichtung 30 kann beispielsweise so konfiguriert sein, dass sie die Schritte des Ablaufdiagramms 200 von 2b und/oder des Ablaufdiagramms 300 von 3b ausführt. Demgemäß kann die Vorrichtung 30 beispielsweise die Funktionalität des Vorhersagemoduls 51 (siehe 1) und/oder des Trainingsmoduls 52 und/oder der Datenbank 53 implementieren. Ferner kann die Vorrichtung 300 auch Funktionalität der Cookie-Verarbeitungseinheit 50 und/oder der Ausgabeformatierungseinheit 54 implementieren.
-
Die Vorrichtung 30 umfasst einen Prozessor 31, der beispielsweise als Mikroprozessor, Digitalsignalprozessor (DSP) oder als anwendungsspezifische integrierte Schaltung (ASIC) ausgestaltet sein kann, um nur ein paar nicht begrenzende Beispiele zu nennen. Der Prozessor 31 führt einen im Programmspeicher 32 gespeicherten Programmcode aus. Der Programmspeicher 32 kann auch im Prozessor 31 enthalten sein. Der Programmspeicher 32 kann fest mit dem Prozessor 30 verbunden oder vom Prozessor 30 abnehmbar sein, z. B. in Form einer Speicherkarte oder eines Stick. Der Programmspeicher 32 und der darin gespeicherte Computerprogrammcode können mit dem Prozessor 31 so konfiguriert werden, dass bewirkt wird, dass die Vorrichtung 30 zumindest die Verfahren gemäß dem ersten Aspekt der Erfindung oder seiner oben beschriebenen beispielhaften Ausführungsformen ausführt. Der Programmspeicher 32 kann ein greifbares Speichermedium bilden, das ein Computerprogramm mit Programmcode zum Ausführen des Verfahrens gemäß dem ersten Aspekt der Erfindung oder einer seiner oben beschriebenen Ausführungsform, wenn das Computerprogramm auf dem Prozessor 31 ausgeführt wird, umfasst.
-
Der Prozessor 31 ist ferner mit einem Hauptspeicher 33 verbunden, der beispielsweise als Direktzugriffsspeicher (RAM) ausgestaltet sein kann, um seinen Betrieb zu unterstützen.
-
Die Vorrichtung 30 kann optional eine Datenbank 34 umfassen, die beispielsweise die Datenbank 53 von 1 repräsentiert. Der Prozessor 31 kann dann auf die Datenbank 34 zugreifen (z. B. davon lesen und/oder darauf schreiben), die beispielsweise als Massenspeicher ausgestaltet sein kann, z. B. mit Kapazitäten von mehreren Gigabyte oder mehreren Terabyte. Er kann fest mit dem Prozessor 31 verbunden oder lösbar damit verbindbar sein.
-
Der Prozessor 31 steuert ferner eine Netzschnittstelle 36, die zum Empfangen und/oder Ausgeben von Informationen konfiguriert ist. Über diese Netzschnittstelle 36 sind beispielsweise Kommunikationen der Vorrichtung 30 mit zumindest einigen der nicht von der Vorrichtung 30 implementierten Komponenten des Vorhersagesystems 5 (siehe 1) möglich. Über die Netzschnittstelle 36 kann die Vorrichtung 30 beispielsweise mit dem Web-Browser von Benutzer 6 (wenn keine Anonymisiereinheit 4 benutzt wird) oder mit der Anonymisiereinheit 6 (wenn eine Anonymisiereinheit eingesetzt wird) kommunizieren, zum Beispiel dann, wenn die Vorrichtung 30 die Cookie-Verarbeitungseinheit 50 und/oder die Ausgabeformatierungseinheit 54 implementiert.
-
Die Netzschnittstelle 36 kann beispielsweise Kommunikationen mit einem oder mehreren Partners gemäß dem HTTP-Protokoll zulassen.
-
Die Vorrichtung 30 kann optional auch eine Benutzeroberfläche 35 umfassen, die so konfiguriert ist, das sie einem Benutzer/Bediener der Vorrichtung 30 Informationen präsentiert und/oder Informationen (z. B. Konfigurationsparameter wie z. B. den Trigger-Wert von Schritt 314 von Ablaufdiagramm 300 (siehe 2b)) von einem solchen Benutzer/Bediener empfängt.
-
Es ist anzumerken, dass die durch die Komponenten von Vorrichtung 30 gebildeten Schaltungen nur in Hardware, teilweise in Hardware und in Software oder nur in Software implementiert sein können.
-
4 ist eine schematische Darstellung einer Webseite 40 mit einem eingebetteten Web-Bug 401, das prädiktives verhaltensorientiertes Targeting gemäß einer beispielhaften Ausführungsform der Erfindung auslöst. Das Web-Bug 401 hat hier beispielhaft die Form eines Image-Tag. Die allgemeine Syntax von Web-Bug 401 wird nachfolgend beispielhaft erläutert:
<img src=”http://subdomain.nuggad.net/bk?nuggn=12345&nuggsid=12345&nuggrid=http://site.com &nuggtg=contentClassifier&nuggl=location”>
-
Darin folgt auf den tatsächlichen URL (Uniform Resource Locator) des Bildes (z. B. ein 1×1 transparentes Pixel) „http://subdomain.nuggad.net/bk” eine Reihe von Parametern, die wie folgt definiert sind:
nuggn | Netzwerk-ID, definiert vom Bediener des Vorhersagesystems 41 |
nuggsid | Site-ID, definiert vom Bediener des Vorhersagesystems 41 nugg.ad (optional) |
nuggrid | Referrer-URL (z. B. vom Herausgeber/Besitzer der Webseite angegeben), wenn http-Referrer nicht verwendet werden kann, URL-codiert (optional, aber empfohlen, wenn z. B. nuggsid nicht benutzt werden kann) |
nuggtg | Inhaltsklassifikator (d. h. ‚Sport’), URL-codiert (optional; beispielsweise wenn http-Referrer nicht benutzt werden kann) |
nuggl | Ort umleiten, URL-codiert (http-Header LOCATION; Werbeserver-Cookie schreibt API) |
-
Wenn auf die Webseite 40 von einem Benutzer (z. B. Benutzer 6 in 1) zugegriffen wird, dann bewirkt das Web-Bug 401 eine Anforderung für die vom URL des Web-Bug definierten Bilddaten von der mit dem Vorhersagesystem 41 (das dem Vorhersagesystem 5 von 1 entspricht) assoziierten Domäne („nugg.ad”). Die im Web-Bug enthaltenen Parameter werden dann auch zum Vorhersagesystem 41 übertragen und lassen es zu, einen Inhalt der Webseite 40 zu klassifizieren (z. B. auf der Basis des Inhaltsklassifikators nuggtg). Als Reaktion auf diese Anforderung gibt das Vorhersagesystem 41 die vom Web-Browser des Benutzers auszuführenden Anweisungen 410 zurück. Insbesondere wird ein Cookie für die Domäne „nugg.ad” über HTTP SET-COOKIE gesetzt (das das Inhaltskategoriehistogramm speichert, das zumindest teilweise auf der Inhaltskategorie von Webseite 40 basiert). Ferner wird eine Ortsumleitung über HTTP LOCATION ausgelöst, d. h. der Web-Browser des Benutzers wird angewiesen, den Werbeserver 42 auf der Basis des im nuggl-Parameter des Web-Bug enthaltenen URL zu kontaktieren. Darin wird der Wert „NUGGVARS” von Parameter cvalue 1, der am URL des Werbeservers anhängt, wie im Parameter nuggl von Web-Bug 401 enthalten, als Reaktion auf die Anforderung an das Vorhersagesystem 41, durch das vom Vorhersagesystem 41 für den Benutzer, der auf die Webseite 40 zugreift, vorhergesagte Profil ersetzt, wobei dieses vorhergesagte Profil „21999930001” dem Format folgt, das vom Werbeserver und/oder seinem Cookie wie nachfolgend erörtert benötigt wird. Somit werden bei jedem Zugriff durch einen Benutzer auf eine das Web-Bug 401 enthaltende Webseite 40 die Inhaltskategorie der Webseite 40 und der Inhalt des für die Domäne „nugg.ad” gespeicherten Cookie dem Vorhersagesystem 41 bereitgestellt, und ein Profil für den Benutzer wird vorhergesagt und über eine Ortsumleitung zu dem im Web-Bug 401 vorgegebenen Werbeserver 42 zurückgegeben.
-
Der Werbeserver 42 richtet dann ein das vorhergesagte Profil enthaltendes Werbeserver-Cookie (über HTTP SET-COOKIE) für seine Domäne (z. B. „adxy.de”) auf dem Web-Browser des Benutzers ein, wie durch die HTTP-Antwort 420 gezeigt. Nach dem Schreiben dieses Werbeserver-Cookie kann dieses zum Targeting von Werbeanzeigen auf jeder Webseite benutzt werden, auf die der Web-Browser des Benutzers zugreift, und enthält eine Anforderung von Daten vom Werbeserver 42 darin oder ist damit assoziiert, wie z. B. ein Script 402, das den Werbeserver 42 für eine Werbung kontaktiert, die in die Webseite 40 aufgenommen werden soll. Beim Kontaktieren des Werbeservers 42 wird das vorhergesagte Profil für den Benutzer dem Werbeserver 42 über das Werbeserver-Cookie bereitgestellt, so dass der Werbeserver 42 eine auf den Benutzer ausgerichtete Werbeanzeige auf der Basis des vorhergesagten Profils auswählen kann.
-
Man wird leicht verstehen, dass das oben beschriebene HTML-Image-Tag 401 lediglich ein Beispiel für ein Web-Bug ist. Ebenso gut kann beispielsweise ein Script-Code, z. B. ein JavaScript Image Object, für diese Aufgabe verwendet werden, und dieses Script kann sich beispielsweise auf mehrere Webseiten einer Website beziehen.
-
5a zeigt in Tabelle
60 eine Darstellung von mehreren Trainingssätzen gemäß einer beispielhaften Ausführungsform der Erfindung. Jede Zeile von Tabelle
60 kann als Trainingssatz verstanden werden. Die erste Spalte
61 von Tabelle
60 umfasst jeweilige Kennungen der Trainingsbenutzer, zu denen die Trainingssätze jeweils gehören. Diese Kennungen können beispielsweise anonymisierte Kennungen wie von der Anonymisiereinheit
5 bereitgestellt sein (siehe
1). In
5a wurden diese Kennungen, um die Darstellung zu vereinfachen, auf einfache Zahlen wie „1”, „2” usw. vereinfacht. Die zweite und dritte Spalte, mit Bezugsziffer
62 bezeichnet, enthalten jeweils Charakteristiken der Benutzer. Hier sind beispielhaft nur zwei Charakteristiken verfügbar, „Geschlecht” und „Altersgruppe”. In den übrigen Spalten, mit Bezugsziffer
63 bezeichnet, ist das Inhaltskategoriehistogramm jedes Trainingsbenutzers enthalten. Hier werden die Inhaltskategorien beispielhaft als „Fahrzeuge”, „Autos”, „Computer”, „Unterhaltungselektronik”, „Finanzen”, „Wirtschaft” und „Mode und Schönheit” gewählt. Leere Tabellenzellen im Spaltenbereich
63 drücken aus, dass für den jeweiligen Trainingsbenutzer keine Zugriffe auf Webseiten beobachtet wurden, die zu der jeweiligen Inhaltskategorie gehören. Die nicht leeren Tabellenzellen im Spaltenbereich
63 drücken aus – in (beispielhafter) normalisierter Form (wie mit Bezug auf Gleichung (4) unten erläutert) – wie oft Zugriffe auf Webseiten, die zu der jeweiligen Inhaltskategorie gehören, für den jeweiligen Trainingsbenutzer beobachtet wurden. Für einen Benutzer mit id = 1 ist beispielsweise bekannt (z. B. aus einer Umfrage), dass er die folgenden zwei Charakteristiken hat: er ist männlich (Geschlecht = 0) und hat ein Alter aus der Gruppe = 3. Ferner ist mit Bezug auf sein Klickverhalten das folgende Inhaltskategoriehistogramm bekannt:
Fahrzeuge | 0.4733 |
Autos | 0.4993 |
Computer | 0.4897 |
Unterhaltungselektronik | 0.4853 |
Finanzen | 0 |
Wirtschaft | 0.5065 |
Mode und Schönheit | 0 |
-
Dieses Inhaltskategoriehistogramm kann als siebendimensionaler Vektor ausgedrückt werden:
x1 = (0.4733, 0.4993, 0.4897, 0.4853, 0, 0.5065, 0)
-
Ähnliche Vektoren können so eingerichtet werden, dass sie das jeweilige Klickverhalten der weiteren Trainingsbenutzer von Tabelle 60 repräsentieren. Gemäß Ausführungsformen der Erfindung werden Charakteristiken eines Benutzers auf der Basis eines Vorhersagemodells vorhergesagt, das eine Klassifizierung eines mit dem Benutzer assoziierten Vektors in eine von zumindest zwei Klassen zulässt. Zum Beispiel, wenn die Charakteristik das Geschlecht des Benutzers ist, dann kann ein das Klickverhalten des Benutzers repräsentierender Vektor so klassifiziert werden, dass er entweder zu einer Klasse „männlich” oder zu einer Klasse „weiblich” gehört.
-
Jetzt können die Trainingssätze von Tabelle 60 zum Ermitteln eines Satzes von Parametern für ein Vorhersagemodell für die Charakteristik „Geschlecht” und zum Ermitteln eines Satzes von Parametern für ein Vorhersagemodell für die Charakteristik „Altersgruppe” ermittelt werden. Ein solcher Satz von Parametern kann beispielsweise von den Trainingssätzen auf der Basis einer Support-Vector-Maschine abgeleitet werden, wie nachfolgend ausführlicher erläutert wird.
-
Eine Beschreibung von Support-Vector-Maschinen ist in dem Artikel „Support-Vektor Networks” von Corinna Cortes und Vladimir Vapnik in Machine Learning Bd. 20, Nr. 3 (1995), S. 273–297 enthalten, der hierin in seiner Gesamtheit durch Bezugnahme eingeschlossen ist.
-
Insbesondere ermittelt, in dem beispielhaften Fall einer linearen Support-Vector-Maschine mit einer optimalen Hyperebene, eine Support-Vector-Maschine auf der Basis eines Satzes von N p-dimensionalen Trainingsvektoren xn (wobei n = 1 ... N ist) mit jeweils assoziierten Klassenkennungen yn ∊ {–1, 1} eine Hyperebene: w·x + b = 0 (1) so dass Folgendes gilt: w·xi + b ≥ 1 falls yi = 1, und
w·xi + b ≤ 1 falls yi = –1. (2)
-
Darin ist die Hyperebene nach ihrem p-dimensionalen Normalen-Vektor w und dem so (skalaren) Bias b definiert und so ermittelt, dass die so Marge, d. h. der Abstand der Trainingsvektoren von jeder der beiden Klassen von Trainingsvektoren (angegeben durch die Klassenkennungen yn), die der Hyperebene am nächsten liegen, maximiert wird.
-
5b ist eine schematische Darstellung von zwei Sätzen von Trainingsvektoren xn 72, 73, die durch eine Hyperebene 71 (mit dem Normalen-Vektor w 710 und der Marge 711) einer Support-Vector-Maschine gemäß einer beispielhaften Ausführungsform der Erfindung getrennt sind.
-
In 5b wird nur ein zweidimensionales Szenario (d. h. ein zweidimensionaler Raum 70) beispielhaft betrachtet, und nur zwei Klassen von Trainingsvektoren xn 72, 73 sind beispielhaft durch die Hyperebene 71 getrennt. Die erste Klasse von Trainingsvektoren xn wird durch schwarze Punkte 72 dargestellt und gehört zu männlichen Trainingsbenutzern (z. B. yn = 1). Die zweite Klasse von Vektoren xn wird durch Kreise 73 repräsentiert und gehört zu weiblichen Trainingsbenutzern (z. B. yn = –1). Für einige der Vektoren sind auch die Inhaltskategorien, die für den jeweiligen Trainingsbenutzer besonders ausgeprägt sind, in Klammern dargestellt. So ist beispielsweise zu sehen, dass ein Trainingsbenutzer, der an Unterhaltungselektronik interessiert ist, näher an der Hyperebene 71 liegt als ein Trainingsbenutzer, der an Mode, Computern und Unterhaltungselektronik interessiert ist.
-
Das Prinzip der Trennung von Vektoren verschiedener Klassen durch eine Hyperebene kann natürlich auch auf den mehrdimensionalen Fall ausgeweitet werden. Zum Beispiel könnten, anstatt von zweidimensionalen Vektoren, die jeweils die Inhaltskategoriehistogramme von Trainingsbenutzern enthalten, siebendimensionale Trainingsvektoren, die jeweils die Inhaltskategoriehistogramme wie im Spaltenbereich 63 von Tabelle 60 von 5a enthalten, in einem siebendimensionalen Raum benutzt werden und könnten entweder einer männlichen oder weiblichen Klasse zugeordnet werden, je nach den Informationen in der zweiten Spalte von Tabelle 60. Für diese beiden Klassen von Trainingsvektoren kann dann eine Hyperebene bestimmt werden, die einen Satz von Parametern ergibt, der als Entscheidungsfunktion zum Klassifizieren eines entsprechenden Inhaltskategoriehistogramm-Vektors eines aktuellen Benutzers dient. Die Anwendung dieser Entscheidungsfunktion auf einen Vektor, der das Klickverhalten eines aktuellen Benutzers zum Vorhersagen von Charakteristiken des aktuellen Benutzers repräsentiert, wird nun ausführlicher erläutert.
-
Wenn eine Hyperebene, die durch ihren Normalen-Vektor w und Bias b definiert ist, von einem Satz von Trainingsvektoren abgeleitet ist (im Trainingsmodul 52 von 1), dann ist eine besonders einfache Klassifizierung eines Vektors xi in eine der Klassen möglich. Die Entscheidungsfunktion für diese Klassifikation kann wie folgt geschrieben werden: yi = sgn(〈w, xi〉 + b) (3)
-
Darin gibt sgn (·) das Vorzeichen seines Arguments zurück, d. h. 1 für ein positives Argument und –1 für ein negatives Argument, und 〈·,·〉 gibt das innere Vektorprodukt seiner beiden Argumente zurück. Diese Entscheidungsfunktion kann mit sehr geringer Rechenkomplexität im Vorhersagemodul 51 berechnet werden (siehe 1) und ermöglicht somit eine Echtzeit-Vorhersage von Benutzercharakteristiken, z. B. innerhalb von ein paar Millisekunden.
-
6 ist ein Ablaufdiagramm einer beispielhaften Ausführungsform eines Verfahrens zum Vorhersagen einer Charakteristik eines aktuellen Benutzers auf der Basis eines Satzes von Parametern 80 und eines beobachteten Klickverhaltens gemäß einer beispielhaften Ausführungsform der Erfindung.
-
Im linken Teil von 6 ist ein beispielhafter Satz von Parametern 80 illustriert, der von mehreren Trainingssätzen zur Vorhersage der Benutzercharakteristik „Geschlecht” abgeleitet ist. Darin wurden die Parameter 80 gemäß dem oben beschriebenen Support-Vector-Maschine-Ansatz ermittelt. Der Satz von Parametern 80 umfasst einen „Offset”-Wert, der den Bias der Hyperebene repräsentiert. Ferner umfasst der Satz von Parametern 80 Gewichtungen, die die Komponenten des Normalen-Vektors w der Hyperebene repräsentieren. Jede dieser Gewichtungen ist mit einer Komponente des Vektors des aktuellen Benutzers und somit mit den Inhaltskategorien „Fahrzeuge”, „Autos”, „Mode und Schönheit”, „Wirtschaft”, „Finanzen”, „Computer”, „Unterhaltungselektronik” assoziiert.
-
Der rechte Teil von 6 zeigt das eigentliche Ablaufdiagramm 90 für den Vorhersageprozess (wie er beispielsweise im Vorhersagemodul 51 von 1 ausgeführt wird). Wenn der aktuelle Benutzer (z. B. Benutzer 6 von 1) auf eine Webseite zugreift, die das Web-Bug zum Verfolgen des Klickverhaltens enthält, dann wird das Inhaltskategoriehistogramm für den aktuellen Benutzer aktualisiert und kann beispielsweise die in Schritt 91 von Ablaufdiagramm 90 gezeigte Form annehmen, d. h. es gab 12 verfolgte Klicks auf Webseiten, die zur Inhaltskategorie „Autos” gehören, 10 verfolgte Klicks auf Webseiten, die zur Inhaltskategorie „Fahrzeuge” gehören, und 5 verfolgte Klicks auf Webseiten mit der Inhaltskategorie „Wirtschaft”. In einem (optionalen) Schritt 92 wird das Inhaltskategoriehistogramm normalisiert, um das in Schritt 93 gezeigte normalisierte Inhaltskategoriehistogramm zu erhalten.
-
Die Normalisierung im optionalen Schritt
92 kann beispielsweise zum Berücksichtigen dienen, dass Klicks eines Benutzers auf Webseiten, auf die im Allgemeinen häufig zugegriffen werden, einen geringeren Einfluss haben als Klicks eines Benutzers auf Webseiten, auf die im Allgemeinen weniger häufig zugegriffen wird (sie weisen auf spezielle Interessen des Benutzers hin). Eine Normalisierung kann beispielsweise auf der folgenden Formel basieren:
-
Darin bedeutet pn den normalisierten Wert, α ist ein konstanter Faktor, z. B. im Bereich [0,01 ... 1] (e. g. 0,4), na bedeutet die Anzahl von Klicks des aktuellen Benutzers auf Webseiten einer spezifischen Inhaltskategorie (z. B. in einem spezifischen (z. B. vordefinierten) Zeitintervall), p bedeutet die Gesamtwahrscheinlichkeit von Klicks auf Webseiten dieser spezifischen Inhaltskategorie (z. B. ermittelt durch statistische Analyse der Anzahl von Zugriffen durch mehrere Benutzer auf Webseiten dieser spezifischen Inhaltskategorie), und Na bedeutet die Gesamtzahl von Klicks des aktuellen Benutzers auf Webseiten (z. B. in dem spezifischen Zeitintervall) (z. B. ermittelt durch Addieren der Werte na des Benutzers über alle Inhaltskategorien). Eine Normalisierung des Inhaltskategoriehistogramms des aktuellen Benutzers kann beispielsweise vom Vorhersagemodul 51 durchgeführt werden (siehe 1), zum Beispiel als Teil von Schritt 205 des Ablaufdiagramms 200 von 2a. Wenn Normalisierung auf das Inhaltskategoriehistogramm des aktuellen Benutzers angewandt wird, dann ist sie auch auf die Inhaltskategoriehistogramme der Trainingsbenutzer anzuwenden, z. B. durch Trainingsmodul 52 (siehe 1), zum Beispiel in Schritt 315 von Ablaufdiagramm 300 von 2b.
-
Dann wird in Schritt 94 die auf dem Satz von Parametern 80 basierende Entscheidungsfunktion berechnet, wie durch Gleichung (3) oben beschrieben wurde. Dies ergibt einen Wert für die Entscheidungsfunktion von yi = 1. In Schritt 95 wird dann ermittelt, da die Klassenkennung des das Klickverhalten/Inhaltskategoriehistogramm des aktuellen Benutzers repräsentierenden Vektors yi = 1 ist, dass der aktuelle Benutzer männlich ist.
-
Es versteht sich, dass die Erfindung nicht auf Support-Vector-Maschinen als Klassifizierungsalgorithmen begrenzt ist. Ebenso gut können auch andere Klassifizieralgorithmen benutzt werden, die ein Abkoppeln von Training und Vorhersage und somit schnelle Vorhersagen (in Echtzeit) zulassen. Wenn eine Support-Vector-Maschine gewählt wird, dann brauchen nicht unbedingt optimale Hyperebenen ermittelt zu werden. Stattdessen können beispielsweise auch Soft-Margin-Hyperebenen ermittelt werden. Es ist auch zu verstehen, dass Support-Vector-Maschinen nicht an eine Zwei-Klassen-Klassifikation gebunden sind. Ebenso ist auch eine Klassifizierung von Vektoren in mehr als zwei Klassen möglich, z. B. durch Anwenden von sogenannten Multiclass-Support-Vector-Maschinen. Ein Ansatz besteht hier darin, das Multiclass-Problem in mehrere binäre (Zwei-Klassen)-Klassifizierungsprobleme zu reduzieren.
-
Mit Bezug auf die oben beschriebenen Ausführungsformen der Erfindung ist zu verstehen, dass eine Offenbarung einer Aktion oder eines Schrittes eines Verfahrens gemäß der vorliegenden Ausführungsform verstanden werden soll als eine Offenbarung einer entsprechenden (funktionellen) Konfiguration einer Vorrichtung (zum Beispiel einer Konfiguration des Computerprogrammcodes und/oder des Prozessors und/oder eines anderen Mittels der Vorrichtung) gemäß dieser Ausführungsform, eines entsprechenden Computerprogrammcodes, der definiert ist, dass er eine(n) solche(n) Aktion oder Schritt bei Ausführung bewirkt, und/oder einer entsprechenden (funktionellen) Konfiguration eines Systems (oder von Teilen davon) gemäß der vorliegenden Ausführungsform.
-
Die oben präsentierten Ausführungsformen der Erfindung sowie deren einzelne Merkmale sollen auch in allen möglichen Kombinationen miteinander offenbart verstanden werden. Ebenso ist zu verstehen, dass die Abfolge von Verfahrensschritten in den oben präsentierten Ablaufdiagrammen nicht obligatorisch ist, sondern dass auch alternative Abfolgen möglich sind.
-
Die Erfindung wurde oben anhand von Ausführungsformen beschrieben, die als nicht begrenzende Beispiele zu verstehen sind. Insbesondere ist zu bemerken, dass es alternative Weisen und Variationen gibt, die für die Fachperson offensichtlich sind und die implementiert werden können, ohne von Umfang und Wesen der beiliegenden Ansprüche abzuweichen.