我正在使用Python中的以下代码创建RandomForest PMML模型
from sklearn2pmml.pipeline import PMMLPipeline
from sklearn2pmml import sklearn2pmml
rf=RandomForestClassifier()
rf = PMMLPipeline([('random',rf)])
rf.fit(X_train, y_train)
sklearn2pmml(rf, "classification pmml file/random.pmml",with_repr=True)
并且我正在使用以下Python代码加载已保存的RandomForest模型
from pypmml import Model
rf = Model.fromFile('classification pmml file/random.pmml')
如何在Python中对此RandomForest PMML模型进行超参数调整?
答案 0 :(得分:0)
您可以照常进行超参数调整;如果使用SkLearn2PMML包将生成的已调整管道转换为PMML表示,则无需做任何特殊操作。
简而言之,如果您只是调整一个估计量,则只需将其包装到import React from 'react'
import { Route, Switch, withRouter, Redirect } from "react-router-dom";
import { Elements } from 'react-stripe-elements';
import Billing from './components/pages/account/billing/Billing';
export class Routes extends React.PureComponent {
render() {
return (
<Switch>
<Route path="/" exact component={() => <Elements><Billing /></Elements>} />
</Switch>
);
}
}
export default withRouter(Routes);
中即可。例如:
GridSearchCV
如果要调整多个估计量,则可以将pipeline = PMMLPipeline([
("tuned-rf", GridSearchCV(RandomForestClassifier(..), param_grid = {..}))
])
pipeline.fit(X, y)
视为顶级工作流引擎,并将整个管道包装到其中。之后,可以通过GridSearchCV
属性获取已调整的管道:
GridSearchCV.best_estimator_
有关更多详细信息,请参见以下技术文章:https://openscoring.io/blog/2019/12/25/converting_sklearn_gridsearchcv_pipeline_pmml/