5.5 检查你iPod的诚实性

    找出你的iPod“随机”打乱顺序的真正随机程度。

    苹果公司的iTunes是允许你在iPod上播放歌曲的软件,其中个性化的歌曲评级可以让你迅速找到你的最爱,这有助于派对随机播放(Party Shuffle)功能更多地播放你最喜欢的歌曲。iTunes挑选播放列表里下一首歌时使用的算法是:从你的最爱里随机选择。但它是真的随机吗?

    在iTunes里,如果你反复听到音乐库里一位艺术家的歌曲,你可能会认为你的播放器有它自己的偏好。不过苹果声称iTunes里的歌曲的打乱算法是完全随机的。打乱算法选择的歌是无放回的。也就是说,就像遍历一副洗好的扑克牌一样,在你听完所有歌之前,每首歌只会听到一次(或在你停止播放前,或选择不同的播放列表前)。

    iTunes中的派对随机播放是另一回事。其算法选择的歌曲是有放回的,这意味着每首歌曲播放后整个音乐库被重新打乱(就像每次抽出一张牌后重新对整副牌再洗一次)。“较多播放评级较高的歌曲”选项的确做到了较多次地播放高评级的歌曲,但对高评级的歌曲有多少偏好?

    5.5 检查你iPod的诚实性 - 图1本Hack最初在OmniNerd网站上http://www.omninerd.com/以一篇文章的形式出现。

    5.5.1 评估iTunes的筛选过程

    我想测试两种不同的歌曲选项:派对随机播放和“较多播放评级较高的歌曲“。我创建6首歌的短播放列表:5个星级中每个星级选一首,剩下的那首是没有评级的。这些歌曲属于同一流派和艺术家,并把每首歌的播放时长改为只有一秒钟。

    5.5 检查你iPod的诚实性 - 图2我在iTunes 5版本上进行我的测试。iTunes 6增加了智能随机播放功能,这可能会降低连续听到同一艺术家或专辑的几率,但我没有测试它。

    重置播放计数为零后,我点击播放按钮,然后离开我的办公桌去度周末。对这些歌我会播放两次:一次选择随机(派对随机播放),一次选择随机和“较多播放评级较高的歌曲”选项。表5-8显示了在星期一早晨的播放计数。

    表5-8:歌曲选择的分布

    随机选择 基于评级
    歌曲评级 播放次数 百分比 播放次数 百分比
    没有评级 9105 16.70% 2052 3.9%
    1 9055 16.60% 6238 11.8%
    2 9090 16.67% 8125 15.4%
    3 9114 16.71% 10 020 18.9%
    4 9027 16.55% 12 158 23.0%
    5 9146 16.77% 14 293 27.0%
    总计 54 537 100% 52 886 100%

    在随机试验中,所有歌的播放次数都非常接近,和随机选择预期的一样。对于基于歌曲评级(或评价偏向选择)的试验,偏好算法对评级歌曲12%~27%的选择几率似乎是线性的。从5星评级一直下降,星级评级每下降一级,线性偏好就下降4%左右,但从一星级到无评级,降幅加倍了,有8%的下降。虽然一星级似乎是最低的等级,但没有评级才是真正的害群之马。

    5.5 检查你iPod的诚实性 - 图3你的iPod假定:如果你对一首歌没有进行星级评定,那么相比那些你给最低评级的歌曲,你更不想听到这些没有评级的歌曲。这有点像选择一部差评的电影,而不选择暂时没有任何评价的电影。

    图5-2显示了不同的歌曲选择选项的效果。你可以通过观察图表上的“随机”条的高度,来判断真正的随机选择选项的随机性。“评级偏差”条的线性性质,可以通过分析从1星级到5星级的每一步移动是否有相同的上升高度来判断。

    5.5 检查你iPod的诚实性 - 图4

    图5-2:歌曲选择模式

    5.5.2 计算选择过程的统计量

    改变每个评级内歌曲的数目会改变每首歌曲被选中的概率。因为每个评级里都有多首歌曲,一首被评为r的歌曲在下一次评级偏好的(ratings-biased)派对随机播放中出现的几率,可用如下表达式计算:

    5.5 检查你iPod的诚实性 - 图5

    这个表达式中的下标表示歌曲的评级。一首歌曲被选中的几率取决于x(每个等级的歌曲数)和P(iTunes算法给的每个评级的百分比权重)。

    每类评级的iTunes偏好概率,取自一个周末的抽样,下面是结果表达式:

    5.5 检查你iPod的诚实性 - 图6

    虽然评级较高的歌曲会优先考虑,但相比其他所有的歌曲,你不一定会听到更多的5星评级歌曲。我们假设,多数人评级的时候遵循正态分布[Hack #23],其中3星级最常见。表5-9显示一个假设的、评级歌曲计数为钟形曲线的iTunes资料库。

    表5-9:型的歌曲评级分布

    歌曲评级 歌曲数量
    没有评级 72
    1 321
    2 1527
    3 1812
    4 507
    5 95

    如果用我们的频率方程运行这些假设的数字,会得到如图5-3所示的分布。

    5.5 检查你iPod的诚实性 - 图7

    图5-3:歌曲选择的概率分布

    正如你在图5-3中看到的那样,有特定评级的一首歌在播放列表中下一个出现的几率很大程度是由该歌曲评级内的歌曲数量决定的。iTunes对高评级歌曲的偏好,以及对低评级歌曲的厌恶只是略微提高或降低了由歌曲数量决定的概率。

    可以将听到具有某个评级歌曲的几率运用到计算听到一首特定歌曲的几率。如果我们在歌曲选择表达式的分母里拿掉歌曲数量,我们就可以计算下一首是某首特定歌曲的几率,而不是下一首是某一评级歌曲的几率:

    5.5 检查你iPod的诚实性 - 图8

    5.5.3 解释统计惊喜

    运行这些测试后大约一个月,我工作时发现我的iTunes派对随机播放时对同一首歌连续播放了两次。这是我第一次注意到一个连续的重复,然后我检查了播放列表。我不仅发现Nirvana的Territorial Pissings在列表上连续出现两次,而且A.F. I的Death of Seasons在三次音轨后连续出现了两次。

    我用的是“较多播放评级较高的歌曲”这一选项,但这些都是中庸的3星级歌曲,我的歌曲库拥有近4000首歌。初看概率似乎令人惊讶,但你必须意识到你在一个工作日能听多少首歌。如果我平均每天工作10小时,而平均一首歌曲的播放时间是3.5分钟,概率认为我应该在不到一个月的时间内听完一个连贯的重复。

    很多人声称当iTunes在漫步他们的音乐集时仍然可以看到模式(pattern),但这些模式大多数都只是同一个艺术家的多首歌曲。这么想想:如果你有2000首歌曲,40首来自同一个艺术家,随机播放时总是有大约2%的几率会再次听到这些歌。一首歌播放完后,同一个艺术家的歌曲在下35首歌再次播放的几率是50%,在下50首歌会再次播放的几率是64%。这可以通过下面这个公式来计算:

    5.5 检查你iPod的诚实性 - 图9

    正如我们在其他Hack里看到的一样,小概率事件(比如我们有2%的几率能重复听到某位艺术家的歌曲)只需要一些机会[Hack #46]就会变成一个极有可能的事件。

    我们会潜意识的找到一个模式,让你觉得iTunes有一个偏好。

    5.5.4 参阅

    有关iPod和洗牌的更多技术信息可以在下列资料中找到:

    ——布雷恩·汉森