Suppose we've collected a big (hundreds of thousands) library of different protein sequences with certain features. Then we want to use this data base to train a classifier. And for several statistical reasons we want different functional domains to have somewhat equal frequencies in the data base to reduce domain-specific bias. The straightforward way to achieve this is to use structural information from UniProt and the like, but many proteins don't have any verified structures and de-novo structure prediction might take ages to compute. Alternatively we can perform sequence clustering and pick an even number of sequences out of each cluster. We can either apply a local-alignment based clustering algorithm with ~35% identity threshold or use some sort of hidden Markov model to cluster by profile. What do you think? How biologically relevant this might be? Can this simple clustering based approach help normalise the library to some extent?