前言
正太分布是一个很重要的概率分布,又名高斯分布,在统计学、数据科学、机器学习等领域有着广泛应用。在日常生活中,人群的身高、鞋码、成年人的血压、班级的成绩、测量误差等都近似服从正太分布。一般来说,如果一个量是由许多微小的独立随机因素影响的结果,那么就可以认为这个量具有正态分布。正太分布曲线呈钟型,两头低,中间高,左右对称,故常称之为钟形曲线。
实现思路
正太分布公式:
其中
为期望,
为方差当(
,
)时,有标准正太分布公式:
标准正太分布曲线在X-Y坐标轴为一关于Y轴的对称钟型曲线,与X轴围成的面积等于1
随机概率可以通过对概率密度函数f(x)求积分而得
但是f(x)的积分初等的方法无法求得,可以通过泰勒级数分拆为多个项分步积分,再求和
泰勒公式:
故有:
t>0时,进一步有:
通过上面公式推导,可以实现将无法用初等方法求出的积分转换为无穷多个多项式的求和,n取得越大,计算结果越准确,取n=50精度已经足够,这样就可以求出标准正太分布概率密度函数积分的近似值(精确到小数点后11位)。以前高中学概率统计正太分布都是查表来得到近似值,现在我们可以写一段python代码来实现。
代码实现
import math
def cal_normal_distribution(t):
result1=0
for n in range(0,50):
result1+=(-1)**n*t**(2*n+1)/(math.factorial(n)*2**n*(2*n+1))
result2 = 0.5+(1 / math.sqrt(2 * math.pi)) * result1
print(result2)
if __name__ == '__main__':
cal_normal_distribution(3)
总结
微积分的本质就是求和,将复杂而连续的问题切分成无穷多个简单或者我们熟悉的部分,然后分别求解,最后将结果组合在一起。泰勒公式在近似计算、估计误差、函数极限的应用很多,体现了微积分“逼近法”的精髓,可以将非线性问题化为线性问题,且具有很高的精确度,是一个很好的数学工具。
最后让我回想起初中学正弦、余弦、正切,记得课本后有三角函数表可以查询,还可以用计算器来计算。那时就在思考一个问题,计算器是怎么计算出任意一个角度的正弦、余弦值呢,更一步的,是怎么实现加减乘除的。后来学了数电,知道了加法器原理,明白了加减乘除的实现过程,再结合高数学过的泰勒公式,似乎恍然大悟了,可以将三角函数转化为多项式的求和来实现。这个比较简单,就不展开详述了。