Измерение производительности для модели керас, обучаемой партиями - PullRequest
0 голосов
/ 19 сентября 2019

У меня есть модель keras, которую я пытаюсь тренировать с большим набором данных по частям

for chunk in pd.read_csv(input_file, chunksize=chunk_size, usecols = FEATURE_COLUMNS, low_memory = False):

       (X_train, y_train, X_val, y_val,full_pipeline) = dataPrep.get_data(data=chunk, mean=mean, variance=variance)



       print("Clicks in Training Set =>  {} , in CV =>  {}".format(np.sum(y_train == 1),np.sum(y_val == 1)))
       print("SMS in Training Set =>  {} , in CV =>  {}".format(np.sum(y_train == 0),np.sum(y_val == 0)))

       preprocessor = full_pipeline
       model.fit(X_train, y_train, batch_size=batch_size, validation_data=(X_val, y_val), epochs=epochs, verbose=1)
       score = model.evaluate(X_val, y_val, verbose=0)

       print('Validation Metrics    :', score)

Есть ли способ измерить показатель f1 модели после обучения на всем наборе данных?Вместо производительности каждого куска

1 Ответ

0 голосов
/ 19 сентября 2019

Привет, пишите мое предложение здесь, потому что я не могу комментировать ...

поправьте меня, если я ошибаюсь, но вы можете просто получить f1 после каждого куска, а затем после тренировки.Готово, вы можете получить среднее значение собранных f1-баллов.

Вы также можете получить отзыв и точность для каждого куска, а затем использовать их в финальной формуле для оценки f1 ( Формульный взгляд здесь )

Чтобы увидетькак реализовать f1-счет, отзыв и точность вы можете посмотреть здесь

Надеюсь, это поможет:)

...