# 1) Prawdziwe wyniki: 1 = sukces, 0 = porażka y_prawda = [ 1,1,1,1,1,1,1,1,1,1, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0 ] # 2) Przewidywania 4 modeli # Model 1 y_model1 = [ 1,1,1,1,1,1,1, 0,0,0, 1, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0 ] # Model 2 y_model2 = [ 1,1,1,1, 0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0 ] # Model 3 y_model3 = [ 1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ] # Model 4 y_model4 = [ 1,1,1,1,1,1,1,1,1, 0, 1,1,1,1, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ] #Precision: jeżeli jest false positive, czyli w prawdzie jest 0 a wyszła 1 i tp/ (tp+fp) #Recall: jeżeli jest false negative (osoba której wykryliśmy chorobę a jest zdrowa) tak samo jak wyżej #Tzw F1 to precyzja + recall. Obliczamy jako 2*p*r def accuracy(prawda, model): poprawne = 0 for i in range(len(prawda)): if prawda[i] == model[i]: poprawne += 1 return poprawne / len(prawda) def precision(prawda, model): #true_positive, false_positive