Ejemplo n.º 1
0
    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)

        self.dir_path = r"C:\Users\Michał\PycharmProjects\mgr\sgcs\sgcs\data\example gramatics"
        self.filename = 'toy opt los 65534'

        self.sut = SymbolTranslator.create(os.path.join(self.dir_path, self.filename))
    def generic_simulation(self, learning_path, testing_path, name):
        logging.info('starting %s', name)
        with open(os.path.join(r'C:\Users\Michał\PycharmProjects\mgr\runs\auto',
                               name + '.txt'), 'w+') as file:
            learning_set = SymbolTranslator.create(learning_path)
            learning_set.negative_allowed = not self.algorithm_variant.is_stochastic

            testing_set = SymbolTranslator.create(testing_path)
            testing_set.negative_allowed = True

            result, ngen, grammar_estimator, population, *_ = self.sut.perform_simulation(
                learning_set, testing_set, self.configuration)

            print(result)
            print('NGen:', ngen)
            file.write(str(result))
            file.write(str(ngen))
Ejemplo n.º 3
0
    def prepare_simulation(self, runner, task_no, data_path, config_path, population_path=None):
        with open(config_path) as f:
            configuration = self.configuration_serializer.from_json(json.load(f))

        is_stochastic = configuration.algorithm_variant == AlgorithmVariant.sgcs
        algorithm_variant = CykServiceVariationManager(is_stochastic)
        learning_set_path, testing_set_path = self.load_input_config(data_path)

        learning_set = SymbolTranslator.create(learning_set_path)
        learning_set.negative_allowed = configuration.statistics.negative_sentence_learning

        testing_set = SymbolTranslator.create(testing_set_path)
        testing_set.negative_allowed = True

        return (lambda conf: self._perform_simulation(
            algorithm_variant, learning_set, testing_set, conf, runner, task_no, population_path),
            configuration,
            self._mk_population_printer(learning_set)
        )
Ejemplo n.º 4
0
 def _load_sentences(self):
     self.emit(QtCore.SIGNAL(AsyncProgressDialog.CHANGE_STEP_EVENT), 'Opening file...')
     self.employer.symbol_translator = SymbolTranslator.create(
         self.employer.selected_filename)
     return list(self.employer.symbol_translator.get_sentences())
Ejemplo n.º 5
0
 def get_learned_translator(population_path):
     symbol_translator = SymbolTranslator.create(population_path)
     list(symbol_translator.get_sentences())
     return symbol_translator