-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Allow multiple models #60
Comments
Unless we figure out a clever way to separate app releases and models releases, I don't think this is worth trying. Empirically, we already experimented with "model picker" as a runtime param when we were working on the clip-based trainable app, but it was a hack job trying the best with what we had (and still have) without adding new "model" specific release model, and we found that it added too much complication and then was never well-received to potential users. Given that, I'd actually like to suggest we go the opposite way and make the app metadata even more specific by explicitly enumerating |
Maybe it is worth thinking about whether some version of discriminators as used by LAPPS would be relevant here. |
As long as I remember, the purpose of the discriminators in lappsgrid vocab (except for some
This wasn't true actually, and as the linked issue is closed as "wont-fix", |
Elaborating... Discriminators in LAPPS were indeed partially about defining media types, including non-LIF formats like UIMA and Gate. But there was more to them: they also included all elements from the LAPPS vocabulary as well as definitions of tag sets for pos (https://vocab.lappsgrid.org/ns/tagset/pos), ner and dependencies. And the latter use was what I was thinking of. Discriminators are really abbreviations of all kinds of information and provide URL as a landings spot where that information can be spelled out. So for a multi-model app, the specifications may be able to refer to one or more discriminators which spell out the details of the models. Whether discriminators are the right approach for this is not clear. |
If I understood this correctly, under this proposal,
Is this correct? |
I am not yet proposing this, just floating the idea. It will take some work to introduce discriminators, and there does not seem to be any hurry here. Items 1.i through 1.iii seem correct and in line with annotation types. For 2, we could have a parameter that picks the model and the possible values are an enumeration of the relevant discriminators, which could indeed be put somewhere in the metadata. |
Regarding the label sets of different models, in my previous comment, I was mixing two different problems.
For the first problem, it is (mostly) solved by #41 and clamsproject/mmif#218 For second problem is probably more prevalent for this issue, and now after considering this type-matching problem (clamsproject/clams-python#194), I realized it's a much harder-to-solve problem than simply adding a runtime parameter for model selection. From a command in the linked
But if we allow users of this app (or generalized classifier apps) to select from models with different labelsets, that means in the app metadata |
Yeah, there is a problem there. In the current develop branch the added models have post-bin categories like other_opening that are not defined in the metadata. One way to keep it consistent would be to require that the labelset in the metadata is the union of all labelsets in the models. This is not too bad a restriction, and it does make it unpleasant for a model to just come up with any wacko post-binning. Adding a new model with new categories would require updating the metadata. |
This has been always the case, so shouldn't be a problem. However since we are now talking about separating the stitcher part and (in the process of doing so) parameterizing the "post-binning", now I'm not even sure that we can use |
Multiple built-in models and model selection via a runtime parameter was added in v4.1 and In conclusion;
Closing the issue as complete. |
Because
The SWT app now ships with a fixed set of frame types that are recognized. It is very possible that a user want to choose a different set of types (as is happening right now with a request to add bars in #53).
Would it make sense to ship the app with multiple models and have a parameter for selecting a model?
Done when
No response
Additional context
No response
The text was updated successfully, but these errors were encountered: