deepinsight / deepinsight/insightface

Why IJB test result different when using different batch size?

Open
#1,351 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
29.7k
Forks
6.1k
PR merge metrics
No merged PRs in 30d

Description

The code i used: https://github.com/deepinsight/insightface/blob/master/evaluation/IJB/IJB_11.py

I got different test results with different batch size:

for IJB-C TAR@FAR=1E-5:

  | bs=32 (default) | bs=1024
-- | -- | --
Model1 | 52.55 | 57.87
Model2 | 53.09 | 58.31
Model3 | 51.27 | 56.07
Model4 | 53.87 | 59.48
Model5 | 53.93 | 58.84

The IJB-B also has similar behavior
It seems that bigger batch size will get better result, it's weird...

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with evaluation/IJB/IJB_11.py and reproduce the reported IJB-C and IJB-B results using batch sizes 32 and 1024. Trace how batch size affects evaluation, then compare the outputs for the listed models; the issue is done when the discrepancy is explained and evaluation results are consistent or the behavior is clearly documented.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
machine-learning, testing
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.