I'm extracting the F1_macro value using f1_score sklearn function.
I doing that for my Keras network, this is the code:
Y_dev_pred = self.model.predict([self.dev[0], self.dev[1]], batch_size=self.BatchSize, verbose=0)
Y_dev_pred = np.argmax(Y_dev_pred, axis=1)
self.Y_dev = np.argmax(self.dev[2], axis=1)
print('####### ', self.Y_dev.shape, ' ', Y_dev_pred.shape)
print(self.Y_dev, ' ### ', Y_dev_pred)
print(f1_score(self.Y_dev, Y_dev_pred, average='macro'))
Output:
####### (19647,) (19647,) [1 0 0 ... 2 0 2] ### [0 0 0 ... 2 1 0] Traceback (most recent call last): File "main.py", line 185, in <module> deep.run_model(reTrain=True) File ".../models/DL.py", line 477, in run_model self.evaluate_on_test() File ".../models/DL.py", line 448, in evaluate_on_test print(f1_score(self.Y_dev, Y_dev_pred, average='macro')) TypeError: f1_score() got an unexpected keyword argument 'average'
What is the problem, did I miss something?
I got this error when in my code i had another function called f1_score as well.