[英]How can I do HyperParameter Tuning for PMML model in python?
我正在使用 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 模型進行超參數調整?
您可以像往常一樣進行超參數調整; 如果使用SkLearn2PMML包將生成的調整管道轉換為 PMML 表示,則無需執行任何特殊操作。
簡而言之,如果您只調整一個估算器,那么只需將其包裝到GridSearchCV
中即可。 例如:
pipeline = PMMLPipeline([
("tuned-rf", GridSearchCV(RandomForestClassifier(..), param_grid = {..}))
])
pipeline.fit(X, y)
如果您正在調整多個估算器,那么您可以將GridSearchCV
視為頂級工作流引擎,並將整個管道包裝到其中。 調整后的管道可以作為GridSearchCV.best_estimator_
屬性之后獲得:
pipeline = PMMLPipeline([
("rf", RandomForestClassifier(..))
])
gridsearch = GridSearchCV(pipeline, param_gird = {..})
gridsearch.fit(X, y)
pipeline = gridsearch.best_estimator_
更多詳情請看以下技術文章: https : //openscoring.io/blog/2019/12/25/converting_sklearn_gridsearchcv_pipeline_pmml/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.