# Path: minos/model/parameter.py
# def int_param(lo=0, hi=100, default=None, values=None, optional=False):
#     return Parameter(
#         int,
#         lo=lo,
#         hi=hi,
#         values=values,
#         default=default,
#         optional=optional)
# 
# def string_param(values, default=None, optional=False, mutable=True):
#     return Parameter(
#         str,
#         values=values,
#         default=default,
#         optional=optional,
#         mutable=mutable)
# 
# def boolean_param(default=None, optional=False):
#     return Parameter(
#         bool,
#         (True, False),
#         default=default,
#         optional=optional)
# 
# def float_param(lo=0., hi=1., default=None, values=None, optional=False):
#     return Parameter(
#         float,
#         lo=lo,
#         hi=hi,
#         values=values,
#         default=default,
#         optional=optional)


from minos.model.parameter import int_param, string_param, boolean_param,\
    float_param
                 'glorot_uniform',
                 'he_normal',
                 'he_uniform'],
                default='glorot_normal'),
            'gamma_init': string_param(
                ['uniform',
                 'lecun_uniform',
                 'normal',
                 # 'identity',
                 # 'orthogonal',
                 'zero',
                 'one',
                 'glorot_normal',
                 'glorot_uniform',
                 'he_normal',
                 'he_uniform'],
                default='glorot_normal'),
            'gamma_regularizer': {
                'l1': float_param(optional=True, default=None),
                'l2': float_param(optional=True, default=None)},
            'beta_regularizer': {
                'l1': float_param(optional=True, default=None),
                'l2': float_param(optional=True, default=None)}
        }
    },
    'optimizers': {
        'SGD': {
            'lr': float_param(default=1e-3),
            'momentum': float_param(default=0.0),
            'decay': float_param(default=0.0),

# Path: minos/model/parameter.py
# def int_param(lo=0, hi=100, default=None, values=None, optional=False):
#     return Parameter(
#         int,
#         lo=lo,
#         hi=hi,
#         values=values,
#         default=default,
#         optional=optional)
# 
# def string_param(values, default=None, optional=False, mutable=True):
#     return Parameter(
#         str,
#         values=values,
#         default=default,
#         optional=optional,
#         mutable=mutable)
# 
# def boolean_param(default=None, optional=False):
#     return Parameter(
#         bool,
#         (True, False),
#         default=default,
#         optional=optional)
# 
# def float_param(lo=0., hi=1., default=None, values=None, optional=False):
#     return Parameter(
#         float,
#         lo=lo,
#         hi=hi,
#         values=values,
#         default=default,
#         optional=optional)


# Path: minos/model/parameters.py
from minos.model.parameter import int_param, string_param, boolean_param,\
    float_param

                 'glorot_uniform',
                 'he_normal',
                 'he_uniform'],
                default='glorot_normal'),
            'gamma_init': string_param(
                ['uniform',
                 'lecun_uniform',
                 'normal',
                 # 'identity',
                 # 'orthogonal',
                 'zero',
                 'one',
                 'glorot_normal',
                 'glorot_uniform',
                 'he_normal',
                 'he_uniform'],
                default='glorot_normal'),
            'gamma_regularizer': {
                'l1': float_param(optional=True, default=None),
                'l2': float_param(optional=True, default=None)},
            'beta_regularizer': {
                'l1': float_param(optional=True, default=None),
                'l2': float_param(optional=True, default=None)}
        }
    },
    'optimizers': {
        'SGD': {
            'lr': float_param(default=1e-3),
            'momentum': float_param(default=0.0),
            'decay': float_param(default=0.0),

            'nesterov': boolean_param(default=False)},