使用 scikit-learn 训练模型的更快方法

Gea*_*ric 0 python machine-learning pickle scikit-learn

我已经使用 scikit-learn 训练了一个预测模型,并用于pickle将其保存到硬盘驱动器。该pickle文件是58M,这是相当大的。

为了使用模型,我写了这样的东西:

def loadModel(pkl_fn):
    with open(pkl_fn, 'r') as f:
         return pickle.load(f)


if __name__ == "__main__":
    import sys
    feature_vals = read_features(sys.argv[1])
    model = loadModel("./model.pkl")
    # predict 
    # model.predict(feature_vals)
Run Code Online (Sandbox Code Playgroud)

我想知道在命令行中多次运行程序时的效率。

Pickle 文件应该可以快速加载,但有什么办法可以加快速度吗?我可以将整个内容编译成二进制可执行文件吗?

ldi*_*rer 5

如果您担心加载时间,可以使用joblib.dumpand joblib.load,在 scikit-learn 的情况下,它们比 pickle 更有效。

有关完整(非常简单)的示例,请参阅ogrisel的文档或相关答案: 将分类器保存到 scikit-learn 中的磁盘