lancercat / VSDF

24 stars 5 forks source link

When setting case sensitive is true, encountered an error #4

Closed 1193700079 closed 2 years ago

1193700079 commented 2 years ago

AttributeError: 'neko_prototype_sampler_gl' object has no attribute 'gbidict'

image

I noticed that gbidict was not specified in the code,

lancercat commented 2 years ago

The case-specific api is no longer supported in this version.

To make case-sensitive work, simply do not align them in the pt file by passing empty strings to parameter "master" and parameter "servant".

[Edit] The hotfixes were wrong. wait one.

lancercat commented 2 years ago

If you still need the api, try uncomment line 12 to line 27 and line 96 of

neko_sdk/ocr_modules/neko_prototyper_gen2/neko_abstractract_sampler.py

It will be officially supported if officially tested to work (the DEV branch is much ahead of this version, so I will need a test to be sure.)

1193700079 commented 2 years ago

ok thank you

lancercat commented 2 years ago

Closed by mistake. Will close it after we test this.

lancercat commented 2 years ago

Sorry we can not manage a full fix due to the amount of engineering efforts needed.

This is actually muddier than I anticipated.

I hardcoded case-insensitiveness too much as the standard benchmarks are mostly case-insensitive...

Conclusions:

  1. The loggers are hard coded for case-insensitive logging, which hinders case-sensitive accucy computing. You will need to manually hack thru if you want to get quantilized results (adding an option would be an oversized engineering problem we do not currently have time to meddle with).

  2. You cannot have case-sensitivity on close-set benchmark with stock models (the weights you downloaded from Kaggle). If you want case-sensitivity, train your own model or force dropping the contextual module with the force_skip_ctx .

  3. If you need fully functional case-sensitivity, you will have to hack thru, GLHF