у вас есть треки, у васи пупкина есть треки, множества частично пересекаются, объединив получим рекомендации для вас. Добавим к этому огромное количество пользователей и получим что-то худо бедно похожее на нормальный автоподбор музыки. Если учитывать кто с чем что слушает, можно повысить точность. Ну и т.д. Так собственно работает большая часть сервисов рекомендации музыки. Есть еще другие подходы основанные на анализе композиций, но таких сервисов не так много. Скажем спотифай использует echonest для увеличения точности выборки.