This is my first time using a machine learning algorithm. It is for a school project. My model is attempting to predict from inputs: Weight, Height, and Age whether an Olympic athlete (100-meter dash) wins a medal or not. Here is the relevant code:
#Normalize the data
train_athletics_m = min_max_normalization(train_athletics_m)
test_athletics_m = min_max_normalization(test_athletics_m)
X = train_athletics_m[['Age', 'Weight', 'Height']]
y = train_athletics_m['Medal']
test = test_athletics_m[['Age', 'Weight', 'Height']]
test_labels = test_athletics_m['Medal']
classifier = KNeighborsClassifier()
classifier.score(test, test_labels)
I tested various k values. The worst accuracy is when k=1 (88%), but for k > 3, the accuracy stays constant (94%). I was under the impression that the usual behavior would be for accuracy to reach a peak and then decrease until it stabilizes as k goes onward. Also, my accuracy scores are higher than I expected. I am wondering if this is normal, and if not, where would my error most likely be in?