Ejemplo n.º 1
0
    def loadExperiment(self, experiment):
        suite = Suite()
        suite.parse_opt()
        suite.parse_cfg()

        experiment_dir = experiment.split('/')[1]
        params = suite.items_to_params(suite.cfgparser.items(experiment_dir))
        self.params = params

        predictions = suite.get_history(experiment, 0, 'predictions')
        truth = suite.get_history(experiment, 0, 'truth')

        self.iteration = suite.get_history(experiment, 0, 'iteration')
        self.train = suite.get_history(experiment, 0, 'train')

        self.truth = np.array(truth, dtype=np.float)

        if params['output_encoding'] == 'likelihood':
            from nupic.encoders.scalar import ScalarEncoder as NupicScalarEncoder
            self.outputEncoder = NupicScalarEncoder(w=1,
                                                    minval=0,
                                                    maxval=40000,
                                                    n=22,
                                                    forced=True)
            predictions_np = np.zeros((len(predictions), self.outputEncoder.n))
            for i in xrange(len(predictions)):
                if predictions[i] is not None:
                    predictions_np[i, :] = np.array(predictions[i])
            self.predictions = predictions_np
        else:
            self.predictions = np.array(predictions, dtype=np.float)
Ejemplo n.º 2
0
def collect_results(experiment):
    suite = PyExperimentSuite()
    params = suite.get_params(experiment)
    reps = params['repetitions']
    datasets = []
    for rep in range(reps):
        results = suite.get_history(experiment, rep, 'all')
        if len(results) == 0:
            raise MissingDataException
        datasets.append(results)
    return datasets
Ejemplo n.º 3
0
def collect_results(experiment):
    suite = PyExperimentSuite()
    params = suite.get_params(experiment)
    reps = params['repetitions']
    datasets = []
    for rep in range(reps):
        results = suite.get_history(experiment, rep, 'all')
        if len(results) == 0:
            raise MissingDataException
        datasets.append(results)
    return datasets
Ejemplo n.º 4
0
    suite = PyExperimentSuite()
    args = parser.parse_args()

    from pylab import rcParams

    rcParams.update({'figure.autolayout': True})
    rcParams.update({'figure.facecolor': 'white'})
    rcParams.update({'ytick.labelsize': 8})
    rcParams.update({'figure.figsize': (12, 6)})
    rcParams.update({'pdf.fonttype': 42})

    experiments = args.experiments

    for i, experiment in enumerate(experiments):
        iteration = suite.get_history(experiment, 0, 'iteration')
        predictions = suite.get_history(experiment, 0, 'predictions')
        truth = suite.get_history(experiment, 0, 'truth')
        train = suite.get_history(experiment, 0, 'train')

        resets = None if args.full else suite.get_history(
            experiment, 0, 'reset')
        randoms = None if args.full else suite.get_history(
            experiment, 0, 'random')
        type = "elements" if args.full else "sequences"

        hideTraining = args.training_hide is not None and len(
            args.training_hide) > i and args.training_hide[i] > 0
        lineSize = args.size_of_line[
            i] if args.size_of_line is not None and len(
                args.size_of_line) > i else 0.8
Ejemplo n.º 5
0
  suite = PyExperimentSuite()
  args = parser.parse_args()

  from pylab import rcParams

  rcParams.update({'figure.autolayout': True})
  rcParams.update({'figure.facecolor': 'white'})
  rcParams.update({'ytick.labelsize': 8})
  rcParams.update({'figure.figsize': (12, 6)})
  rcParams.update({'pdf.fonttype': 42})

  experiments = args.experiments

  for i, experiment in enumerate(experiments):
    iteration = suite.get_history(experiment, 0, 'iteration')
    predictions = suite.get_history(experiment, 0, 'predictions')
    truth = suite.get_history(experiment, 0, 'truth')
    train = suite.get_history(experiment, 0, 'train')

    resets = None if args.full else suite.get_history(experiment, 0, 'reset')
    randoms = None if args.full else suite.get_history(experiment, 0, 'random')
    type = "elements" if args.full else "sequences"

    hideTraining = args.training_hide is not None and len(args.training_hide) > i and args.training_hide[i] > 0
    lineSize = args.size_of_line[i] if args.size_of_line is not None and len(args.size_of_line) > i else 0.8
    label = args.graph_labels[i] if args.graph_labels is not None and len(args.graph_labels) > i else experiment

    plotAccuracy(computeAccuracy(predictions, truth, iteration, resets=resets, randoms=randoms, num=args.num),
                 train,
                 window=args.window,