Ejemplo n.º 1
0
def pattern2neuralnet(pattern, verbose=0):
    """
     Apply this to a pattern object, and it will behave similar to a
     nolearn.lasagne.NeuralNet object.
    """
    pattern.layers = []
    pattern.layers_ = Layers()
    pattern.verbose = verbose

    for fn_name in ['phi', 'psi', 'beta']:
        if fn_name not in pattern.__dict__ or pattern.__dict__[fn_name] is None:
            continue

        fn = pattern.__dict__[fn_name]
        for i, l in enumerate(pattern._get_all_function_layers(fn)):
            name = l.name
            dct = l.__dict__
            if name is None:
                name = ""
            prefix = "%s%d" % (fn_name, i)
            if prefix not in name:
                name = prefix + ("_" + name if name != "" else name)
            dct['name'] = name
            pattern.layers_[name] = l
            pattern.layers.append((l.__class__, dct))

    return pattern
Ejemplo n.º 2
0
 def layers(self):
     from nolearn.lasagne.base import Layers
     return Layers([('one', 1), ('two', 2), ('three', 3)])