from imblearn.pipeline import Pipeline from imblearn.over_sampling import SMOTE smt = SMOTE(random_state=0) pipeline_rf_smt_fs = Pipeline( ( ('preprocess',preprocessor), ('selector', SelectKBest(mutual_info_classif, k=30)), ('smote',smt), ('rf_classifier',RandomForestClassifier(n_estimators=600, random_state =2021)) ) )
i am getting below error:
All intermediate steps should be transformers and implement fit and transform or be the string ‘passthrough’ ‘SMOTE(random_state=0)’ (type <class ‘imblearn.over_sampling._smote.SMOTE’>) doesn’t
I believe smote has to be use post feature selection process. Any help on this would be very helpful.