Untitled
unknown
plain_text
a year ago
1.6 kB
4
Indexable
import numpy as np import matplotlib.pyplot as plt from sklearn.datasets import load_breast_cancer from sklearn.model_selection import train_test_split from sklearn.ensemble import RandomForestClassifier from sklearn.metrics import accuracy_score,precision_score,recall_score,f1_score breast_cancer=load_breast_cancer() X=breast_cancer.data y=breast_cancer.target X_train,X_test,y_train,y_test=train_test_split(X,y,test_size=0.2,random_state=42) ntrees=[1,5,10,20,50,100,200] accu_score=[] pres_score=[] rec_score=[] f1score=[] for n in ntrees: rf_clf=RandomForestClassifier(n_estimators=n,random_state=42) rf_clf.fit(X_train,y_train) y_pred=rf_clf.predict(X_test) acc=accuracy_score(y_test, y_pred) pr=precision_score(y_test, y_pred,average='weighted') rec=recall_score(y_test, y_pred,average='weighted') f1=f1_score(y_test, y_pred,average='weighted') accu_score.append(acc) pres_score.append(pr) rec_score.append(rec) f1score.append(f1) print(f'No of trees: {n}') print(f'Accuracy: {acc:.2f}') print(f'Precision: {pr:.2f}') print(f'Recall: {rec:.2f}') print(f'F1_score: {f1:.2f}') print("-----------------") plt.figure(figsize=(6,6)) plt.plot(ntrees,accu_score,label='Accuracy',marker='o') plt.plot(ntrees,pres_score,label='Precision',marker='.') plt.plot(ntrees,rec_score,label='Recall',marker='d') plt.plot(ntrees,f1score,label='F1',marker='s') plt.xlabel("No of trees") plt.ylabel("Score") plt.title("Rrandom forest classifoer Breast Cancer Dataset") plt.legend() plt.grid(True) plt.show()
Editor is loading...
Leave a Comment