We thought it may be interesting to describe some examples of benchmarks that we used in addition to MCNC benchmarks. Some of the benchmark names from the tables are separated into several groups listed and briefly explained below.
LEARNING8_SET. This set of functions is intended to be representative of a wide variety of functions for testing machine learning systems.
RANDOM. There are 3 randomly generated functions, generated with FLASH with seeds 1,2, and 3: rnd1, rnd2, and rnd3.
RANDOM MINORITY ELEMENTS. There are 5 functions generated with a fixed number of minority elements placed at random. The seed for all was 1: rnd_m1, rnd_m5, rnd_m10, rnd_m25, rnd_m50.
BOOLEAN EXPRESSIONS. These are functions intended to represent database concepts for knowledge discovery[7]. kdd1: (x1 x3) + x2'; kdd2: (x1 x2' x3)(x4 + x6'); kdd3: NOT (x1 OR x2) + (x1' x4 x6); kdd4: x4';
Table i: Espresso on Machine Learning Benchmarks.
kdd5: (x1 x2 x4')+(x3 x5' x7 x8)+(x1 x2 x5 x6 x8)+(x3' x5'); kdd6: x2 + x4 + x6 + x8; kdd7: (x1 x2) + (x3 x4) + (x5 x6) + (x7 x8); kdd8: (x1 x2') XOR (x1 x5); kdd9: (x2 XOR x4)(x1' XOR (x5 x7 x8)); kdd10: (x1 x4) XOR ( NOT (x7 x8) )(x2 + x3).
multiplexer, used in [12], this is a 2-address bit, 4-data bit multiplexer with two vacuous variables (x0 and x1) to make 8 inputs.
STRING FUNCTIONS. Palindrome acceptor, pal, palindrome output, pal_output, randomly generated 128 bits then mirror imaged them to create the outputs of an 8 variable function. Doubly palindromed output, pal_dbl_output, as above but generated 64 bits and flipped them twice. 2 interval acceptors from FLASH, interval1 accepts strings with 3 or fewer intervals (i.e. substrings of all zeros or all ones). interval2 accepts strings with 4 or fewer intervals 2 sub-string detectors. substr1 accepts strings with the sub-string "101". substr2 accepts strings with the sub-string "1100".
IMAGES. chXfY means character X from font Y of the Borland font set. All were generated with the Pascal program charfn.exe. ch8f0 - kind of a flat plus sign, ch15f0 - an Aztex looking design, ch22f0 - horizontal bar,
Table ii: EXORCISM on Machine Learning Benchmarks.
ch30f0 - solid isosceles triangle, ch47f0 - slash, ch176f0 - every other column of a checker board, ch177f0 - checker board, ch74f1 - triplex J, ch83f2 - small S (thin strokes), ch70f3 - sans serif F, ch52f4 - gothic 4.
SYMMETRIC FUNCTIONS. parity. contains_4_ones, (f(x)=1 iff the string x has 4 ones). majority_gate, f(x)=1 iff x has more 1's than 0's.
NUMERICAL FUNCTIONS. addition, add0, add2, add4 - outputs bits of a 4 bit adder, 0 is the most significant bit. greater_than: f(x1,x2)=1 iff x1 > x2. subtraction: subtraction1, subtraction3 - output bits 1 and 3 of the absolute value of a 4-bit difference. 0 is most significant bit. modulus2, output bit 2 of 4-bit modulus 0 is the most significant bit. remainder2, output bit 2 of 4-bit remainder 0 is the most significant bit.