Ich arbeite am Python-AutoML-Paket und einer meiner Benutzer berichtete über eine sehr hohe Speicherauslastung bei der Verwendung von xgboost .
Ich habe eine Untersuchung durchgeführt, um den Speicherverbrauch von xgboost zu zeigen. Das Notizbuch finden Sie hier . Aus dem Code können Sie ersehen, dass das Modell über 7 GB RAM-Speicher zuweist. Wenn ich das Modell auf Festplatte (5 kB !) speichere und es dann wieder lade, kann ich eine Menge RAM sparen.
Für mich sieht es so aus, als würde xgboost die Kopie der Daten in seiner Struktur speichern? Habe ich recht?
Gibt es eine Möglichkeit, die Speichernutzung durch xgboost zu reduzieren? Denken Sie, dass das Speichern des Modells auf der Festplatte und das anschließende Laden dieses Problems eine Möglichkeit ist, dieses Problem zu lösen?
@pplonski Wir versuchen, die Kopie für den Histogrammalgorithmus zu eliminieren. Es ist in Arbeit. Für GPU ist es meistens getan: https://github.com/dmlc/xgboost/pull/5420 https://github.com/dmlc/xgboost/pull/5465
Die CPU hat noch einiges zu tun.
@pplonski , wir haben die Reduzierung des Speicherverbrauchs auf der CPU auch in diesem PR https://github.com/dmlc/xgboost/pull/5334 implementiert, aber nur für die 'hist'-Methode. Es ist vorerst nur im Master enthalten, aber ich hoffe, es wird Teil der zukünftigen Version sein.
Speicher, KB | Fluggesellschaft | Higgs1m |
-- | -- | -- |
Vorher | 28311860 | 1907812 |
https://github.com/dmlc/xgboost/pull/5334 | 16218404 | 1155156 |
reduziert: | 1,75 | 1,65 |
Stimme @trivialfis zu, es gibt viele Dinge zu tun in der Gegend.
Hallo, ich hatte kürzlich ein ähnlich hohes Speicherproblem mit xgboost. Ich verwende 'gpu_hist' für das Training.
Ich bemerke große Systemspeicherspitzen, wenn die Methode train()
ausgeführt wird, was dazu führt, dass mein Jupyter-Kernel abstürzt.
Hilfreichster Kommentar
@pplonski , wir haben die Reduzierung des Speicherverbrauchs auf der CPU auch in diesem PR https://github.com/dmlc/xgboost/pull/5334 implementiert, aber nur für die 'hist'-Methode. Es ist vorerst nur im Master enthalten, aber ich hoffe, es wird Teil der zukünftigen Version sein.
Speicher, KB | Fluggesellschaft | Higgs1m |
-- | -- | -- |
Vorher | 28311860 | 1907812 |
https://github.com/dmlc/xgboost/pull/5334 | 16218404 | 1155156 |
reduziert: | 1,75 | 1,65 |
Stimme @trivialfis zu, es gibt viele Dinge zu tun in der Gegend.