  The problem of deciphering how low-level patterns (action potentials in the
brain, amino acids in a protein, etc.) drive high-level biological features
(sensorimotor behavior, enzymatic function) represents the central challenge of
quantitative biology. The lack of general methods for doing so from the size of
datasets that can be collected experimentally severely limits our understanding
of the biological world. For example, in neuroscience, some sensory and motor
codes have been shown to consist of precisely timed multi-spike patterns.
However, the combinatorial complexity of such pattern codes have precluded
development of methods for their comprehensive analysis. Thus, just as it is
hard to predict a protein's function based on its sequence, we still do not
understand how to accurately predict an organism's behavior based on neural
activity. Here we derive a method for solving this class of problems. We
demonstrate its utility in an application to neural data, detecting precisely
timed spike patterns that code for specific motor behaviors in a songbird vocal
system. Our method detects such codewords with an arbitrary number of spikes,
does so from small data sets, and accounts for dependencies in occurrences of
codewords. Detecting such dictionaries of important spike patterns --- rather
than merely identifying the timescale on which such patterns exist, as in some
prior approaches --- opens the door for understanding fine motor control and
the neural bases of sensorimotor learning in animals. For example, for the
first time, we identify differences in encoding motor exploration versus
typical behavior. Crucially, our method can be used not only for analysis of
neural systems, but also for understanding the structure of correlations in
other biological and nonbiological datasets.
