Apropos, ich habe letzten Oktober am Jubatus Hackathon # 1 teilgenommen.
http://connpass.com/event/8233/
Die Folien zum Zeitpunkt der Ankündigung sind hier übersichtlich zusammengefasst. Bitte beziehen Sie sich auf sie.
http://blog.jubat.us/2014/10/jubatus.html
Obwohl ich es an einem Tag von der Planung bis zur Implementierung geschafft habe, bedauere ich, dass es viel Arbeit war. Also werde ich ein wenig hinzufügen.
Kurz vor dem Hackathon besuchte ich eine der größten Werbeveranstaltungen in Japan. Lassen Sie uns davon inspiriert eine Werbung machen! Als ich einem Junior des gleichen Teams erzählte, bekam ich ein OK, also habe ich es geschafft.
Spezifische Spezifikationen und Annahmen lauten wie folgt:
――Ich habe sogenannte eigene Medien (Artikel) und möchte Anzeigen schalten, die dazu passen. ――Matching bedeutet, dass der Inhalt des Artikels und der Inhalt der Werbung ähnlich sind.
Besonders wichtig ist der Bodenzustand, der ein sehr großes Gewicht hat.
Wenn Sie einen kleinen ernsthaften Grund angeben, gibt es eine Selbstmahnung, die Struktur so einfach wie möglich zu gestalten, wenn Sie sich verlaufen. Dies liegt daran, dass komplexe Systeme die Wartungskosten erhöhen. Insbesondere beim maschinellen Lernen, wenn ein Fehler (oder ein unangenehmes Verhalten) im System vorliegt
Es gibt viele Dinge zu beachten, wie zum Beispiel, dass ich nicht mehr arbeiten möchte (ernst). Grundsätzlich automatisieren Ingenieure, um die Arbeit zu vereinfachen. Wenn also die Anzahl der Jobs zunimmt, ist dies überwältigend (?).
Übrigens wird der Code wahrscheinlich nicht so funktionieren wie er ist, aber er ist auf Github.
https://github.com/chase0213/jubatus-hackathon-01
Hier ist die Folie zum Zeitpunkt der Ankündigung.
http://www.slideshare.net/chisatohasegawa370/jubatus-hackathon-1hiyoshi
Wie Sie vielleicht von Github bemerkt haben, haben wir zunächst versucht, eine 3-Server-Konfiguration von Rails + Elasticsearch + Jubatus zu erhalten. Der Elasticsearch-Teil war jedoch nicht wesentlich und wurde abgelehnt. Ich wollte es benutzen. .. ..
Der Ablauf der Anfrage ist wie folgt.
Sie graben sich also nur in die Empfehlung ein.
Dann wird der Ort zur Beurteilung der Ähnlichkeit zwischen dem Artikel und der Werbung als Merkmalsgröße unter Verwendung des Vektorkonverters von Jubatus beibehalten, bei dem es sich um die morphologische Analyse unter Verwendung von Mecab + Ipadic handelt.
http://jubat.us/ja/fv_convert.html
Dieser Konverter ist so gut, dass er nicht viel zum Kneten der Funktionen beiträgt. Es ist also mit Lärm bedeckt und nicht sehr genau, aber ich werde später darüber sprechen.
Ich habe es auf AWS bereitgestellt und demonstriert. Ich habe gerade eine Maschine mit vernünftigen Spezifikationen verwendet, daher habe ich sie jetzt gestoppt (aus finanziellen Gründen). Wenn Sie mit dem Code richtig herumspielen, funktioniert er lokal. Bitte spielen Sie damit herum.
Im Lernbereich des Lernens konnten Anzeigen dynamisch hinzugefügt werden, und der Geschmack des Lerngeräts war nicht so gut. Normalerweise stellen sich viele Leute vor, dass maschinelles Lernen jedes Mal intelligenter wird, wenn es verwendet wird. Deshalb werde ich diesen Teil kurz kommentieren (ich werde keinen Code schreiben, nicht schlecht).
Wenn es darum geht, einen Lernenden in einem Werbesystem zu verwenden, geht es meiner Meinung nach zunächst darum, die Impression-Rate zwischen dem, was tatsächlich angeklickt wurde und dem, was nicht, zu ändern. Mit anderen Worten, für eine Kombination von Artikeln und Anzeigen, auf die häufig geklickt wird, werden mehr Impressionen angezeigt, und für diejenigen, die dies nicht tun, werden sie gelegentlich aus einer Laune heraus angezeigt.
Ich habe es nicht wirklich geschafft, aber ich denke, es kann mit einem Klassifikator gemacht werden. Nehmen Sie insbesondere die UNION des Inhalts des Artikels, der durch das Suchsystem eingegrenzt wurde, und den Inhalt der angeklickten Werbung und tauchen Sie ihn in den Klassifizierer mit der Bezeichnung ein, auf die geklickt wurde. Wenn Sie nicht klicken, speichern Sie den Artikel und die Anzeige UNION mit der Bezeichnung, auf die nicht geklickt wurde. Beachten Sie jedoch Folgendes.
Selbst wenn ein Link nicht angeklickt wird, ist es verfrüht festzustellen, dass der Benutzer nicht daran interessiert ist.
Da Benutzern in vielen Fällen viele andere Optionen angeboten werden,
Es zeigte nicht aktiv an, dass er nicht an dem Link interessiert war.
Ich habe es wie ein Zitat aussehen lassen, aber es ist meine persönliche Meinung. Auf der anderen Seite sollten angeklickte Informationen stärker behandelt werden als nicht angeklickte Informationen.
Wenn Sie diesen Bereich also statistisch gut einstellen und für die binäre Klassifizierung in classfier eintauchen, können Sie vorhersagen, ob der Benutzer wahrscheinlich auf diese Kombination klicken wird. Wenn Sie diesen Wert in die obere Zeile zurückgeben (Empfehlung) und ihn als Koeffizienten wiedergeben, werden mehr Kombinationen angezeigt, auf die häufig geklickt wird.
Der letzte Absatz ist eine Schreibtisch-Theorie, daher denke ich, dass die Fallstricke überall verstreut sind. Dann habe ich es oben als "laut" beschrieben, aber dies sollte bis zu einem gewissen Grad toleriert werden. Dies liegt daran, dass völlig rauschfreie Anzeigen für Benutzer langweilig sein können (Anzeigen sind nicht professionell und sollten nicht zu ausführlich erwähnt werden).
Recommended Posts