Testing.py (1025B)
1 2 from sklearn.datasets import load_iris 3 from sklearn.model_selection import train_test_split 4 from Podtc import PseudoOptimalDecisionTreeClassifier 5 from sklearn.metrics import accuracy_score 6 import numpy as np 7 8 accuracies = [] 9 10 for i in range(1, 10): 11 # Load Iris dataset 12 iris = load_iris() 13 X = iris.data 14 y = iris.target 15 16 # Split the dataset into training and testing sets 17 X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42) 18 19 # Train and evaluate the PseudoOptimalDecisionTreeClassifier 20 classifier = PseudoOptimalDecisionTreeClassifier( 21 proportionToTrainOn=1, 22 proportionToValidateSplits=1, 23 proportionOfDimsToTrainOn=1, 24 maxDepth=i 25 ) 26 27 classifier.fit(X_train, y_train) 28 y_pred = classifier.predict(X_test) 29 30 print("MY ACCURACY (PseudoOptimalDecisionTreeClassifier):") 31 accuracies.append(accuracy_score(y_true=y_test, y_pred=y_pred)) 32 print(accuracy_score(y_true=y_test, y_pred=y_pred)) 33 34 print(accuracies)