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
Handling of parameter estimation problems with multiple sbml models #49
Comments
Yeah case of multiple model files has not been discussed in detail yet. I think it is better to have custom and potentially more descriptive names than naming things model_$name_1 model_$name_2. Also |
Some notes from today's discussion:
TODO:
|
I'm currently going over the PEtab documentation and stumbled across this issue. We either need a standardized naming scheme, or (maybe more error proof), an additional table, which specifies the SBML-models and the corresponding files... In any case: This issue is important (but not urgent), as fixing it would make it possible in more cases to translate between PEtab and SED-ML. So, solving this issue may be quite interesting for the SED-ML community... |
I would prefer a standard naming scheme. I could imagine that the following should work:
Alternatively, a table with columns: the different setups, and rows: the files, would of course also work, just maybe create a little overhead. |
I'd like to revive this discussion on how to handle multiple models and other more complex setups. I am not too happy with the current or any other naming conventions. There may be good reasons why somebody may want to name his files differently. I would like a yaml file such as: petab_version: 0.1
problems:
- measurements:
- dataset1_1.csv
- dataset1_2.csv
conditons: cond1.csv
model: m.xml
parameters: p.csv
visualization: vis.csv
- measurements:
- dataset2_1.csv
conditons: cond2.csv
model: m2.xml
parameters: p.csv Because:
|
fully agree. I don't like making it mandatory, but as you describe it, it does seem quite helpful, thus might be good to create it for all models, and require to have it for all models. We also wanted to have a (optimizer/simulator) settings yml. Should that be in the same file, or have another one (and a link from this one)? Both solutions would seem sensible. |
I like the suggestion. I'm only wondering about the separate parameter files. This might require complex handling of conflicts. The we would have to set up detailed rules. Should we directly allow for the inclusion of validation data, e.g. as subfield "prediction"? |
Yeah, that may need some more elaboration, was a quick sketch. To be decided if there should be only one global file, or if we allow plugging together multiple ones where one could consider having an option for global or local parameter namespace. Not important for me at this point, but would be possible to adapt in future.
Yeah, also talked about that with @LeonardSchmiester today. Would be straightforward to do at least. |
I like the idea pretty much. yaml has the very strong advantage of being easily human-readable. Moreover, such a file allows to specify all those things, for which we did not have any place so far. I especially like the idea with the version number. At least for the moment, I would also go for things like simulator/optimizer settings in the same file. At the moment, I would not expect that this would blow up the yaml file so much that separation makes sense. This whole idea has the strong benefit of allowing to make the format more similar to SED-ML concerning solvers/optimizers... Which is pretty nice. This allows for way less information loss when converting between those two formats... |
I think that this will be too tool-specific to have a generic interpretation. If we add it here, I would clearly mark it as tool-specific and not put it there as a general |
Will it be tool-specific? Things like optimization options (number of multistarts, number of iterations, tolerances, ...) and simulation options (tolerances, solver, ...) are pretty generic. In the import to each tool, simply the subset of options supported could be selected. Maybe we should make up a list of options planned to be supported. |
Classic discussion without an ideal solution... |
Not sure every tool uses the same measure
Unlikely to have a substantial overlap across different tools Convergence criteria would be nice to have, but they vary so greatly across optimizers.
Not sure I like that too much.
Good idea. Would collect it in ICB-DCM/pyPESTO#117 though. |
PS: If adding anything like simulation or optimization options there, it would ideally be based on KISAO |
Would agree with Daniel to keep it seperate. For simulation we could use KISAO. But for optimization algorithms nothing like this exists right?! I have the feeling this could open a lot of potential issues, if we want to properly define everything in the yaml file. |
In terms of algorithms there is something below http://bioportal.bioontology.org/ontologies/KISAO/?p=classes&conceptid=http%3A%2F%2Fwww.biomodels.net%2Fkisao%2FKISAO%23KISAO_0000470. For optimizer settings it looks rather poor though. |
This is not enough to get a unique mapping to the actual algorithm used right? There could be several implementations of the same algorithm even within one tool etc. I think at the end you would still need a tool specific file to really run the optimization. Then we can directly leave these things out of PEtab I would suggest. |
I consider that closed. Having multiple models is addressed by #183 . Further extensions are covered by #185 and #188. To follow up on the discussion of simulator optimizer options, create a new issue. |
In this model there are to model files and, therefore, two measurement data files and experimental condition files. But only one for the parameter file. The naming is:
At the moment, this throws an error in PEtab (as it does not follow the standard naming we established).
How should we circumvent this problem?
The text was updated successfully, but these errors were encountered: