Как определить кадры, на которых модель плохо работает для обнаружения объектов? - PullRequest
0 голосов
/ 26 сентября 2019

Я знаю, что есть такие метрики, как точность и отзыв, чтобы оценить, насколько хорошо модель работает для обнаружения объектов.

Однако существует ли какой-либо алгоритм, позволяющий определить, насколько хорошо или плохо модель работает на любом кадре?Например, возможно ли назначить вес каждому кадру в наборе данных, чтобы указать, насколько хорошо модель работает на этом кадре?

Я чувствую, что это позволит более сфокусированному обучению, так как я могу назначить вероятность каждомурамка для выбора в следующем пакете, вроде AdaBoost, но для обнаружения объектов с использованием CNN.Это должно заставить модель тренироваться больше на кадрах, на которых она работает плохо, тем самым улучшая производительность модели.

1 Ответ

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

Поскольку вы эффективно ищете общий «псевдокод», вот сценарий, который будет работать в Keras:

poor_loss_threshold = 0.5
poorly_predicted = []

for x_val, y_val in data:
    loss = model.evaluate(x_val, y_val)

    if loss > poor_threshold:
        poorly_predicted.append(x_val)

Это работает для одного или нескольких «кадров» на изображение, если выподгонка / вывод данных итеративно (один раз за цикл) - так что вы можете выполнять промежуточные проверки в соответствии с определенной метрикой «бедности».Затем вы можете итерационно проверять каждый отдельный фрейм с низкой производительностью:

...