Recent Releases of jajapy
jajapy - v0.10.8 : Alergia and Active-BW rework
- rework for Alergia
- rework for Active-BW
This update doesn't change anything for the user: the syntax stays the same.
- Python
Published by Rapfff over 2 years ago
jajapy - v0.10.7
A new verbose parameter for BW.fit
The verbose parameter of BW.fit can now take four different values:
- 0: nothing will be printed
- 1: the warnings only will be printed
- 2 (default): the warnings and the progress bar will be printed
- 3: the warnings, the progress bar and the small recap at the end of the learning will be printed
Consequently, the progress_bar parameter added in v0.10.6 has been removed.
A small improvement for BW.fit for GoHMM
As for the other models, if a state s of the current hypothesis does not play a role in the observed dynamics (training set) the update procedure leaves the distributions for s unchanged.
- Python
Published by Rapfff over 2 years ago
jajapy - v0.10.6
Two new parameters have been added to BW.fit:
progress_bar(bool): display or not the progress bar (default is True).processes(int): only for linux: decide how many processes will be used during the learning process (default iscpu_count()-1).
- Python
Published by Rapfff over 2 years ago
jajapy - v0.10: Parametric models and Prism compatibility
After several months of work, we proudly present you this new version of Jajapy. This update brings two significant new features:
- an algorithm for PCTMC parameter estimation, and
- compatibility with Prism models.
PCTMCs
Jajapy supports now PCTMCs:
- PCTMCs can be created, loaded and saved.
- Jajapy PCTMCs can be translated as Stormpy sparse models.
- PCTMCs parameters can be estimated,
- PCTMCs can be learned, and
- PCTMCs can be synchronously composed, as well as CTMCs.
Prism
- Jajapy can now load Prism files using the
jajapy.loadPrismfunction. - Jajapy model can now be exported into Prism file using the
Model.savePrismmethod.
Miscellaneous
- There is only one
BWclass now. Use theBW.fitmethod to learn any model. The method will recognise which formalism should be used from the initial hypothesis if given, and from the training set otherwise. - The BW output model can be saved in a Prism file directly. To do so, set the new
output_file_prismparameter of theBW.fitmethod. - GOHMM, being a special case of MGOHMM, has been removed.
- MGOHMM has been renamed to GoHMM.
- Saved model before this release may not be compatible with this new version.
- HMMs and GoHMMs are now created using the two functions
createHMMandcreateGoHMM. - The documentation has been remade.
- Python
Published by Rapfff almost 3 years ago
jajapy - v0.9: state labelled update
This is a major update for MCs, CTMCs and MDPs: these models are now state-labelled instead of transition-labelled.
This implies:
- New way to create models (the MC_state function has been replaced by createMC, same for MDPs and CTMCs)
- The embedding from Jajapy to Stormpy (and the other way around) is now straightforward.
- HMMs cannot be translated to Stormpy dtmc anymore (this will perhaps come back in a future release).
- The label "init" cannot be used in MCs, MDPs and CTMCs anymore.
This change comes with minor improvement: - The more common errors are not handled properly. - The documentation has been extended and contains now more examples. - New unit tests
- Python
Published by Rapfff about 3 years ago
jajapy - v0.8
- The
initial_modelparameter of theBW.fit()method can be a stormpy sparse model (sparseDtmc,sparseMdporsparseCtmc). - We now use the beautiful alive-progress to print beautiful progress bars while Baum-Welch is running.
- Bug fixes.
- Python
Published by Rapfff over 3 years ago
jajapy - v0.7.1
Minor bug fixes.
New parameters for BW.fit:
verbose, bool (default is True): Print or not a small recap at the end of the learning.return_data, bool (default is False): If set to True, a dictionary containing the following values will be returned alongside the hypothesis once the learning is done.'learning_rounds', 'learning_time', 'training_set_loglikelihood'.stormpy_output, bool (default is True): If set to True the output model will be a Stormpy sparse model. (not available for GoHMMs and MGoHMMS).
BW.fit method can take a list or a numpy ndarray as a training set. It will be internally converted to a jajapy.Set.
- Python
Published by Rapfff over 3 years ago
jajapy - v0.6 Model converter to stormpy
A new function jajapy.modeltoStorm converts any jajapy.HMM, jajapy.MC, jajapy.MDP and jajapy.MC to the corresponding model in stormpy. Notice that these models are trace-equivalent, but not similar: stormpy models have more states than jajapy models, since labels are on the states in stormpy while on the transitions in jajapy.
New examples have been added.
- Python
Published by Rapfff over 3 years ago
jajapy - Restructuring of models
All the models are now explicitly described with numpy array. It's a little bit worst from the memory perspective but it's a lot better in terms of running time.
The documentation have been updated and improved.
- Python
Published by Rapfff over 3 years ago
jajapy - v0.4
A new way to create model states. Now, to create a MC state with the two following transitions:
- To state 1, observing 'a', with probability 0.6
- To state 1, observing 'b', with probability 0.4
it's
MC_state([(1,'a',0.6),(1,'b',0.4)],0)
instead of
MC_state([0.6,0.4],[1,1],['a','b'],0)
0 being this state ID
- Python
Published by Rapfff over 3 years ago