py icon indicating copy to clipboard operation
py copied to clipboard

how to do hyperparameter tuning using K Fold cross-validation

Open maruf78901 opened this issue 5 years ago • 1 comments

import pandas as pd from matplotlib import pyplot as plt import numpy as np df = pd.read_csv(r"C:\Users\mdmar\Downloads\Thesis\Data/1024.csv") #print(df.head()) #sizes = df['target'].value_counts(sort=1) #print(sizes) #Define dependent variable Y = df['target'].values Y=Y.astype('int') #define independent variable X = df.drop(labels=['target'], axis=1) #Split dataset for train and test from sklearn.model_selection import train_test_split X_train, X_test, Y_train, Y_test=train_test_split(X,Y,test_size=0.30, random_state=30) #print(X_train) #Import Random Forest from sklearn.ensemble import RandomForestClassifier model = RandomForestClassifier(n_estimators=70, random_state=40) model.fit(X_train,Y_train) prediction_test = model.predict(X_test) print(prediction_test) from sklearn import metrics print("Accuracy:",metrics.accuracy_score(Y_test, prediction_test)*100,'%') print(model.feature_importances_) print(model.feature_importances_*100,'%') Out : [1 1 1 0 0 1 1 1 1 1 1 1 0 1 1 0 0 1 1 0 1 0 0 0 1 1 1 1 1 1 0 1 0 1 0 1 1 1 0 0 1 1 1 0 0 0 1 1 0 0 1 1 1 1 1 1 0 0 0 0 1 1 1 0 0 0 1 0 0 1 0 1 0 0 0 0 1 1 0 0 0 1 0 0 1 1 0 0 0 1 0 0 1 0 0 0 0 0 0 1 1 0 0 1 1 0 1 0 0 0 0 0 0 1 0 0 0 0 1 0 1 0 0 1 1 1 0 1 0 1 0 0 1 1 1 1 1 0 0 0 0 1 0 1 0 0 1 1 0 0 0 0 1 0 1 0 0 1 1 1 0 0 0 1 0 1 1 1 1 1 1 1 1 0 0 1 0 0 0 1 0 0 1 0 0 0 0 0 1 1 1 0 1 1 1 0 1 1 1 1 1 0 0 1 1 0 0 0 1 0 0 1 0 1 0 0 0 0 1 1 1 0 0 0 0 1 0 0 1 1 1 1 1 1 0 1 0 1 0 0 1 0 0 0 0 1 1 0 1 1 1 0 0 1 0 1 1 0 0 1 1 1 1 1 0 1 0 0 0 1 0 0 1 0 1 0 0 0 1 0 0 1 1 1 0 1 0 0 1 0 0 0 1 0 1 1 1 0 0 1 0 1 0 0 1 1 1 1] Accuracy: 97.72727272727273 % [0.1031516 0.0358877 0.11881306 0.09649581 0.09640051 0.01116345 0.02173903 0.13786201 0.06464796 0.13677327 0.05528801 0.12177758] [10.31516006 3.58876957 11.88130644 9.64958137 9.64005136 1.11634483 2.17390296 13.78620058 6.46479635 13.67732725 5.52880149 12.17775775] %

how to do hyperparameter tuning using K Fold cross-validation using this model

maruf78901 avatar Jun 22 '20 10:06 maruf78901

You can probably try following code,

from sklearn.model_selection import cross_val_score cross_val_score(model, X, Y, cv=3)

Tusharbagul avatar Aug 03 '20 10:08 Tusharbagul