Sunday, May 12, 2013

毛发会越剃越浓,越硬,越黑吗zz

一个我一直很好奇的问题。。。

流言: 剪头发、剃毛会使毛发变得更多更粗更黑。

真相: 对于这个流言,真是几家欢喜几家愁。头发少的人希望通过常剪头发来增多头发,需要除体毛的女士担心体毛越来越多,越来越粗,越来越黑。实际上,毛发是多是少,是粗是细,是黑是浅,都和你是剪了它,剃了它没有关系,这些是由基因和荷尔蒙决定的[1]。直接影响毛发生长的毛囊,它藏在皮肤的深处,仅仅是表面的剪切,不会影响到毛囊,所以也就不会对毛发的状态产生什么影响[2]。

如果这个流言是真的,那就不会有为秃头而烦恼的人了。天天刮胡子的男士,也会渐渐都变成是大络腮胡子的,而实际上并非如此。毛发的数量是由毛囊数量决定的,剪头发并不能改变毛囊数量。另外,长的头发会显得更软一些,剪短以后显得更硬些,这是因为人的错觉。类似的例子,同样都是竹子,长的时候能折弯,切短了想把它弄弯就很难了。至于粗细问题,发梢的部位因为一段时间的摩擦,会比刚长出来的部分细一些。颜色的问题也是类似,暴露在空气中,阳光的照射会使头发的颜色变浅,使得新长出来的头发看起来要更黑。但这一些不同和剪头发本身都是没有关系的。

结论: 谣言破解

参考资料:

Monday, May 6, 2013

n维单位球上任意两个向量交角的统计性质

想到这个问题源自于Domingos在A few useful things to know about machine learning提到,在高维的空间中,任意两个向量都几乎是正交的。我们可以从"n维单位球上任意两个向量交角"的统计性质来验证。

我们的目标是要在n维单位球面上独立同分布的均匀采样两个向量x与y,计算两者交角Inline image 4的统计性质。

其实这个问题挺简单的,只要稍微推一下。
首先显然我们并不需要采样两个向量,由对称性,只需假设其中一个向量固定在(1,0,...),求另一个向量与它的交角就可以了。
当n=2时,2维单位球面就是2维平面上的单位圆,向量的均匀采样可以方便的用在[0,2pi]上均匀采样向量的方位角来实现。这时可以方便的求取夹角Inline image 5的期望与方差:




当n为任意数时,求这一夹角的余弦比直接求夹角更方便。
由对称性很容易得到夹角余弦的数学期望为0:

对于方差,问题的关键在于如何均匀的在n维球面上均匀采样,Wikipedia提供了常用的标准做法:独立同分布的采样n个标准正态分布作为n个分量并将其归一化到单位球面上:

证明很容易,直接想一想就出来了,根本原因是归一化前的随机向量的概率分布只与其到原点的距离有关。
所以可以得到夹角余弦的方差:

由对称性很容易得到:

总之结论是夹角余弦的期望为0(对应两向量正交),方差随n增大而成反比的减小,也就是说,当维度n非常大时,任意两向量几乎以概率1正交。高维情况下不少事情和我们想象的很不一样。

p.s.1: 本文的公式由
生成,其中前两个小\theta是在线的图片,而其他是生成后离线下载下来的,用于之后测试在线的公式生成是否靠谱。
p.s.2: 这个问题做面试题不错。。。