You can use oversampling methods to balance your training set, however these methods are strongly data dependent. https://dip.felk.cvut.cz/browse/pdfcache/borovto1_2012dipl.pdf
A heuristc based on adaptive differential evolution is proposed in
TVRDÍK, J.,KŘIVÝ, I. Differential Evolution with Competing Strategies Applied to Partitional Clustering. Lecture Notes in Computer Science 7269. pp. 136-144, Berlin Heidelberg: Springer-Verlag, 2012.
Multiple Classifier systems (MCSs) are good for classifying unbalanced clusters of classes. MCSs combine multiple classifiers that are build based on independent sample of the data.
@Edward What about unsupervised techniques for the unbalanced clusters? Looks like the one class classification methods all rely on the underlying assumption that we do have training data
There are some useful algorithms in data mining such as DBSCAN algorithm for clustering. It's very useful for unsupervised learning. And also you can check hierarchical clustering algorithms.