Exemplo n.º 1
0
    def calculate_accuracy((n_nodes, input_connectivity, output_connectivity)):
        accuracies = []
        description = '-'.join(
            map(str, [n_nodes, input_connectivity, output_connectivity]))

        print "START-" + description

        for sample in range(conf.n_samples):
            rbn_reservoir = RBNNode(connectivity=conf.connectivity,
                                    input_connectivity=input_connectivity,
                                    n_nodes=n_nodes,
                                    output_connectivity=output_connectivity)

            reservoir_system = ReservoirSystem(rbn_reservoir)
            reservoir_system.train_on(*conf.training_data)
            accuracy = reservoir_system.test_on(*conf.test_data)

            accuracies.append(accuracy)

        print "END-" + description

        return {
            "accuracies": accuracies,
            "n_nodes": n_nodes,
            "n_samples": conf.n_samples,
            "input_connectivity": input_connectivity,
            "output_connectivity": output_connectivity
        }
    def calculate_accuracy((n_nodes, input_connectivity, output_connectivity)):
        accuracies = []
        description = '-'.join(map(str,[n_nodes, input_connectivity, output_connectivity]))

        print "START-" + description

        for sample in range(conf.n_samples):
            rbn_reservoir = RBNNode(connectivity=conf.connectivity,
                                    input_connectivity=input_connectivity,
                                    n_nodes=n_nodes,
                                    output_connectivity=output_connectivity)

            reservoir_system = ReservoirSystem(rbn_reservoir)
            reservoir_system.train_on(*conf.training_data)
            accuracy = reservoir_system.test_on(*conf.test_data)

            accuracies.append(accuracy)

        print "END-" + description

        return {
            "accuracies": accuracies,
            "n_nodes": n_nodes,
            "n_samples": conf.n_samples,
            "input_connectivity": input_connectivity,
            "output_connectivity": output_connectivity
        }
    def get_rbn_meta(i):
        print "GOGO" + str(i)

        rbn_reservoir = RBNNode(connectivity=conf.connectivity,
                                n_nodes=n_nodes,
                                input_connectivity=n_nodes / 2)

        reservoir_system = ReservoirSystem(rbn_reservoir)
        reservoir_system.train_on(*conf.training_data)
        accuracy = reservoir_system.test_on(*conf.test_data)

        bns_file = "{}/{}.bns".format(conf.output_dir, i)
        cnet_file = "{}/{}.cnet".format(conf.output_dir, i)
        acc_file = "{}/{}.acc".format(conf.output_dir, i)

        with open(cnet_file, 'w') as f:
            f.write(rbn_reservoir.into_cnet())

        with open(bns_file, 'w') as f:
            subprocess.call(['./analytics/SAT/bns', cnet_file], stdout=f)

        with open(bns_file, 'r') as bns:
            attractors = map(
                int, re.findall("Attractor \d+ is of length (\d+)",
                                bns.read()))

            with open(acc_file, 'w') as acc:
                acc.write(
                    json.dumps({
                        "accuracy": accuracy,
                        "attractors": attractors,
                        "mean_attractor_length": np.mean(attractors),
                        "n_attractors": len(attractors)
                    }))
Exemplo n.º 4
0
    def get_rbn_meta(i):
        print "GOGO" + str(i)

        rbn_reservoir = RBNNode(connectivity=conf.connectivity,
                                n_nodes=n_nodes,
                                input_connectivity=n_nodes/2)

        reservoir_system = ReservoirSystem(rbn_reservoir)
        reservoir_system.train_on(*conf.training_data)
        accuracy = reservoir_system.test_on(*conf.test_data)

        bns_file = "{}/{}.bns".format(conf.output_dir, i)
        cnet_file = "{}/{}.cnet".format(conf.output_dir, i)
        acc_file = "{}/{}.acc".format(conf.output_dir, i)

        with open(cnet_file, 'w') as f:
            f.write(rbn_reservoir.into_cnet())

        with open(bns_file, 'w') as f:
            subprocess.call(['./analytics/SAT/bns', cnet_file], stdout=f)

        with open(bns_file, 'r') as bns:
            attractors = map(int, re.findall("Attractor \d+ is of length (\d+)", bns.read()))

            with open(acc_file, 'w') as acc:
                acc.write(json.dumps({
                    "accuracy": accuracy,
                    "attractors": attractors,
                    "mean_attractor_length": np.mean(attractors),
                    "n_attractors": len(attractors)
                }))
    def get_rbn_meta(_):
        print "!!!", _
        rbn_reservoir = RBNNode(connectivity=conf.connectivity,
                                input_connectivity=reservoir_size / 2,
                                n_nodes=reservoir_size)

        reservoir_system = ReservoirSystem(rbn_reservoir)
        reservoir_system.train_on(*conf.training_data)
        accuracy = reservoir_system.test_on(*conf.test_data)

        attractors_meta = find_attractors(rbn_reservoir)
        attractors_meta["accuracy"] = accuracy

        return attractors_meta
    def get_rbn_meta(_):
        print "!!!", _
        rbn_reservoir = RBNNode(connectivity=conf.connectivity,
                                input_connectivity=reservoir_size/2,
                                n_nodes=reservoir_size)

        reservoir_system = ReservoirSystem(rbn_reservoir)
        reservoir_system.train_on(*conf.training_data)
        accuracy = reservoir_system.test_on(*conf.test_data)

        attractors_meta = find_attractors(rbn_reservoir)
        attractors_meta["accuracy"] = accuracy

        return attractors_meta