Python scikit-学习JSON

Python scikit-学习JSON,第1张

Python scikit-学习JSON

您将必须准备自己的序列化/反序列化方法。幸运的是,逻辑回归基本上可以通过系数和截距来捕获。但是,该

LogisticRegression
对象还保留了一些其他元数据,我们也可以围绕这些元数据进行捕获。我汇集了以下功能来完成工作。请记住,这仍然很粗糙:

import numpy as npimport jsonfrom sklearn.linear_model import LogisticRegressiondef logistic_regression_to_json(lrmodel, file=None):    if file is not None:        serialize = lambda x: json.dump(x, file)    else:        serialize = json.dumps    data = {}    data['init_params'] = lrmodel.get_params()    data['model_params'] = mp = {}    for p in ('coef_', 'intercept_','classes_', 'n_iter_'):        mp[p] = getattr(lrmodel, p).tolist()    return serialize(data)def logistic_regression_from_json(jstring):    data = json.loads(jstring)    model = LogisticRegression(**data['init_params'])    for name, p in data['model_params'].items():        setattr(model, name, np.array(p))    return model

注意,

'coef_', 'intercept_','classes_'
由于逻辑回归是直接线性模型,因此您可以自己进行预测,因此它只是矩阵乘法。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5673306.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存