Ich ging zu "Der Sommer ist in vollem Gange! Spark + Python + Data Science Festival".

http://connpass.com/event/34680/

Wie üblich habe ich mitten in der Sitzung teilgenommen, also habe ich das & macbook vergessen und ab der Mitte der ersten Ankündigung Notizen auf meinem iPhone gemacht, sodass ich der Meinung bin, dass Japanisch unpraktisch ist.

Ibis: Erstaunliche Pandas Eine umfassende Datenanalyse ist einfach

Herr Yasuaki Ariga (@chezou) von Cloudera

http://www.slideshare.net/Cloudera_jp/ibis-pandas-summerds

Demo mit Jupyter Notebook

Scikit-learn wird nach dem Erstellen von Lehrerdaten veröffentlicht

Im Vergleich zu PySpark

spark-sklearn

pip install ibis-framework Kann mit installiert werden

Wenn Sie Impala verwenden möchten, sollten Sie Clouderas Direktor verwenden.

Einführung des Empfehlungssystems in Ameba

Herr Haruka Naito, Cyber Agent

Übersicht über das Empfehlungssystem

Die folgenden drei Arten von Empfehlungssystemen werden in Ameba verwendet

Verwendung des Empfehlungssystems

Überblick

  1. Aktivitätsprotokoll zu Hadoop
  2. Senden Sie das Empfehlungsergebnis an hbase
  1. Rückmeldung des Empfehlungsergebnisses imp / clk etc.

Item to Item collaborative filtering

Benutzerbasierte Co-Filterung

Basierend auf der Bewertung von Benutzern, die nahe beieinander liegen

Gegenstandsbasis

Basierend auf der Benutzerbewertung basierend auf dem Abstand zwischen Elementen Die Genauigkeit kann auch dann erreicht werden, wenn der Artikel weniger bewertet wird

Kosinusähnlichkeit

Teilen Sie die Anzahl der gleichzeitigen Vorkommen (Anzahl der doppelten Benutzer) durch die Summe der Quadratwurzeln der Elemente

Einfallsreichtum für jeden Fall

Halte es einfach

Ordnen Sie jedem Mitarbeiter eine Broadcast-Variable zu. Dadurch sind keine komplizierten Verknüpfungen mehr erforderlich

Ich möchte die Empfehlungsergebnisse auf neue beschränken

Erstellen Sie im Voraus einen Objektsatz (Filter) und filtern Sie die Ergebnisse

Leistungsoptimierung und Automatisierung der Empfehlungs-Engine mithilfe von Spark

Herr Nagato Kasaki, DMM.com Lab

Operationsgeschichte nach dem Erstellen

Übersicht über das Spark-Nutzungssystem

Funkenauslastung ab Februar 2015.

13 bis 168 Fälle mit 3 Ingenieuren Ich konnte damit umgehen, weil es automatisiert war

Ressourcen sind ungefähr 1,5 mal 230 CPUs / 580 GB bis 360 CPUs / 900 GB

Zeit von 3h bis 4h

Installationsautomatisierung

Da es viele Dienste gibt, ist es einfach, neue Dienste zu verwenden.

Wenn Sie einen Dienst hinzufügen möchten

  1. Schreiben Sie ein Rezept
  2. Führen Sie den Test gemäß den Rezept-Jenkins durch
  1. Leistung bei der Inszenierung
  2. Freigabe für die Produktion

Da das Verhältnis der Anzahl der Benutzer und der Anzahl der Elemente je nach Dienst stark variiert, ist auch eine individuelle Abstimmung erforderlich.

Der Skalensinn beträgt 1 Million Benutzer oder 4 Millionen Produkte

Wir haben eine Artikelmatrix für alle Dienstleistungen → Empfehlungen zwischen Diensten sind ebenfalls möglich

Rangfolge

Zwei Arten von Algorithmen werden ordnungsgemäß verwendet

  1. Datenformung mit Hive
  2. Nur Empfehlungsberechnung in Spark
  1. Ausgabe mit Sqoop an DB

Das Rezept definiert die Parametereinstellungen für Hive, Spark und Sqoop in JSON.

Präzisionsabstimmung wird tatsächlich eingegeben und A / B getestet (es gibt akademische Bewertungsformeln, aber es gibt einige Dinge, die nicht verstanden werden können, ohne es zu versuchen). Die Leistung ist leicht zu verstehen und problematisch. Stellen Sie sie daher im Voraus ein

  1. Auf der Suche nach einem Engpass
  2. Beseitigen Sie die Datenverzerrung

Die Datenaufteilung schlägt manchmal aufgrund des Gesetzes von 20:80 fehl (in vielen Fällen ist sie voreingenommen, selbst wenn sie geteilt wird). Wenn Sie es gut teilen können, wird es von 3 Stunden auf 3 Minuten verkürzt


(Bearbeitung unten)

LT Rahmen

Funkenanfänger waren süchtig nach Empfehlungen

Festplattenentleerung beim Senden alle 15 Minuten Glas wird kopiert Senden, während der Cluster neu erstellt wird

Kleine Anzahl von Partitionen beim Laden aus BigQuery Executor kann nicht aufgebraucht werden Die Neupartitionierung ist wichtig

Nicht empfohlen Es gibt zu viele Benutzer, um direkte Produkte zu erhalten Zusammen in einem Benutzersatz verarbeitet

Empfehlung Optimierung der Motorleistung mit Spark

dag visualisation Mal sehen

Wenn nicht verteilt, verteilen Mischen Sie nicht mit einer großen Datenmenge

Mehrfach verwendetes Rdd wird zwischengespeichert

Option, bei CPU-Engpass nicht zu serialisieren

KryoSerializer ist doppelt so schnell

Recommended Posts

Ich ging zu "Der Sommer ist in vollem Gange! Spark + Python + Data Science Festival".
Data Science-Begleiter in Python, wie man Elemente in Pandas spezifiziert
Ich habe versucht, PLSA in Python zu implementieren
[Data Science-Grundlagen] Ich habe versucht, mit Python von CSV auf MySQL zu speichern
Ich habe versucht, Permutation in Python zu implementieren
Ich habe versucht, PLSA in Python 2 zu implementieren
Ich habe Udemys "Practical Python Data Science" ausprobiert.
Ich habe versucht, ADALINE in Python zu implementieren
Ich wollte ABC159 mit Python lösen
Ich habe versucht, PPO in Python zu implementieren
Verwendung ist und == in Python
Bücher über Datenwissenschaft, die 2020 gelesen werden sollen
Python-Programm ist langsam! Ich möchte beschleunigen! In einem solchen Fall ...
Ich möchte Dunnetts Test in Python machen
Python: Ich konnte in Lambda rekursieren
Ich möchte mit Python ein Fenster erstellen
Geschrieben "Einführung in die Effektüberprüfung" in Python
Ich habe versucht, CloudWatch-Daten mit Python abzurufen
Ich möchte verschachtelte Dicts in Python zusammenführen
Ich habe versucht, TOPIC MODEL in Python zu implementieren
Ich habe versucht, eine selektive Sortierung in Python zu implementieren
Ich möchte den Fortschritt in Python anzeigen!
Ich möchte eine Python-Datenquelle in Re: Dash verwenden, um Abfrageergebnisse zu erhalten
[Impression] [Datenanalyse ab Null] Einführung in die Python-Datenwissenschaft in Geschäftsfällen
[Erste Datenwissenschaft ⑥] Ich habe versucht, den Marktpreis von Restaurants in Tokio zu visualisieren
Ich möchte in Python schreiben! (1) Überprüfung des Codeformats
Ich habe versucht, die in Python installierten Pakete grafisch darzustellen
Ich möchte eine Variable in einen Python-String einbetten
Ich möchte Timeout einfach in Python implementieren
Zusammenfassung der Tools, die zum Analysieren von Daten in Python benötigt werden
[Kleine Geschichte] In Python ist i = i + 1 etwas schneller als i + = 1.
Ich möchte in Python schreiben! (2) Schreiben wir einen Test
Auch mit JavaScript möchte ich Python `range ()` sehen!
Ich habe versucht, einen Pseudo-Pachislot in Python zu implementieren
Ich möchte eine Datei mit Python zufällig testen
Ich habe versucht, Drakues Poker in Python zu implementieren
Ich war süchtig danach, 2020 mit Selen (+ Python) zu kratzen
Ich möchte mit einem Roboter in Python arbeiten.
Ich habe versucht, GA (genetischer Algorithmus) in Python zu implementieren
Ich möchte in Python schreiben! (3) Verwenden Sie Mock
Ich habe versucht zusammenzufassen, wie man Pandas von Python benutzt
Python: Kann in Lambda wiederholt werden
Ich möchte sagen, dass es eine Datenvorverarbeitung gibt ~
Ich möchte R-Datensatz mit Python verwenden
Ich möchte am Ende etwas mit Python machen
Ich möchte Strings in Kotlin wie Python manipulieren!
Ich möchte Daten mit Python analysieren können (Teil 3)
Ich möchte initialisieren, wenn der Wert leer ist (Python)
So testen Sie, ob die Ausnahme in Python unittest ausgelöst wird
Ich habe versucht, API list.csv mit Python aus swagger.yaml zu erstellen
Ich habe versucht, mit Python faker verschiedene "Dummy-Daten" zu erstellen
Ich habe versucht, einen eindimensionalen Zellautomaten in Python zu implementieren
Ich möchte Daten mit Python analysieren können (Teil 1)
Ich möchte so etwas wie Uniq in Python sortieren
Verschiedene Methoden zur Berechnung der Ähnlichkeit zwischen Daten mit Python
Ich möchte Daten mit Python analysieren können (Teil 4)
Ich möchte Daten mit Python analysieren können (Teil 2)
Ich habe versucht "Wie man eine Methode in Python dekoriert"
Ich habe versucht, die Mail-Sendefunktion in Python zu implementieren