在64位python上训练的Scikits-Learn RandomForrest不会在32位python上打开

Wil*_*amp 13 machine-learning scikit-learn

我在64位python上训练一个RandomForestRegressor模型.我挑选了这个物体.当试图在32位python上取消对象时,我得到以下错误:

'ValueError:缓冲区dtype不匹配,预期'SIZE_t'但得到'long long''

我真的不知道如何解决这个问题,所以任何帮助都会非常感激.

编辑:更多细节

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)
Run Code Online (Sandbox Code Playgroud)

Fre*_*Foo 10

发生这种情况是因为随机林代码在32位和64位计算机上使用不同类型的索引.遗憾的是,这只能通过检索随机森林代码来解决.由于几个scikit-learn开发人员正在研究这个问题,我把它放在todo列表上.

目前,训练和测试机器需要具有相同的指针大小.