Scikits-Lernen RandomForrest trainiert auf 64-bit-python-Gewohnheit, offen auf 32bit python
Trainiere ich eine RandomForestRegressor-Modell auf 64-bit-python.
Ich Gurke das Objekt.
Wenn Sie versuchen, um unpickle das Objekt auf 32bit python erhalte ich die folgende Fehlermeldung:
'ValueError: Puffer, "dtype " mismatch", erwartet 'SIZE_t' aber hab 'lange, lange"
Ich habe wirklich keine Ahnung wie man dieses Problem beheben, so dass jede Hilfe wäre enorm geschätzt.
Edit: genauer
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "c:\python27\lib\pickle.py", line 1378, in load
return Unpickler(file).load()
File "c:\python27\lib\pickle.py", line 858, in load
dispatch[key](self)
File "c:\python27\lib\pickle.py", line 1133, in load_reduce
value = func(*args)
File "_tree.pyx", line 1282, in sklearn.tree._tree.Tree.__cinit__ (sklearn\tre
e\_tree.c:10389)
- Ich bin mir nicht sicher, ob dies sollte berücksichtigt werden, ein Fehler der cython-Baum-Klasse, nicht tolerant genug zu unpickling Zeit, eine schlechte Wahl für einen Puffer dtype oder eine grundlegende Beschränkung von Beizen sklearn Modelle.
- Hat es irgendwelche Fortschritte auf diesem? Ich bin der Suche nach dem gleichen problem im moment.
- Von Nov/2017 ich habe genau das gleiche Problem. sklearn.__version__ : '0.19.1'
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dies tritt auf, weil random forest code verwendet verschiedene Typen von Indizes, die auf 32-bit-und 64-bit-Maschinen. Das kann leider nur behoben werden, indem die überholung der random forests-code. Seit mehreren scikit-learn-Entwickler sind arbeiten sowieso, ich habe es auf der todo-Liste.
Für jetzt, die Ausbildung und Prüfung Maschinen brauchen, um die gleiche Größe des Zeigers.
.dump()
/.load()
- Methoden inscikit-learn
? Trotzdem haben Sie schon gehört / getroffen in der Zwischenzeit eine workaround ( sei es permarshall
oder mit anderen Mitteln ) ? Wäre sehr froh, wenn Sie finden es nützlich für die gemeinsame Nutzung von wissen, larsmans. Danke.memalloc
Probleme mit "großen Bäumen". Ja, diese sind wichtig. Sehr wichtig zu halten, low-profile -.load()
- s sobald Bewegungpickle.dump()
-ed-Bestien aus Ihren mehr als 3,2 GB große Festplatte-Darstellungen zurück in den RAM. Hoffnung zu hören, frische news aus dem team (hab gesehen, die nicht viel Aktivität auf S/O, da 2014-01). Bleiben Sie dran. Sie machen einen tollen job!