探秘推荐引擎之协同过滤算法小综述,概率论起源的故事

数学之所以有生命力,就在于有趣。数学之所以有趣,就在于它对思维的启迪。

     
数学大神、统计学大神和数据挖掘推荐大神请关注。

以下就是一则概率论起源的故事。

一、数学期望的理解

更早些时候,法国有两个大数学家,一个叫做巴斯卡尔,一个叫做费马。

     
图片 1早些时候,法国有两个大数学家,一个叫做布莱士·帕斯卡,一个叫做费马。帕斯卡认识两个赌徒,这两个赌徒向他提出了一个问题。他们说,他俩下赌金之后,约定谁先赢满5局,谁就获得全部赌金。赌了半天,A赢了4局,B赢了3局,时间很晚了,他们都不想再赌下去了。那么,这个钱应该怎么分?是不是把钱分成7份,赢了4局的就拿4份,赢了3局的就拿3份呢?或者,因为最早说的是满5局,而谁也没达到,所以就一人分一半呢?这两种分法都不对。正确的答案是:赢了4局的拿这个钱的3/4,赢了3局的拿这个钱的1/4。

巴斯卡尔认识两个赌徒,这两个赌徒向他提出了一个问题。他们说,他俩下赌金之后,约定谁先赢满5局,谁就获得全部赌金。赌了半天,A赢了4局,B赢了3局,时间很晚了,他们都不想再赌下去了。那么,这个钱应该怎么分?

     
为什么呢?假定他们俩再赌一局,A有1/2的可能赢得他的第5局,B有1/2的可能赢得他的第4局。若是A赢满了5局,钱应该全归他;若B赢得他的第4局,则下一局中A、B赢得他们各自的第5局的可能性都是1/2。所以,如果必须赢满5局的话,A赢得所有钱的可能为1/2+1/2×1/2=3/4,当然,B就应该得1/4。

是不是把钱分成7份,赢了4局的就拿4份,赢了3局的就拿3份呢?或者,因为最早说的是满5局,而谁也没达到,所以就一人分一半呢?

     
数学期望由此而来。

这两种分法都不对。正确的答案是:赢了4局的拿这个钱的3/4,赢了3局的拿这个钱的1/4。

     
图片 2为什么写这个呢?因为我发现协同过滤里很多公式的分子是权值和值成绩的连加和,分母是权值之和(实际上就是加权平均),如果分开看,不就是概率(看作是权值的归一化处理,这样就满足了相加为1的性质,那么肯定是概率了)乘以值的连加和么。

为什么呢?假定他们俩再赌一局,或者A赢,或者B赢。若是A赢满了5局,钱应该全归他;A如果输了,即A、B各赢4局,这个钱应该对半分。现在,A赢、输的可能性都是1/2,所以,他拿的钱应该是1/2×1+1/2×1/2=3/4,当然,B就应该得1/4。

     
期望(Expected-Value)就是概率和价值量乘积的累加和。

通过这次讨论,开始形成了概率论当中一个重要的概念——数学期望。

     
图片 3认识的误区。
     
1.数学期望是当事人心理上最愿意或最现实的获利。和汉语理解混淆,如:某A罚球命中率0.6,中的1分,不中0分,那么投一次,得分的期望是1或0(我期望投中,我肯定投不中)。解析:概率值会影响期望的,这就是没考虑概率。数学期望简称期望,以后还是只叫数学期望吧。
     
2.实际发生概率最大的获利。咱们ABCD一般选择呢BC作为正确答案。0.1A,0.9B,那么一定选B么?
      3.可能发生的获利的平均值。

在上述问题中,数学期望是一个平均值,就是对将来不确定的钱今天应该怎么算,这就要用A赢输的概率1/2去乘上他可能得到的钱,再把它们加起来。

     
笔者一直认为是第三个,为什么这么理解呢?定义上说期望反映了离散型随机变量的取值的平均水平,或许我对第三个的理解有误,或许是说只是平均值,没有乘以概率。

概率论从此就发展起来,今天已经成为应用非常广泛的一门学科。

     
图片 4例题解析
     
1.某书店计划订购一本新版书,根据以往经验来预测,这本新书销量为40本,100本,120本的概率为0.2,0.7,0.1,这本书的订购价位6元,销售价位8元,如果当时兽不出,只能以每本5元的价格作为剩书处理。请帮助店主决策应订购多少本新书较为合理。

    
解答:如果我高中的时候应该做得出来,现在看到竟然没有思路,百度到解答后我认为我忽略了一个重要隐含条件,那就是40,100,120本的概率和为1,这说明了什么问题呢?那就是只会售出这三种情况,不会售出41,101,119本等等等等的情况。

                          图片 5图片 6

     
解答完毕之后我反而认为第一种解释是期望的解释,看来这道题起到了反作用。

     
2.掷一次骰子,得到的点的期望是1/6*(6*(1+6)/2)=3.5,为什么出现小数呢?

    
图片 7看了半天,还是没解决我的问题。

     
我去知乎社区查了查,得到如下一个问题,以及相关回复。

     
数学期望也有翻译成”预期“的,在一些研究中,例如资产定价理论里,几乎是把这个数学上的”预期“和人心理上对资产价格的”预期“等同了。但看这个例子:扔一个均匀硬币,正面+1分反面-1分,则数学“预期”是0,但是每个人都知道结果只可能是+1或者-1,不可能是0,自然不会有人”预期“结果是0分。
总之,谁能给数学期望一个直觉上容易接受的解释吗?

     
1.简而言之,甜甜圈的重心也不在甜甜圈里。
     
2.可以理解为实验结果用概率进行加权得到的预期。在大量试验之后,实验结果的平均值会向期望靠近。
     
3.先上总结,期望是基于概率基础的,是对未知的预期。TZ应该分清楚一次的实际结果和你预期的结果两者的区别。以离散情况为例。      
图片 8

     
你首先是已知在每一状态i下的取值x_{i},以及概率p_{i}。然后你才能推断出期望。而概率在大多出情况下是由频数近似而来的。频数就是在事件发生的次数/实验的总次数。在这个定义中,就已经隐藏了大样本的条件了。因而,期望就是在多次实验之后,你预期的结果。而不是你下一次,或者某次实验的结果。

     
4.样本容量等于总体时的概率值,也就是说期望是概率下的值,与某一次无关。
      5.我认为@He Jingyu
的答案不完全准确,并且第一句就误导了知友。期望Expectation,是由概率密度函数定义的,手机就不给公式了。是讲一个变量所符合的分布的特性。均值Mean,是样本的特性,假设一组分布未知的样本,均值仍然是可以计算的。更极端一点,这几个样本分布特性并不一样,仍然可以求出均值。
      为什么这两个概念会经常混淆呢?
     
6.看了如上的回答,都没有很本质的回答这个问题,诸如平均啊什么的,觉得中学生都能理解,题主肯定也明白。。基于我正在玩手机,只能简单谈下这个问题。数学期望本身并不是一个平均数,也是一个随机变量。从统计角度,一个基于样本的无偏估计。从概率角度,需要定义事件的集合,sigma域,测度等。期望这个随机变量就是各个随机变量在其生成sigma域上的最佳逼近元。

     
图片 9感觉知乎就是属于高端社区,每个人发的都是自己的见解,不是ctrl+c和ctrl+v。

     
图片 10我这个问题很幼稚吗?我不这么认为,看PCA和LDA时我查看了矩阵,发现Google把CSDN的一个MVP和矩阵联系在了一起,文章叫《理解矩阵》,把矩阵看成一种变换,共三片,前后花了2年时间完成(ps:看完之后我还是不太理解,主要是方差什么的不知道其工程意义)。这两者不是很相似么?

二、皮尔逊相关系数的理解

     
我想知道的是皮尔逊公式为为什么值域在-1到1(怎么只管看出来或者理解出来),公式为什么这么表达?只有理解了,才能提出自己的相关系数公式。

     
我想起了高中物理话U-I图,老师说最接近两遍点的直线,大学了知道是最小二乘法,那么最小二乘得出的直线两侧的点的皮尔逊相关系数应该与直线的斜率有某种联系吧,或者说一个可以作为度量另一个的标准,数学大神请关注。

     
图片 11当两个变量的标准差都不为零时,相关系数才有定义,皮尔逊相关系数适用于:

     
(1)、两个变量之间是线性关系,都是连续数据。

     
(2)、两个变量的总体是正态分布,或接近正态的单峰分布。

     
(3)、两个变量的观测值是成对的,每对观测值之间相互独立。

     
从上面看出,基于用户的协同过滤是不是不该用皮尔逊相关系数,除了第二个条件不确定(莫非每个物品被购买的总数服从正态分布)。

     
图片 12Matlab里使用corr(x,y)函数。

     
图片 13定理: | ρXY | =
1的充要条件是,存在常数a,b,使得P{Y=a+bX}=1;可以看出皮尔逊衡量的是两组数据的线性相关程度。

     
图片 14需要指出的是,相关系数有一个明显的缺点,即它接近于1的程度与数据组数n相关,这容易给人一种假象。因为,当n较小时,相关系数的波动较大,对有些样本相关系数的绝对值易接近于1;当n较大时,相关系数的绝对值容易偏小。特别是当n=2时,相关系数的绝对值总为1。因此在样本容量n较小时,我们仅凭相关系数较大就判定变量x与y之间有密切的线性关系是不妥当的。

      这是14号补充上去的。

  
按照高中数学水平来理解, 它很简单, 可以看做将两组数据首先做Z分数处理之后,
然后两组数据的乘积和除以样本数。Z分数一般代表正态分布中,
数据偏离中心点的距离.等于变量减掉平均数再除以标准差.(就是高考的标准分类似的处理)。标准差则等于变量减掉平均数的平方和,再除以样本数,最后再开方.所以,
根据这个最朴素的理解,我们可以将公式依次精简为:

图片 15

  
Z值的量代表着原始分数和母体平均值之间的距离,是以标准差为单位计算。在原始分数低于平均值时Z则为负数,反之则为正数。标准分数可以回答这样一个问题:”一个给定分数距离平均数多少个标准差?”在平均数之上的分数会得到一个正的标准分数,在平均数之下的分数会得到一个负的标准分数。

  
标准分数是一种可以看出某分数在分布中相对位置的方法。标准分数能够真实的反应一个分数距离平均数的相对标准距离。如果我们把每一个分数都转换成标准分数,那么每一个标准分数会以标准差为单位表示一个具体分数到平均数的距离或离差。将成正态分布的数据中的原始分数转换为标准分数,我们就可以通过查阅标准分数在正态曲线下面积的表格来得知平均数与标准分数之间的面积,进而得知原始分数在数据集合中的百分等级。

  
一个数列的各标准分数的平方和等于该数列数据的个数,并且标准分数的标准差和方差都为1。均值为0。

   例如:某中学高(1)班期末考试,已知语文期末考试的全班平均分为73分,标准差为7分,甲得了78分;数学期末考试的全班平均分为80分,标准差为6.5分,甲得了83分。甲哪一门考试成绩比较好?

因为两科期末考试的标准差不同,因此不能用原始分数直接比较。需要将原始分数转换成标准分数,然后进行比较。Z(语文)=(78-73)/7=0.71
Z(数学)=(83-80)/6.5=0.46
 甲的语文成绩在其整体分布中位于平均分之上0.71个标准差的地位,他的数学成绩在其整体分布中位于平均分之上0.46个标准差的地位。由此可见,甲的语文期末考试成绩优于数学期末考试成绩。

  
由于标准分数不仅能表明原始分数在分布中的地位,它还是以标准差为单位的等距量表,故经过把原始分数转化为标准分数,可以在不同分布的各原始分数之间进行比较。

三、基于用户的协同过滤算法

网站地图xml地图