def plot_aggregate_results()

in automl21/scs_neural/experimentation/launcher.py [0:0]


    def plot_aggregate_results(self, test_results, train_results,
                               tag='t', dir_tag=None):
        if dir_tag is None:
            dir_tag = ""
        upd_dir_tag = 'aggregates/' + dir_tag + '/'
        if dir_tag is not None:
            os.makedirs('aggregates/' + dir_tag, exist_ok=True)
        
        nrow, ncol = 3, 2
        metrics = ['u_diff_train', 'u_diff_test', 'u_diff_orig_train', 'u_diff_orig_test', 
                   'all_u_diff_train', 'loss']
        metric_names = ['Normalized |u - u_prev| (Train)', 'Normalized |u - u_prev| (Test)',
                        '|u - u_prev| (Train)', '|u - u_prev| (Test)', 
                        'Unscaled |u - u_prev| Train', 'Loss']

        upd_tag = upd_dir_tag + tag + '_agg'

        agg, conf = [{}, {}, {}], [{}, {}, {}]

        all_metrics = ['u_diff', 'u_diff_orig']
        for metric in all_metrics:
            results = [train_results, test_results]
            for i, name in enumerate(['train', 'test']):
                metric_upd = metric + '_' + name
                curr_results = results[i]
                for j in range(1):
                    agg[j][metric_upd] = curr_results[2*j][metric]
                    conf[j][metric_upd] = curr_results[2*j + 1][metric]
        metric = 'loss'
        for j in range(1):
            agg[j][metric] = test_results[2*j][metric]

        data = {"scs_neural": agg[0]}
        std = {"scs_neural": conf[0]}
        
        data['scs_neural']['all_u_diff_train'] = (self.diff_u_sum / self.count_sum).detach().numpy()
        var = (self.diff_u_sum_sq / self.count_sum - (self.diff_u_sum / self.count_sum).pow(2))
        std['scs_neural']['all_u_diff_train'] = var.sqrt().detach().numpy()

        self._plot_metrics(data, nrow, ncol, metrics, metric_names, upd_tag, std)