google-research
65 строк · 2.0 Кб
1import java.io.*;
2import java.util.*;
3
4/**************************************************************************************************************************************
5* Class TemperedBoostException
6*****/
7
8public class TemperedBoostException extends Exception {
9public static int NB_NUMERICAL_ISSUES_ABSENT_CLASS;
10public static int NB_NUMERICAL_ISSUES_INFINITE_LEAF_LABEL;
11public static int NB_NUMERICAL_ISSUES_INFINITE_MU;
12public static int NB_ZERO_WEIGHTS;
13public static int NB_INFINITE_WEIGHTS;
14
15public static double MIN_WEIGHT;
16
17public static String NUMERICAL_ISSUES_ABSENT_CLASS = "NUMERICAL_ISSUES_ABSENT_CLASS",
18NUMERICAL_ISSUES_INFINITE_LEAF_LABEL = "NUMERICAL_ISSUES_INFINITE_LEAF_LABEL",
19NUMERICAL_ISSUES_INFINITE_MU = "NUMERICAL_ISSUES_INFINITE_MU",
20ZERO_WEIGHTS = "ZERO_WEIGHTS",
21INFINITE_WEIGHTS = "INFINITE_WEIGHTS";
22
23public static String[] COUNTS_LABELS = {
24NUMERICAL_ISSUES_ABSENT_CLASS,
25NUMERICAL_ISSUES_INFINITE_LEAF_LABEL,
26NUMERICAL_ISSUES_INFINITE_MU,
27ZERO_WEIGHTS,
28INFINITE_WEIGHTS
29};
30
31public static int[] COUNTS = new int[COUNTS_LABELS.length];
32
33public static int COUNTS_INDEX(String s) {
34int i = 0;
35while ((i < COUNTS_LABELS.length) && (!COUNTS_LABELS[i].equals(s))) i++;
36if (i == COUNTS_LABELS.length)
37Dataset.perror("TemperedBoostException.class :: no such TemperedBoostException as " + s);
38return i;
39}
40
41public static String STATUS() {
42int i;
43String v = "Exceptions summary count: {";
44for (i = 0; i < COUNTS_LABELS.length; i++) {
45v += COUNTS[i];
46if (i < COUNTS_LABELS.length - 1) v += ", ";
47}
48v += "}";
49return v;
50}
51
52public static void RESET_COUNTS() {
53int i;
54for (i = 0; i < COUNTS_LABELS.length; i++) COUNTS[i] = 0;
55MIN_WEIGHT = -1.0;
56}
57
58public static void ADD(String which_one_increment) {
59COUNTS[COUNTS_INDEX(which_one_increment)]++;
60}
61
62public TemperedBoostException(String which_one_increment) {
63super(which_one_increment);
64}
65}
66