本港台开奖现场直播 j2开奖直播报码现场
当前位置: 新闻频道 > IT新闻 >

码报:【高能】用PyMC3进行贝叶斯统计分析(代码+实例

时间:2017-07-01 11:54来源:本港台现场报码 作者:118KJ 点击:
关键字 全网搜索 最新排名 『量化投资』:排名第一 『量 化』:排名第一 『机器学习』:排名第四 我们会再接再厉 成为全网 优质的 金融、技术类公众号 问题类型1:参数估计 真实

关键字全网搜索最新排名

『量化投资』:排名第一

『量 化』:排名第一

『机器学习』:排名第四

我们会再接再厉

成为全网优质的金融、技术类公众号

码报:【高能】用PyMC3进行贝叶斯统计分析(代码+实例

问题类型1:参数估计

真实值是否等于X?

给出数据,对于参数,可能的值的概率分布是多少?

例子1:抛硬币问题

硬币扔了n次,正面朝上是h次。

参数问题

想知道 p 的可能性。给定 n 扔的次数和 h 正面朝上次数,p 的值很可能接近 0.5,直播,比如说在 [0.48,0.52]?

说明

参数的先验信念:p∼Uniform(0,1)

似然函数:data∼Bernoulli(p)

码报:【高能】用PyMC3进行贝叶斯统计分析(代码+实例

importpymc3 aspm

importnumpy.random asnpr

importnumpy asnp

importmatplotlib.pyplot asplt

importmatplotlib asmpl

fromcollections importCounter

importseaborn assnssns.set_style( 'white')sns.set_context( 'poster')%load_ext autoreload%autoreload 2

%matplotlib inline%config InlineBackend.figure_format = 'retina'

importwarningswarnings.filterwarnings( 'ignore')

fromrandom importshuffletotal = 30

n_heads = 11

n_tails = total - n_headstosses = [ 1] * n_heads + [ 0] * n_tailsshuffle(tosses)

数据

defplot_coins():fig = plt.figure() ax = fig.add_subplot( 1, 1, 1) ax.bar(list(Counter(tosses).keys()), list(Counter(tosses).values())) ax.set_xticks([ 0, 1]) ax.set_xticklabels([ 'tails', 'heads']) ax.set_ylim( 0, 20) ax.set_yticks(np.arange( 0, 21, 5))

returnfigfig = plot_coins()plt.show()

码报:【高能】用PyMC3进行贝叶斯统计分析(代码+实例

# Context manager syntax. `coin_model` is **just**

# a placeholder

withpm.Model() ascoin_model: # Distributions are PyMC3 objects.# Specify prior using Uniform object.p_prior = pm.Uniform( 'p', 0, 1) # Specify likelihood using Bernoulli object.like = pm.Bernoulli( 'likelihood', p=p_prior, observed=tosses) # "observed=data" is key# for likelihood.

MCMC Inference Button (TM)

withcoin_model:

# don't worry about this:step = pm.Metropolis()

# focus on this, the Inference Button:coin_trace = pm.sample( 2000, step=step) 结果pm.traceplot(coin_trace)plt.show()

码报:【高能】用PyMC3进行贝叶斯统计分析(代码+实例

pm.plot_posterior(coin_trace[100:], color='#87ceeb',

rope=[ 0.48, 0.52], point_estimate= 'mean', ref_val= 0.5)plt.show()

码报:【高能】用PyMC3进行贝叶斯统计分析(代码+实例

95% 的 HPD包括 ROPE

获取更多的数据!

模式

使用统计分布参数化问题

证明我们的模型结构

在PyMC3中编写模型,Inference ButtonTM

基于后验分布进行解释

(可选) 新增信息,修改模型结构

例子2:化学活性问题

我有一个新开发的分子X; X在阻止流感方面的效果有多好?

实验

测试X的浓度范围,测量流感活动

计算 IC50:导致病毒复制率减半的X浓度。

数据

码报:【高能】用PyMC3进行贝叶斯统计分析(代码+实例

(责任编辑:本港台直播)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
栏目列表
推荐内容