06.11.2013 Aufrufe

Schwarmintelligenz und evolutionäre Algorithmen in ...

Schwarmintelligenz und evolutionäre Algorithmen in ...

Schwarmintelligenz und evolutionäre Algorithmen in ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

2.5 Collaborative Filter<strong>in</strong>g<br />

Benutzer u für Item i berechnet sich als<br />

ˆr ui = q T i p u (2.7)<br />

mit q i als Vektor, der das Item mit den angesprochenen Faktoren beschreibt <strong>und</strong> p u als Vektor,<br />

der die Faktoren des Benutzers be<strong>in</strong>haltet. Die Faktoren können dabei positiv wie negativ<br />

se<strong>in</strong>, je nach genauer Charakterisierung dieses Items bzw. Nutzers.<br />

Die eigentliche Schwierigkeit dieses Verfahrens ist die Abbildung des Verhaltens der Benutzer<br />

auf die Vektoren sowie das Lernen der Itemfaktoren <strong>in</strong> den Itemvektoren. Diese Beschreibungen<br />

der Items <strong>und</strong> Benutzer s<strong>in</strong>d a priori nicht bekannt <strong>und</strong> müssen aus der User-Item-<br />

Matrix gelernt werden. Dieses Problem, das mit der S<strong>in</strong>gulärwertszerlegung (SVD) verwandt<br />

ist, wird gelöst [41, 40, 39], <strong>in</strong>dem die vorliegenden Bewertungen der Benutzer genommen<br />

werden, um damit direkt e<strong>in</strong> Modell des Benutzerverhaltens zu modellieren. Die Vektoren q i<br />

<strong>und</strong> p u werden erlernt, <strong>in</strong>dem der regulierte, quadrierte Fehler <strong>in</strong> der Menge der bekannten<br />

Bewertungen m<strong>in</strong>imiert wird:<br />

m<strong>in</strong><br />

∑<br />

(u,i)∈K<br />

(r ui − q T i p u) 2 + λ(||q i || 2 + ||p u || 2 ) (2.8)<br />

mit K als Menge aller Item-Nutzer-Paare (u, i), für die e<strong>in</strong>e Bewertung r ui bekannt ist. Das<br />

System lernt die bisherigen Bewertungen <strong>und</strong> soll daraus e<strong>in</strong>e Verallgeme<strong>in</strong>erung für zukünftige<br />

Bewertungen ableiten. Es besteht jedoch die Gefahr der Überanpassung, so dass die<br />

Konstante λ den Grad der Regulierung kontrolliert <strong>und</strong> üblicherweise per Kreuzvalidierung<br />

bestimmt wird [41].<br />

E<strong>in</strong>e Möglichkeit, die Gleichung 2.8 zu m<strong>in</strong>imieren ist e<strong>in</strong> stochastischer Gradientenabstieg,<br />

der von Simon Funk 1 vorgeschlagen <strong>und</strong> mit großem Erfolg im Netflix Prize e<strong>in</strong>gesetzt wurde<br />

(die Lösung der Gew<strong>in</strong>ner setzt dieses Verfahren erfolgreich e<strong>in</strong> [38]). Für jeden Fall im<br />

Tra<strong>in</strong><strong>in</strong>gsdatensatz schätzt das Verfahren die echte Bewertung r ui <strong>und</strong> bestimmt den entsprechenden<br />

Fehler e:<br />

e ui := r ui − q T i p u.<br />

Danach modifiziert es die Parameter um die Größenordnung γ <strong>in</strong> die entgegengesetzte Richtung<br />

des Gradienten:<br />

q i ← q i + γ · (e ui · p u − λ · q i ) (2.9)<br />

p u ← p u + γ · (e ui · q i − λ · p u ) (2.10)<br />

Dieses Verfahren bietet die Möglichkeit, zusätzliche implizite Informationsquellen mit e<strong>in</strong>zubeziehen.<br />

Dafür kann die Gleichung 2.7 erweitert werden. E<strong>in</strong>e s<strong>in</strong>nvolle Erweiterung ist<br />

die Beachtung des systematischen Fehlers, der sich ergeben kann, wenn beispielsweise zwei<br />

Benutzer die Bewertungsskala verschieden <strong>in</strong>terpretieren oder wenn es Items gibt, die allgeme<strong>in</strong><br />

besser als alle anderen Items bewertet werden, auch wenn sie dies objektiv gar nicht<br />

1 http://sifter.org/~simon/journal/20061211.html<br />

17

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!