이제 python sklearn에서 'GB'라는 gbdt 모델을 교육했습니다. 그리고이 훈련 된 모델을 pmml 파일로 내보내려고합니다. 그러나 나는이 문제를 만난다 : 1. 훈련 된 'GB'모델을 PMMLpipeline에 넣고 sklearn2pmml을 사용하여 모델을 내보내려고하면.sklearn2pmml을 사용할 때 feature_importance를 얻는 방법
GB = GradientBoostingClassifier(n_estimators=100,learning_rate=0.05)
GB.fit(train[list(x_features),Train['Target']])
GB_pipeline = PMMLPipeline([("classifier",GB)])
sklearn2pmml.sklearn2pmml(GB_pipeline,pmml='GB.pmml')
importance=gb.feature_importances_
''active_fields '속성이 설정되지 않았습니다'라는 경고 메시지가 표시됩니다. 그리고 내 보낸 pmml 파일에서 모든 기능의 이름을 잃게됩니다.
PMMLPipeline에서 모델을 직접 훈련 시키려고하면. GB_pipeline에는 feature_importances_ 속성이 없으므로이 모델의 features_importance를 관찰 할 수 없습니다. 아래처럼 :
GB_pipeline = PMMLPipeline ([("분류", GradientBoostingClassifier (n_estimators = 100, learning_rate = 0.05))]) PMMLPipeline.fit (기차 [목록 (x_features), 기차 [ '대상']]) sklearn2pmml.sklearn2pmml (GB_pipeline, PMML = 'GB.pmml')
내가 모델의 features_importance을 관찰하고 또한 내 보낸 PMML 파일의 기능의 이름을 유지할 수 있습니다 모두 그렇게해야 어떤
. 대단히 감사합니다!
이 작품은 !!!!!!!!!!!!!! 주셔서 감사합니다. 나는 파이프 라인이 무엇인지 이해하지 못하기 때문에 근본적인 이유가 있다고 생각한다. 고마워요! – Noah
따라서이 질문을 마무리하기 위해 내 대답을 수락 된 것으로 표시하십시오. – user1808924