[PYTHON] Die Verwaltung der Funktionsmenge von Kaggle war mit PostgreSQL besser als erwartet, daher habe ich ein Verzeichnis erstellt, das jeder mit Docker verwenden kann.

Dieser Artikel ist der 19. Tagesartikel von Kaggle Adventskalender 2019.

Hallo, ich heiße kiccho1101! Schreibe zum ersten Mal in meinem Leben einen Artikel! Vielen Dank!

Einführung

Dieses Mal möchte ich das Feature-Mengen-Management von Kaggle vorstellen, da es besser ist als erwartet, als ich es mit PostgreSQL ausprobiert habe.

Klicken Sie hier für das erstellte Verzeichnis: https://github.com/kiccho1101/datascience-template ↑ Die README-Datei enthält Verwendungsbeispiele mit Daten aus dem Titanic-Wettbewerb.

Was ist Feature-Mengenmanagement?

Wenn Sie im Kaggle-Wettbewerb den Code schreiben, ohne wie ich (früher) zu denken, treten die folgenden Probleme auf.

――Ich weiß nicht, was die Feature-Menge darstellt --notebook befindet sich in einem chaotischen Zustand (exp1.ipynb, exp1_tmp.ipynb, exp1_tmp_tmp.ipynb usw. werden in großer Anzahl generiert) ――Wenn ich ein halbes Jahr später zurückblickte, habe ich es selbst geschrieben? ?? ?? Code wird generiert

Um diese Probleme zu lösen, müssen die Funktionen auf irgendeine Weise verwaltet werden.

Für die Verwaltung der Funktionsmenge [Takanobu Nozawas Folie](https://speakerdeck.com/takapy/detafen-xi-konpenioite-te-zheng-liang-guan-li-nipi-bi-siteiruquan-ren-lei- nichuan-etaixiang-i) ist sehr leicht zu verstehen, daher würde ich es begrüßen, wenn Sie sich darauf beziehen könnten.

Überblick

Die Funktionen dieses Verzeichnisses sind unten zusammengefasst.

Verwalten Sie Daten mit PostgreSQL im Docker-Container

Durch die Verwendung der Datenbank

Sie können die Daten im Datenbank-Viewer sehen, z. Das ist sehr gut. EDA ist viel einfacher als mit Pandas.

Kommandozeilen-Tool mit Makefile

Feature-Generierung

feature.gif

Kreuzvalidierung

cv.gif

Prognose

predict.gif

Auf diese Weise habe ich es möglich gemacht, häufig ausgeführte Operationen mit dem Befehl make auszuführen. Es reduziert nur die Menge an Code, die ich schreibe, aber es ist ziemlich bequem zu codieren.

Zusammenfassung

Dieses Mal wird der Code der Hauptcode sein, daher habe ich ihn im Artikel nur kurz erklärt. Wenn Sie es "interessant" finden, klonen Sie es bitte und verwenden Sie es! !!

Schließlich Pull Request & Folk sind willkommen! !! !! Sie können uns gerne kontaktieren! !! !!

Recommended Posts

Die Verwaltung der Funktionsmenge von Kaggle war mit PostgreSQL besser als erwartet, daher habe ich ein Verzeichnis erstellt, das jeder mit Docker verwenden kann.
Es fiel mir schwer, meine Hausaufgaben zu machen, deshalb verwendete ich Python für das Management Accounting.
[Python] Ich möchte mit Flask ein statisches Verzeichnis hinzufügen. [Ich möchte etwas anderes als statisch verwenden.]
Die Leistung von PHP war besser als ich erwartet hatte
Erstellen Sie eine Docker-Umgebung, die PyTorch und JupyterLab verwenden kann
Ich habe ein Plug-In erstellt, das "Daruma-san Fell" mit Minecraft ausführen kann