Side effect machines for sequence classification
Daniel Ashlock, Elizabeth G. Warner · Conference proceedings - Canadian Conference on Electrical and Computer Engineering · 2008
Finite state machines are routinely used to efficiently recognize patterns in strings. The internal state structure of the machine is typically only of peripheral interest, appearing in algorithms only when the number of states is minimized in the interests of efficiency of execution or comparison. A side effect machine saves information about the internal transitions of the state machine. This record of internal state transitions forms an induced feature set for the string run through the machine. In this study the number of times a machine passes though each state is used as a numerical feature set for classification. Finite state machines are trained with an evolutionary algorithm to produce feature sets that are very easy for an unsupervised learning algorithm, k-means clustering, to learn. The system is demonstrated on a collection of synthetic DNA sequences with bounded randomness. The parameters, number of states, population size, and mutation rates, are explored to characterize their effect on performance. The machines achieve perfect classification on easy examples and good classification on more difficult examples. Parameter choice has a substantial impact on performance.