话说到,前段时间给某省移动公司做无线音乐交叉推荐项目,做的事不亦乐乎。且不说涉及的数据挖掘的算法,单说歌曲这玩意儿有关的一些有趣的话题,就挺让人兴奋,比如:
- 什么歌曲好听?能不能按照既定规则作曲,就能得到好歌?
- 歌曲有风格的,且风格是有限的。这个风格如何定义?
- 歌曲是对应歌手的,一个歌手的所有歌曲是不是对于单个听众来说都是好的?
- 歌手的风格有类似,那些比较相近?
这么多问题,假如有相关数据,其实都是可以通过数据挖掘的算法来给出答案的。最后一个歌手风格问题,假如能穷尽所有歌手之间的关系,没准能得到一些提示?于是乎,开始着手找数据,琢磨如何搞定这个事情。
问题有很多:
- 歌手的范围如何界定?是中文、英文、日文、韩文、法文等一起考虑,还是一个语种一个语种的考虑?
- 歌手列表如何获得?
- 歌手间的关系如何获得?如何衡量歌手的关系?
网上搜了一下,发现百度可以给答案,它说:
- 列表:http://list.mp3.baidu.com/top/top200.html
- 关系:搜索两两歌手的网页数即可,即可代表二者的关系强弱(假设网页数多,即关系紧密)
于是乎,就这么办了(请新建标签页浏览图片):

很有意思的结果,有几点提示:
- 歌手后面的颜色点是歌手的分群(同群的风格相似?)
- 歌手间的线代表了两者间关系强弱
- 前200的歌手剔除掉了《信》和《黎明》二位(这俩哥们的搜索干扰太大了)
解释的话,我这儿就省了。仁者见仁,智者见智。反正这198位歌手,我还有几十个不认识,像什么格格、小雪、大嘴巴之类的,还有什么飞轮海啥的,我的偶像集中在上个世纪,呵呵。
http://bjt.cos.name/2011/05/baidu-singers-relationships/