149: Initial changes to unify normalizations and transformations
This MR unifies transformations and normalisation. The main changes are:
- All normalisations are now implemented as a
DataObjectTransformation
- DataBlockNormalization is now called
DataBlockTransformation
- the default classDefaultDatablockTransformation
applies theDataObjectTransformation
on theDataObject
's - The model handles the one-hot encoding. There is a new layer
OneHotEncoding
and postprocessors (e.g.LogitPostprocessor
,SigmoidPostprosessor
, etc.) and new heads:CategoricalInHead
,CategoricalOutHead
- The method
predict
can now be used to do a forward pass, and inverse pass, or an entire model pass. See also the shortcutsgenerate
,predict_y
- The plotter is adapted to the changes, but not all plots work for categoricals yet.
Things left to do:
-
Make it possible to pass custom evaluation losses/metrics to the evaluation method -
Adapt the generator -
Adapt all the examples -
Testing for bugs -
Adapt the user guide --> will be resolved later with #154 (closed)
Here an example notebook to test the categoricals test.ipynb
Edited by Alessandro Maissen