weixin_54551968 2023-05-28 10:36 采纳率: 71.4%
浏览 150
已结题

用MLPRegressor训练好的神经网络模型怎么保存和调用

我在pycharm中用 MLPRegressor (from sklearn.neural_network import MLPRegressor)训练好了一个神经网络模型中间层(100,50,25),怎么保存训练好的模型和权重啥的,然后下次直接调用训练好的模型进行预测?请给出保存和调用代码,谢谢!
(我网上自己查了一些办法,有基于pytorch 或者 tensorflow包内的功能实现的保存的调用, 但是我用的 MLPRegressor,不在pytorch 或者 tensorflow里,直接用不了它们的方式 )

  • 写回答

3条回答 默认 最新

  • Vous oublie@ 2023-05-28 12:10
    关注

    在使用MLPRegressor进行训练后,你可以使用Python的pickle模块来保存和加载训练好的模型。以下是保存和加载MLPRegressor模型的示例代码:

    保存模型:

    import pickle
    
    # 假设你的模型实例名为model
    model = MLPRegressor(hidden_layer_sizes=(100, 50, 25))
    
    # 训练你的模型...
    
    # 保存模型到文件
    filename = 'mlp_model.sav'
    pickle.dump(model, open(filename, 'wb'))
    
    
    

    加载模型并进行预测:

    import pickle
    
    # 加载模型文件
    filename = 'mlp_model.sav'
    loaded_model = pickle.load(open(filename, 'rb'))
    
    # 使用加载的模型进行预测
    # 假设你有一组特征值 X_test
    predictions = loaded_model.predict(X_test)
    

    这样,你就可以将训练好的MLPRegressor模型保存到文件中,并在需要的时候加载模型进行预测。
    注意,在加载模型之前,你需要确保已经导入了必要的库(例如pickle)并且创建了与训练时相同的模型实例

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 6月13日
  • 已采纳回答 6月5日
  • 创建了问题 5月28日