AdServer – Keywordanalyse

Der nächste Schritt für den AdServer ist das anzeigen von Banner für bestimmte Keywords. Es soll also möglich sein, dass ein Banner für das Keywordblumenmarkt” gebucht wird und nur bei diesen Anfragen angezeigt werden soll.

Das Banner soll aber auch für die Mehrzahl “blumenmärkte” gefunden werden. Was man hier benötigt, nennt man Stemming. Also ein Wort auf die Grundform reduzieren. In meinem Fall bedeutet das, dass aus “blumenmärkte” ebenfalls “blumenmarkt” wird, da dies die Grundform ist.

Ich habe mich dazu entschieden, hier die Möglichkeiten zu verwenden, die Lucene bietet. Erstens wird Lucene schon verwendet und zweitens ist auf diese Art direkt ein Stopword-Filter mit enthalten. D.h. Wörter wie und, in, an usw werden rausgefiltert.

Der folgende kleine Ausschnitt verwendet den Lucene GermanAnalyzer um eine Eingabe zu Tokenisieren, Stopworte zu filtern und die restlichen Keywords zu stemmen.

GermanAnalyzer a = new GermanAnalyzer(Version.LUCENE_33);
TokenStream ts = a.tokenStream("", new StringReader("und blumenmärkte"));
CharTermAttribute termAtt = ts.getAttribute(CharTermAttribute.class);
ts.reset();
while (ts.incrementToken()) {
String token = termAtt.toString();
System.out.println(token);
}
ts.end();
ts.close();

Das Ergebnis dieses kleinen Programms wäre blumenmarkt

Dieses kleine Stück Code ermöglicht es dem AdServer nun, Keyword basierte Banner zu liefern. Die einzige Frage nun ist, wo kommen die Keywords her, die für die Suche nach Bannern verwendet werden können.

Für dieses Problem habe ich vorerst zwei Lösungen:

  1. Es werden die Suchmaschinen-Keywords verwendet
    Betrachte ich meine Seiten, kommen die meisten Benutzer über Suchmaschinen. Warum dann nicht auch die Keywords verwenden, die sie dort eingegeben haben um meine Seite zu finden.
  2. Übergabe im JavaScript AdTag
    Bei vielen Seite die z.B. Kategorien verwenden, macht es aber auch Sinn, die Keywords manuell zu übergeben.
Das werden dann also meine TODOs für die nächste Zeit. Der AdServer bekommt
Fork me on GitHub

Verwandte Themen:

  1. AdServer – aktuelle Lage
  2. AdServer – Planung 1
  3. AdServer – Testseite online

Hinterlasse eine Antwort

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

*

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>