eval_metric = gmean_metric, eval_set = [(dataset.X_validate, dataset.y_validate)], verbose = True) elapsed_time_training = time.time() - start_time # Predicting print('Predicting...') start_time = time.time() y_pred = model.predict(dataset.X_test, prediction_type='Class') elapsed_time_testing = time.time() - start_time # Analytics title = "LightGBM (hyper weights dart)" eval_results = { 'multi_logloss': model.evals_result_['valid_0']['multi_logloss'], 'gmean': model.evals_result_['valid_0']['gmean']} save_path = "C:/Users/thoma/source/repos/PythonMachineLearning/PythonMachineLearning/Library/Results" print('Analyzing...') evaluator = Evaluator(title, save_path) evaluator.append_to_file(f'Best iteration: {model.best_iteration_}', "info.txt") evaluator.append_to_file(f'Training time (seconds): {elapsed_time_training}', "info.txt") evaluator.append_to_file(f'Testing time (seconds): {elapsed_time_testing}', "info.txt") evaluator.append_to_file(dataset_parameters, "dataset_parameters.txt") evaluator.append_to_file(model_parameters, "model_parameters.txt") evaluator.save_advanced_metrics(dataset.y_test, y_pred, dataset.class_labels, dataset.class_descriptions) evaluator.append_to_file(eval_results, "metric_results.txt") evaluator.create_evaluation_metric_results(eval_results, xlabel='number of trees', ylabel='metric score') evaluator.create_confusion_matrix(dataset.y_test, y_pred, dataset.class_labels, normalize = True) plt.show()
monitor_score = "gmean", sample_weight=dataset.weight_per_sample, patience = 25, higher_is_better = True) start_time = time.time() early.fit(dataset.X_train, dataset.y_train) elapsed_time_training = time.time() - start_time # Predicting print('Predicting...') start_time = time.time() y_pred = early.estimator.predict(dataset.X_test) elapsed_time_testing = time.time() - start_time # Analytics title = "GradientBoostingClassifier (hyper weights)" save_path = "C:/Users/thoma/source/repos/PythonMachineLearning/PythonMachineLearning/Library/Results" print('Analyzing...') evaluator = Evaluator(title, save_path) evaluator.append_to_file(f'Best iteration: {early.best_iteration_}', "info.txt") evaluator.append_to_file(f'Training time (seconds): {elapsed_time_training}', "info.txt") evaluator.append_to_file(f'Testing time (seconds): {elapsed_time_testing}', "info.txt") evaluator.append_to_file(classifier_parameters, "classifier_parameters.txt") evaluator.append_to_file(dataset_parameters, "dataset_parameters.txt") evaluator.append_to_file(model_parameters, "model_parameters.txt") evaluator.save_advanced_metrics(dataset.y_test, y_pred, dataset.class_labels, dataset.class_descriptions) evaluator.append_to_file(early.scores_, "metric_results.txt") evaluator.create_evaluation_metric_results(early.scores_, xlabel='boosting stages', ylabel='metric score') evaluator.create_confusion_matrix(dataset.y_test, y_pred, dataset.class_labels, normalize = True) plt.show()