美文网首页
计算机科学与Python编程导论 第16/18/19/20章

计算机科学与Python编程导论 第16/18/19/20章

作者: S_Valley_DiDa | 来源:发表于2018-08-13 21:34 被阅读0次

一、基本概念

1)蒙特卡罗模拟

蒙特卡罗模拟用于求事件的近似概率,它多次执行同一模拟,然后将结果进行平均。

2)投资回报率公式定义:

投资回报率

3)性能出现问题时,经常会采用查表法。查表法是以空间换时间这种通用思想的一个典型例子。散列表越大,碰撞就越少,平均查找时间就越少。

4)拟合指数分布数据

polyfit使用线性回归找出一个给定阶数的多项式,作为特定数据的最优最小二乘拟合。如果数据可以直接由多项式进行近似,那么这种方法效果很好。

将现有数据划分为训练集和保留集,保留集将来会作为测试集使用,然后再进行一系列实验。不考虑保留集,我们先建立一个可以解释训练集的模型。多数情况下,相对于保留集,这种模型会对训练集拟合得更好。但如果这个模型的确很好,那么它对保留集也应该拟合得很好,否则这个模型就应该被丢弃。

交叉验证:使用从原始数据中随机选择的多个子集来训练模型,然后检查这些模型彼此之间的相似程度。如果这些模型非常相似,就说明模型是令人满意的。

5)P值

P值即概率,反映某一事件发生的可能性大小。统计学根据显著性检验方法所得到的P 值,一般以P < 0.05 为有统计学差异, P<0.01 为有显著统计学差异,P<0.001为有极其显著的统计学差异。其含义是样本间的差异由抽样误差所致的概率小于0.05 、0.01、0.001。实际上,P值不能赋予数据任何重要性,只能说明某事件发生的几率。统计结果中显示Pr > F,也可写成Pr( >F),P = P{ F0.05 > F}或P = P{ F0.01 > F}。

6)显著性检验

显著性检验(significance test)就是事先对总体(随机变量)的参数或总体分布形式做出一个假设,然后利用样本信息来判断这个假设(备择假设)是否合理,即判断总体的真实情况与原假设是否有显著性差异。或者说,显著性检验要判断样本与我们对总体所做的假设之间的差异是纯属机会变异,还是由我们所做的假设与总体真实情况之间不一致所引起的。 显著性检验是针对我们对总体所做的假设做检验,其原理就是“小概率事件实际不可能性原理”来接受或否定假设。

eg:双样本的t检验,参考学习下列链接:

基于python的显著性检验 - 简书

7)条件概率

定义 如果A和B是两个事件,且P(B)≠0。那么B条件下,A的条件概率为:

条件概率公式

8)贝叶斯统计

联合概率可交换,即 P(A and B)=P(B and A)

对于任意事件A、B都独立,因此联合概率P(A and B)=P(B)P(A|B)

两步骤执行交换,即P(B and A)=P(A)P(B|A)

因为步骤1等式,有如下等式成立P(B)P(A|B)=P(A)P(B|A)

最后等式两端除以P(B),得到P(A|B)=P(A)P(B|A)/P(B)

二、练习

1)模拟一个双股儿游戏

双股儿游戏

2)用Python实现的一个简单的贝叶斯的脚本

首先定义Bayes类,初始化创建一个dict类型的容器container。该容器是为了储存贝叶斯各项信息。key键存储假设,value值存储概率Set方法是给容器添加先验假设及先验概率Mult方法:根据key查找到先验概率,并更新概率。Normalize方法:归一化。Prob方法:返回某一事件的概率

实现贝叶斯的脚本简单案例

3)

正态分布.png

4)

非正态分布&非均匀分布

相关文章

网友评论

      本文标题:计算机科学与Python编程导论 第16/18/19/20章

      本文链接:https://www.haomeiwen.com/subject/fzcpbftx.html