昨天那篇发的有点着急,因为手上的书都没看完就开始K字,感觉不太完整

今天又赶着要出门(和朋友约了吃饭啦嘻嘻嘻),所以没准备新内容,仅对昨天提到的公式做些补充解释

excel参数估计总结(Excel数据分析对极大似然估计的一点解释)(1)

昨天的重点内容:

以似然值取自然对数的数值作为试算的目标值,要求目标值最大

操作截图:

excel参数估计总结(Excel数据分析对极大似然估计的一点解释)(2)

计算公式:{=SUM(LN(NORMDIST(残差列,0,STDEV(残差列),FALSE)))}

请容我先把这个公式稍稍分解一下:

步骤一:假设残差列数据的分布形状

这里因为我们做的是个线性拟合,所以会希望残差值是随机的,没有规律的,这样的话X对Y的解释程度会比较好,而且,我们会希望这个残差数列的中心接近0,这样的话直线的截距就比较准

基于这个理由,这个公式里假设了残差是符合平均值为0的正态分布,但由于不知道整个完整分布的标准差是多大,所以直接使用了现有的所有残差的标准差

因此就有了中间那段:NORMDIST(残差,0,STDEV(残差),FALSE),意思是当我们有了一个残差值时,把它放到一个平均值为0的正态分布里看它的出现概率

excel参数估计总结(Excel数据分析对极大似然估计的一点解释)(3)

对每个残差值计算概率,就会形成一串概率值(我随便标识下,比如叫p1到pn好了)

步骤二:数学书上在这里给的定义是,似然值为所有概率值连乘起来的结果

所以按理论上来讲,这个公式该写成=PRODOUT(p1,p2,... ... pn),其中PRODOUT是连乘,p1到pn=NORMDIST(残差,0,STDEV(残差),FALSE)

但是这里有点小小的风险,就是这个数值算出来的结果有可能非常大,达到什么程度呢?可能会超过Excel一个格子能容纳的最大数值上限

不要以为这是开玩笑哦,你要是自己尝试下在一个格子里输入一串超级长又不太规律的数字,用等于号开头,可以试得出来这个软件支持的上限是多少位数字的(有图有真相)

excel参数估计总结(Excel数据分析对极大似然估计的一点解释)(4)

所以这里有个变通的方法,因为我们要的仅仅是似然值达到最大这个目的,但又不需要真的知道它的计算结果,所以,对似然值取对数(这里用了自然对数LN)就可以把它转换成一个相对小一点的数值,同时又可以把连乘转变成加和,像这样:

LN(PRODOUT(p1,p2,... ... pn))=SUM(LN(p1),LN(p2),... ...LN(pn))

为了方便,于是把它写成了数组公式的形式:{=SUM(LN(p1:pn))}

代入中间正态分布那一截就成了完整公式:

{=SUM(LN(NORMDIST(残差列,0,STDEV(残差列),FALSE)))}

---------------------------小小的分割下---------------------------

但是请注意一下,这里使用正态分布只是基于需求的一种假设,如果是其他类型的问题,比如涉及到时间序列,或者是只有Yes or No的二分类结果,在似然值估计的过程中使用泊松分布或二项分布也是可以的

这样的话,似然值取对数公式的形式也有可能变化成这样:

泊松分布:{=SUM(LN(POISSON(残差列,平均值,FALSE)))}

二项分布:{=SUM(LN(BINOMDIST (残差列,总次数,先验概率,FALSE)))}

以上仅供参考,实际应用时的可能性比我上面列出来的恐怕要多得多了,具体什么时候适合用什么公式终归是要因时因地制宜的

,