Wir haben ein Extra Tree-Modell für eine Regressionsaufgabe trainiert. Unser Modell besteht aus 3 zusätzlichen Bäumen mit je 200 Bäumen der Tiefe 30. Zusätzlich zu den 3 zusätzlichen Bäumen verwenden wir eine Grat-Regression. Wir trainieren unser Modell mehrere Stunden lang und pikieren das trainierte Modell (das gesamte Klassenobjekt) für den späteren Gebrauch. Allerdings ist die Größe des gespeicherten trainierten Modells zu groß, etwa 140 GB! Gibt es eine Möglichkeit, die Größe des gespeicherten Modells zu reduzieren? Gibt es irgendeine Konfiguration in Gurke, die hilfreich sein könnte, oder irgendeine Alternative für Gurke?Trained Machine Learning-Modell ist zu groß
Antwort
Im besten Fall (binäre Bäume) haben Sie 3 * 200 * (2^30 - 1) = 644245094400
Knoten oder 434Gb
unter der Annahme, jeder Knoten würde nur 1 Byte zum Speichern kosten. Ich denke, dass 140GB im Vergleich eine ziemlich anständige Größe ist.
Edit: Schlechte Mathematik.
Sie können versuchen, joblib mit Komprimierungsparameter zu verwenden.
komprimieren - von 0 bis 9. Höherer Wert bedeutet mehr Komprimierung, aber auch langsamere Lese- und Schreibzeiten. Ein Wert von 3 ist oft ein guter Kompromiss.
Sie können die Python-Standardkomprimierungsmodule zlib, gzip, bz2, lzma und xz verwenden. So verwenden Sie, dass Sie nur das Format mit spezifischen Erweiterung angeben können
Beispiel
joblib.dump(obj, 'your_filename.pkl.z') # zlib
Weitere Informationen finden Sie unter [link] :(http://gael-varoquaux.info/programming/new_low-overhead_persistence_in_joblib_for_big_data.html)
- 1. Keras Trained VGG Fehler
- 2. QTextEdit ist zu groß?
- 3. Executable ist zu groß
- 4. Meine Protokolldatei ist zu groß
- 5. Wann ist $ .cache zu groß?
- 6. Wie groß ist zu groß für eine PostgreSQL-Tabelle?
- 7. Wie groß ist zu groß für eine MySQL-Tabelle?
- 8. Wie groß ist zu groß für ein Redux-Geschäft?
- 9. Wie groß ist "zu groß" für eine Javascript-Datei
- 10. Wie groß ist zu groß für XP/SCRUM?
- 11. Spring State Machine ist Statefull?
- 12. Was ist zu groß für eine Datenbank?
- 13. Laravel Projektordner Größe ist zu groß?
- 14. Unity iPhone App Größe ist zu groß
- 15. {help} - drupal --- cache_form-Tabelle ist zu groß
- 16. Postanforderung ist in jmeter zu groß
- 17. generiert DH Schlüssel ist zu groß
- 18. Breite von-Steuerelement ist zu groß
- 19. swift Bild für Knopf ist zu groß
- 20. Ist meine ASP.NET-Sitzung zu groß?
- 21. Der Abstand zwischen Kartenansicht ist zu groß
- 22. Bild ist zu groß für Jumbotron
- 23. HTML canvas measureText(). Width ist zu groß
- 24. VBA - Excel-Prozedur ist zu groß
- 25. RecyclerView Item Lücke ist zu groß
- 26. Wie groß ist klein, normal, groß und groß?
- 27. Wie groß ist RLMInt?
- 28. Ist F # Groß-/Kleinschreibung?
- 29. Feld ist zu groß (32K) oder Ansicht der Spalte & Auswahlformeln sind zu groß
- 30. Mysqlnd aktive Verbindungen Nummer ist zu groß. Ist das normal?
Die scikit Modell Persistenz [Seite] (http://scikit-learn.org/stable/modules/model_persistence.html#) schlägt vor, dass die Verwendung von "joblib" in einigen Fällen effizienter sein kann. – Tchotchke