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.