It is my understanding that they have hired musicians to listen to each of the songs they stream then rate each one according to dozens of factors. The factors include things like "acoustic guitar", "strong melody", "high studio production values", "gritty vocals", etc etc. Then they are able to do some kind of cluster analysis on that dataset. So that if you put in "Stone Roses" you hear music from that band but then others that have a similar sound.
I find about 2 or 3 new bands that I really like every week. I have actually started buying CDs again.