def fit(self, X, y): """Run the search algorithm to synthesize a push program. Parameters ---------- X : pandas dataframe of shape = [n_samples, n_features] The training input samples. y : list, array-like, or pandas dataframe. The target values (class labels in classification, real numbers in regression). Shape = [n_samples] or [n_samples, n_outputs] """ # arity is the number of inputs that the program takes. X, y, arity, y_types = check_X_y(X, y) output_types = [ self.interpreter.type_library.push_type_for_type(t).name for t in y_types ] if self.last_str_from_stdout: ndx = list_rindex(output_types, "str") if ndx is not None: output_types[ndx] = "stdout" self.signature = ProgramSignature(arity=arity, output_stacks=output_types, push_config=self.push_config) self.evaluator = DatasetEvaluator(X, y, interpreter=self.interpreter) self._build_search_algo() self.solution = self.search.run() self.search.config.tear_down()
def fit(self, X, y): """Run the search algorithm to synthesize a push program. Parameters ---------- X : pandas dataframe of shape = [n_samples, n_features] The training input samples. y : list, array-like, or pandas dataframe. The target values (class labels in classification, real numbers in regression). Shape = [n_samples] or [n_samples, n_outputs] """ X, y, arity, y_types = check_X_y(X, y) self.interpreter.instruction_set.register_n_inputs(arity) output_types = [self.interpreter.type_library.push_type_for_type(t).name for t in y_types] if self.last_str_from_stdout: ndx = list_rindex(output_types, "str") if ndx is not None: output_types[ndx] = "stdout" self.evaluator = DatasetEvaluator( X, y, interpreter=self.interpreter, last_str_from_stdout=self.last_str_from_stdout ) self._build_search_algo() best_seen = self.search.run() self._result = SearchResult(best_seen.program, output_types)
def fit(self, X, y): """Run the search algorithm to synthesize a push program. Parameters ---------- X : pandas dataframe of shape = [n_samples, n_features] The training input samples. y : list, array-like, or pandas dataframe. The target values (class labels in classification, real numbers in regression). Shape = [n_samples] or [n_samples, n_outputs] """ X, y, arity, y_types = check_X_y(X, y) self.interpreter.instruction_set.register_n_inputs(arity) output_types = [push_type_for_type(t).name for t in y_types] if self.last_str_from_stdout: ndx = list_rindex(output_types, "str") if ndx is not None: output_types[ndx] = "stdout" self.evaluator = DatasetEvaluator( X, y, interpreter=self.interpreter, last_str_from_stdout=self.last_str_from_stdout, verbosity_config=DEFAULT_VERBOSITY_LEVELS[self.verbose]) self._build_search_algo() best_seen = self.search.run() self._result = SearchResult(best_seen.program, output_types)
def score(self, X, y): """Run the search algorithm to synthesize a push program. Parameters ---------- X : pandas dataframe of shape = [n_samples, n_features] The training input samples. y : list, array-like, or pandas dataframe. The target values (class labels in classification, real numbers in regression). Shape = [n_samples] or [n_samples, n_outputs] """ check_is_fitted(self, "solution") X, y, arity, y_types = check_X_y(X, y) self.evaluator = DatasetEvaluator(X, y, interpreter=self.interpreter) return self.evaluator.evaluate(self.solution.program)
def score(self, X, y): """Run the search algorithm to synthesize a push program. Parameters ---------- X : pandas dataframe of shape = [n_samples, n_features] The training input samples. y : list, array-like, or pandas dataframe. The target values (class labels in classification, real numbers in regression). Shape = [n_samples] or [n_samples, n_outputs] """ check_is_fitted(self, "_result") X, y, arity, y_types = check_X_y(X, y) self.evaluator = DatasetEvaluator(X, y, interpreter=self.interpreter) return self.evaluator.evaluate(self._result.program)