####### Experiment ####### Experiment =========== The Experiment class acts like file handle around the EvaluateModel class, generating tracking information for each of your experiments. With it you can log metadata about the evaluation, the model, and the number of trials. Additionally, you can save the visualizations to the experiments directory that gets generated for ease of organization. Examples using EvaluateModel ============================ Here is an example using Experiment with a toy classification problem:: import warnings warnings.filterwarnings('ignore') from randomizer_ml.trainer import RegressionTrainer, ClassificationTrainer, EvaluateModel from randomizer_ml.visualizer import Visualizer from randomizer_ml.experiment import Experiment from sklearn.linear_model import LinearRegression from sklearn.datasets import make_regression from sklearn.linear_model import LogisticRegression from sklearn.datasets import make_classification import pandas as pd import numpy as np with Experiment("logistic_regression") as experiment: clf = LogisticRegression() X, y = make_classification( n_samples=2000, n_features=100, n_informative=90, n_redundant=2, random_state=0 ) X = pd.DataFrame(X) y = pd.Series(y) num_trials = 200 clf_eval = EvaluateModel("classification", clf, X, y, num_trials) model_instances = clf_eval.fit_random("random") experiment.log_model_instances(model_instances) experiment.log_model(clf) experiment.log_num_trials(num_trials) viz = Visualizer( model_instances, "classification", coef_names=X.columns.tolist(), output_dir="experiments/logistic_regression/" ) viz.visualize_classification( bins=len(model_instances), show_plot=True, save_plots=True, formatting="png" ) viz.visualize_coeficients( bins=len(model_instances), show_plot=True, save_plots=True, formatting="png" )