Один из ответов заключается в том, что любая рекомендующая система должна иметь некоторые свойства, которые вы описываете. Первоначально, рекомендации не так хороши и повсюду. По мере изучения вкусов рекомендации будут исходить из области, которая нравится пользователю.
Но описанный вами процесс совместной фильтрации принципиально не пытается решить проблему, которую вы пытаетесь решить. Он основан на пользовательских оценках, и две песни не имеют одинакового рейтинга, потому что они похожи - они имеют одинаковый рейтинг только потому, что похожие люди любят их.
Что вам действительно нужно, так это определить ваше представление о сходстве песен и песен. Это основано на том, как звучит песня? композитор? Потому что это звучит так, как будто понятие не основано на рейтингах. Это 80% проблемы, которую вы пытаетесь решить.
Я думаю, что вопрос, на который вы действительно отвечаете, состоит в том, какие предметы больше всего похожи на данный предмет? Учитывая сходство вашего предмета, это более простая проблема, чем рекомендация.
Mahout может помочь со всеми этими вещами, кроме сходства песни с песней, основанного на его аудио - или, по крайней мере, обеспечить начало и основу для вашего решения.