          rounding:  [partial] For <class 'int'> and <class 'float'> data types this is
                     required otherwise it is ignored. Used for the GUI slider. For floats, this
                     is the number of decimal places to display. For ints this is the step size.
          fixed:     [optional] [train only]. Training configurations are fixed when the model is
                     created, and then reloaded from the state file. Marking an item as fixed=False
                     indicates that this value can be changed for existing models, and will override
                     the value saved in the state file with the updated value in config. If not
                     provided this will default to True.
 
</s> remove         rounding:  [partial] For <class 'int'> and <class 'float'> datatypes this is
 </s> add         rounding:  [partial] For <class 'int'> and <class 'float'> data types this is </s> remove         min_max:   [partial] For <class 'int'> and <class 'float'> datatypes this is required
 </s> add         min_max:   [partial] For <class 'int'> and <class 'float'> data types this is required </s> remove                    correct type to faceswap. Valid datatypes are: <class 'int'>, <class 'float'>,
 </s> add                    correct type to faceswap. Valid data types are: <class 'int'>, <class 'float'>, </s> remove     round_to: int
        If :attr:`dtype` is :class:`float` then this is the decimal place rounding for :attr:`var`.
        If :attr:`dtype` is :class:`int` then this is the number of steps between each increment
        for :attr:`var`
 </s> add     round_to: int or list
        If :attr:`d_type` is :class:`float` then this is the decimal place rounding for
        :attr:`var`. If :attr:`d_type` is :class:`int` then this is the number of steps between
        each increment for :attr:`var`. If a list is provided, then this must be a list of
        discreet values that are of the correct :attr:`d_type`. </s> remove                  "suspectible to outliers and typically produces slightly blurrier results."
                 "\n\t LogCosh - log(cosh(x)) acts similiar to MSE for small errors and to "
 </s> add                  "susceptible to outliers and typically produces slightly blurrier results."
                 "\n\t LogCosh - log(cosh(x)) acts similar to MSE for small errors and to "
                   You can also pass in a list of discreet values for this item, which should be
                   of the same data type as the given 'datatype'. This will lock the scale to
                   only those values displayed in the list.
          rounding:  [partial] For <class 'int'> and <class 'float'> data types this is
                     required otherwise it is ignored. Used for the GUI slider. For floats, this
                     is the number of decimal places to display. For ints this is the step size.
                   You can also pass in a list of discreet values for this item, which should be
                   of the same data type as the given 'datatype'. This will lock the scale to
                   only those values displayed in the list.
          fixed:     [optional] [train only]. Training configurations are fixed when the model is
                     created, and then reloaded from the state file. Marking an item as fixed=False
                     indicates that this value can be changed for existing models, and will override
                     the value saved in the state file with the updated value in config. If not
                     provided this will default to True.
keep keep add keep keep keep keep keep
 Training updates:
  - Expose optimizer epsilon param
  - Add NaN protection
GUI - slider - add support for discreet values 
plugins/train/model/original_defaults.py