python概率编程_Python中的概率编程

python概率编程

Learn about probabilistic programming in this guest post by Osvaldo Martin, a researcher at The National Scientific and Technical Research Council (CONICET).

美国国家科学技术研究委员会(CONICET)的研究人员Osvaldo Martin在本来宾文章中了解了概率编程。

贝叶斯推理 (Bayesian Inference)

Bayesian statistics is conceptually very simple; we have the knowns and the unknowns; we use Bayes’ theorem to condition the latter on the former. If we are lucky, this process will reduce the uncertainty about the unknowns.

贝叶斯统计在概念上非常简单; 我们拥有的已知, 和未知 ; 我们使用贝叶斯定理将后者定为前者。 如果幸运的话,这个过程将减少未知数的不确定性。

Generally, we refer to the knowns as data and treat it like a constant, and the unknowns as parameters and treat them as probability distributions. In more formal terms, we assign probability distributions to unknown quantities. Then, we use Bayes’ theorem to transform the prior probability distribution

一般情况下,我们指的的已知, 数据和把它像一个常数, 未知作为参数 ,并把它们作为概率分布。 用更正式的术语来说,我们将概率分布分配给未知数量。 然后,我们使用贝叶斯定理转换先验概率分布

 

into a posterior distribution:

变成后验分布:

 

Although conceptually simple, fully probabilistic models often lead to analytically intractable expressions. For many years, this was a real problem and was probably one of the main issues that hindered the wide adoption of Bayesian methods.

尽管从概念上讲很简单,但是完全概率模型通常会导致分析上难以处理的表达式。 多年来,这是一个实际问题,并且可能是阻碍贝叶斯方法广泛采用的主要问题之一。

The arrival of the computational era and the development of numerical methods that, at least in principle, can be used to solve any inference problem, has dramatically transformed the Bayesian data analysis practice.

计算时代的到来以及数值方法的发展,至少在原则上可以用来解决任何推理问题,这些都极大地改变了贝叶斯数据分析的实践。

概率编程:推理按钮 (Probabilistic Programming: the Inference-Button)

We can think of these numerical methods as universal inference engines, or as Thomas Wiecki, the core developer of PyMC3, likes to call it, the inference-button. The possibility of automating the inference process has led to the development of probabilistic programming languages (PPL), which allow for a clear separation between model creation and inference.

我们可以将这些数值方法视为通用推理引擎,或者PyMC3的核心开发人员Thomas Wiecki喜欢将其称为推理按钮。 自动化推理过程的可能性导致了概率编程语言PPL )的发展,该模型允许在模型创建和推理之间进行清晰的分离。

In the PPL framework, users specify a full probabilistic model by writing a few lines of code, and then inference follows automatically. It is expected that probabilistic programming will have a major impact on data science and other disciplines by enabling practitioners to build complex probabilistic models in a less time-consuming and less error-prone way.

在PPL框架中,用户通过编写几行代码来指定完整的概率模型,然后自动进行推理。 期望概率编程将通过使从业人员以更少的时间消耗和更少的错误率构建复杂的概率模型,从而对数据科学和其他学科产生重大影响。

I think one good analogy for the impact that programming languages can have on scientific computing is the introduction of the Fortran programming language more than six decades ago. While Fortran has lost its shine nowadays, at one time, it was considered to be very revolutionary.

我认为可以很好地类比编程

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值