yellowdolphin commited on
Commit
2ae9de4
·
1 Parent(s): 79e7d41

resolve use_fold early in app

Browse files
Files changed (2) hide show
  1. app.py +22 -1
  2. utils.py +3 -24
app.py CHANGED
@@ -41,9 +41,30 @@ gamma = 0.4
41
  threshold = 0.09951 if (normalize_similarity == 'test-train') else 0.6 # 0.381
42
  knn = 300
43
  rst_names = 'convnext_base_384_in22ft1k_colab220 efnv1b7_colab216 hub_efnv2xl_v73'.split()
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
44
  cfg_files = [hf_hub_download(modelbox, f'{x}_config.json') for x in rst_names]
45
  emb_files = [hf_hub_download(modelbox, f'{x}_emb.npz') for x in rst_names]
46
  rst_files = [hf_hub_download(modelbox, f'{x}.h5') for x in rst_names]
 
47
  n_models = len(rst_names)
48
 
49
 
@@ -77,7 +98,7 @@ def fast_yolo_crop(image):
77
 
78
 
79
  # Preload embeddings for known individuals
80
- comp_embeddings = get_comp_embeddings(emb_files)
81
 
82
  # Preload embedding models, input sizes
83
  K.clear_session()
 
41
  threshold = 0.09951 if (normalize_similarity == 'test-train') else 0.6 # 0.381
42
  knn = 300
43
  rst_names = 'convnext_base_384_in22ft1k_colab220 efnv1b7_colab216 hub_efnv2xl_v73'.split()
44
+ use_fold = {
45
+ 'efnv1b7_colab216': 4,
46
+ 'efnv1b7_colab225': 1,
47
+ 'efnv1b7_colab197': 0,
48
+ 'efnv1b7_colab227': 5,
49
+ 'efnv1b7_v72': 6,
50
+ 'efnv1b7_colab229': 9,
51
+ 'efnv1b6_colab217': 5,
52
+ 'efnv1b6_colab218': 6,
53
+ 'hub_efnv2xl_colab221': 8,
54
+ 'hub_efnv2xl_v69': 2,
55
+ 'hub_efnv2xl_v73': 0,
56
+ 'efnv1b6_colab226': 2,
57
+ 'hub_efnv2l_v70': 3,
58
+ 'hub_efnv2l_colab200': 2,
59
+ 'hub_efnv2l_colab199': 1,
60
+ 'convnext_base_384_in22ft1k_v68': 0,
61
+ 'convnext_base_384_in22ft1k_colab220': 9,
62
+ 'convnext_base_384_in22ft1k_colab201': 3, # new
63
+ }
64
  cfg_files = [hf_hub_download(modelbox, f'{x}_config.json') for x in rst_names]
65
  emb_files = [hf_hub_download(modelbox, f'{x}_emb.npz') for x in rst_names]
66
  rst_files = [hf_hub_download(modelbox, f'{x}.h5') for x in rst_names]
67
+ use_folds = [use_fold[x] for x in rst_names]
68
  n_models = len(rst_names)
69
 
70
 
 
98
 
99
 
100
  # Preload embeddings for known individuals
101
+ comp_embeddings = get_comp_embeddings(emb_files, use_folds)
102
 
103
  # Preload embedding models, input sizes
104
  K.clear_session()
utils.py CHANGED
@@ -56,41 +56,20 @@ def get_train_idx(use_fold):
56
 
57
  return np.argsort(train_idx)
58
 
59
- use_fold = {
60
- 'efnv1b7_colab216_emb.npz': 4,
61
- 'efnv1b7_colab225_emb.npz': 1,
62
- 'efnv1b7_colab197_emb.npz': 0,
63
- 'efnv1b7_colab227_emb.npz': 5,
64
- 'efnv1b7_v72_emb.npz': 6,
65
- 'efnv1b7_colab229_emb.npz': 9,
66
- 'efnv1b6_colab217_emb.npz': 5,
67
- 'efnv1b6_colab218_emb.npz': 6,
68
- 'hub_efnv2xl_colab221_emb.npz': 8,
69
- 'hub_efnv2xl_v69_emb.npz': 2,
70
- 'hub_efnv2xl_v73_emb.npz': 0,
71
- 'efnv1b6_colab226_emb.npz': 2,
72
- 'hub_efnv2l_v70_emb.npz': 3,
73
- 'hub_efnv2l_colab200_emb.npz': 2,
74
- 'hub_efnv2l_colab199_emb.npz': 1,
75
- 'convnext_base_384_in22ft1k_v68_emb.npz': 0,
76
- 'convnext_base_384_in22ft1k_colab220_emb.npz': 9,
77
- 'convnext_base_384_in22ft1k_colab201_emb.npz': 3, # new
78
- }
79
-
80
 
81
- def get_comp_embeddings(emb_files):
82
  "Load embeddings for competition images [n_images, embedding_size]"
83
 
84
  comp_embeddings = []
85
 
86
- for npz_file in emb_files:
87
  # Get embeddings for all competition images
88
  d = np.load(str(npz_file))
89
  comp_train_emb = d['train']
90
  comp_test_emb = d['test']
91
 
92
  # Restore original order of comp_train_emb, targets (use targets as fingerprint-check)
93
- comp_train_idx = get_train_idx(use_fold[npz_file])
94
  comp_train_emb = comp_train_emb[comp_train_idx, :]
95
  comp_embs = np.concatenate([comp_train_emb, comp_test_emb], axis=0)
96
  assert comp_embs.shape == (n_images, embedding_size)
 
56
 
57
  return np.argsort(train_idx)
58
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
59
 
60
+ def get_comp_embeddings(emb_files, use_folds):
61
  "Load embeddings for competition images [n_images, embedding_size]"
62
 
63
  comp_embeddings = []
64
 
65
+ for npz_file, use_fold in zip(emb_files, use_folds):
66
  # Get embeddings for all competition images
67
  d = np.load(str(npz_file))
68
  comp_train_emb = d['train']
69
  comp_test_emb = d['test']
70
 
71
  # Restore original order of comp_train_emb, targets (use targets as fingerprint-check)
72
+ comp_train_idx = get_train_idx(use_fold)
73
  comp_train_emb = comp_train_emb[comp_train_idx, :]
74
  comp_embs = np.concatenate([comp_train_emb, comp_test_emb], axis=0)
75
  assert comp_embs.shape == (n_images, embedding_size)