Whats the Difference between probabilistic programming such as pyro and Belief networks? The Next CEO of Stack Overflow2019 Community Moderator ElectionWhat is difference between Bayesian Network and Belief Network?Bayes net inference in PyroFor every Bayesian Network, is there a Neural Network that gives the same output?What is the difference between a (dynamic) Bayes network and a HMM?What is difference between Bayesian Network and Belief Network?How to calculate the Probability for the Unconditional Node in the Bayesian Belief Network?Which learning algorithms to use in what order - dimensionality reduction, bayesian network structure, regression?How is the LSTM RNN forget gate calculated?How to find Neural Network ZOOs?what is difference between the DDQN and DQN?
When airplanes disconnect from a tanker during air to air refueling, why do they bank so sharply to the right?
ls Ordering[Ordering[list]] optimal?
How to write the block matrix in LaTex?
Is it okay to store user locations?
How easy is it to start Magic from scratch?
How to make a software documentation "officially" citable?
Does the Brexit deal have to be agreed by both Houses?
How do spells that require an ability check vs. the caster's spell save DC work?
Why doesn't a table tennis ball float on the surface? How do we calculate buoyancy here?
Apart from "berlinern", do any other German dialects have a corresponding verb?
If the heap is initialized for security, then why is the stack uninitialized?
What happens if you roll doubles 3 times then land on "Go to jail?"
Implement the Thanos sorting algorithm
Inappropriate reference requests from Journal reviewers
India just shot down a satellite from the ground. At what altitude range is the resulting debris field?
Whats the best way to handle refactoring a big file?
Rotate a column
Can a caster that cast Polymorph on themselves stop concentrating at any point even if their Int is low?
Under what conditions does the function C = f(A,B) satisfy H(C|A) = H(B)?
Is HostGator storing my password in plaintext?
How should I support this large drywall patch?
Why is Miller's case titled R (Miller)?
How do we know the LHC results are robust?
Opposite of a diet
Whats the Difference between probabilistic programming such as pyro and Belief networks?
The Next CEO of Stack Overflow2019 Community Moderator ElectionWhat is difference between Bayesian Network and Belief Network?Bayes net inference in PyroFor every Bayesian Network, is there a Neural Network that gives the same output?What is the difference between a (dynamic) Bayes network and a HMM?What is difference between Bayesian Network and Belief Network?How to calculate the Probability for the Unconditional Node in the Bayesian Belief Network?Which learning algorithms to use in what order - dimensionality reduction, bayesian network structure, regression?How is the LSTM RNN forget gate calculated?How to find Neural Network ZOOs?what is difference between the DDQN and DQN?
$begingroup$
I heard about ubers pyro and stumbled upon this Wikipedia Artikel
As I understand a bayesian network is the same as a belief netLink to datascience StackExchange post
Does someone know how these are related?
deep-learning bayesian-networks probabilistic-programming
$endgroup$
add a comment |
$begingroup$
I heard about ubers pyro and stumbled upon this Wikipedia Artikel
As I understand a bayesian network is the same as a belief netLink to datascience StackExchange post
Does someone know how these are related?
deep-learning bayesian-networks probabilistic-programming
$endgroup$
add a comment |
$begingroup$
I heard about ubers pyro and stumbled upon this Wikipedia Artikel
As I understand a bayesian network is the same as a belief netLink to datascience StackExchange post
Does someone know how these are related?
deep-learning bayesian-networks probabilistic-programming
$endgroup$
I heard about ubers pyro and stumbled upon this Wikipedia Artikel
As I understand a bayesian network is the same as a belief netLink to datascience StackExchange post
Does someone know how these are related?
deep-learning bayesian-networks probabilistic-programming
deep-learning bayesian-networks probabilistic-programming
asked Dec 11 '18 at 15:06
Alexander VocaetAlexander Vocaet
133
133
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
$begingroup$
A probabilistic program and a Bayesian Network are both ways of specifying probabilistic models. Any model that can be specified as a Bayesian Network can also be specified by a probabilistic program, in fact by a probabilistic program that has no control flow. Roughly
Bayes Nets == Straight line Probabilistic Programs
For example consider the Bayes Net
This Bayes Net is equivalent to the probabilistic program (in Pyro)
def model():
p_rain = pyro.param("p_rain", torch.tensor(0.2), constraint=unit_interval)
p_sprinkler = pyro.param("p_sprinkler", torch.tensor([0.4, 0.01]),
constraint=unit_interval)
p_wet = pyro.param("p_wet", torch.tensor([[0.0, 0.9], [0.8, 0.99]]),
constraint=unit_interval)
rain = pyro.sample("rain", Bernoulli(p_rain))
sprinkler = pyro.sample("sprinkler",
Bernoulli(p_sprinkler[rain.long()]))
wet = pyro.sample("wet", Bernoulli(p_wet[rain.long(), sprinkler.long()]))
More generally, probabilistic programs can contain control flow (if
, for
, while
) and recursion. Some of these extra features are expressed in extensions to Bayes nets, e.g. some for
loops can be expressed as plates in Bayes Nets.
$endgroup$
1
$begingroup$
What's the point ofp_rain
? It's never used. Should it be removed, sincerain
defined further down seems to be the important version.
$endgroup$
– beldaz
Mar 24 at 23:55
add a comment |
Your Answer
StackExchange.ifUsing("editor", function ()
return StackExchange.using("mathjaxEditing", function ()
StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix)
StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
);
);
, "mathjax-editing");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "557"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fdatascience.stackexchange.com%2fquestions%2f42458%2fwhats-the-difference-between-probabilistic-programming-such-as-pyro-and-belief-n%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
$begingroup$
A probabilistic program and a Bayesian Network are both ways of specifying probabilistic models. Any model that can be specified as a Bayesian Network can also be specified by a probabilistic program, in fact by a probabilistic program that has no control flow. Roughly
Bayes Nets == Straight line Probabilistic Programs
For example consider the Bayes Net
This Bayes Net is equivalent to the probabilistic program (in Pyro)
def model():
p_rain = pyro.param("p_rain", torch.tensor(0.2), constraint=unit_interval)
p_sprinkler = pyro.param("p_sprinkler", torch.tensor([0.4, 0.01]),
constraint=unit_interval)
p_wet = pyro.param("p_wet", torch.tensor([[0.0, 0.9], [0.8, 0.99]]),
constraint=unit_interval)
rain = pyro.sample("rain", Bernoulli(p_rain))
sprinkler = pyro.sample("sprinkler",
Bernoulli(p_sprinkler[rain.long()]))
wet = pyro.sample("wet", Bernoulli(p_wet[rain.long(), sprinkler.long()]))
More generally, probabilistic programs can contain control flow (if
, for
, while
) and recursion. Some of these extra features are expressed in extensions to Bayes nets, e.g. some for
loops can be expressed as plates in Bayes Nets.
$endgroup$
1
$begingroup$
What's the point ofp_rain
? It's never used. Should it be removed, sincerain
defined further down seems to be the important version.
$endgroup$
– beldaz
Mar 24 at 23:55
add a comment |
$begingroup$
A probabilistic program and a Bayesian Network are both ways of specifying probabilistic models. Any model that can be specified as a Bayesian Network can also be specified by a probabilistic program, in fact by a probabilistic program that has no control flow. Roughly
Bayes Nets == Straight line Probabilistic Programs
For example consider the Bayes Net
This Bayes Net is equivalent to the probabilistic program (in Pyro)
def model():
p_rain = pyro.param("p_rain", torch.tensor(0.2), constraint=unit_interval)
p_sprinkler = pyro.param("p_sprinkler", torch.tensor([0.4, 0.01]),
constraint=unit_interval)
p_wet = pyro.param("p_wet", torch.tensor([[0.0, 0.9], [0.8, 0.99]]),
constraint=unit_interval)
rain = pyro.sample("rain", Bernoulli(p_rain))
sprinkler = pyro.sample("sprinkler",
Bernoulli(p_sprinkler[rain.long()]))
wet = pyro.sample("wet", Bernoulli(p_wet[rain.long(), sprinkler.long()]))
More generally, probabilistic programs can contain control flow (if
, for
, while
) and recursion. Some of these extra features are expressed in extensions to Bayes nets, e.g. some for
loops can be expressed as plates in Bayes Nets.
$endgroup$
1
$begingroup$
What's the point ofp_rain
? It's never used. Should it be removed, sincerain
defined further down seems to be the important version.
$endgroup$
– beldaz
Mar 24 at 23:55
add a comment |
$begingroup$
A probabilistic program and a Bayesian Network are both ways of specifying probabilistic models. Any model that can be specified as a Bayesian Network can also be specified by a probabilistic program, in fact by a probabilistic program that has no control flow. Roughly
Bayes Nets == Straight line Probabilistic Programs
For example consider the Bayes Net
This Bayes Net is equivalent to the probabilistic program (in Pyro)
def model():
p_rain = pyro.param("p_rain", torch.tensor(0.2), constraint=unit_interval)
p_sprinkler = pyro.param("p_sprinkler", torch.tensor([0.4, 0.01]),
constraint=unit_interval)
p_wet = pyro.param("p_wet", torch.tensor([[0.0, 0.9], [0.8, 0.99]]),
constraint=unit_interval)
rain = pyro.sample("rain", Bernoulli(p_rain))
sprinkler = pyro.sample("sprinkler",
Bernoulli(p_sprinkler[rain.long()]))
wet = pyro.sample("wet", Bernoulli(p_wet[rain.long(), sprinkler.long()]))
More generally, probabilistic programs can contain control flow (if
, for
, while
) and recursion. Some of these extra features are expressed in extensions to Bayes nets, e.g. some for
loops can be expressed as plates in Bayes Nets.
$endgroup$
A probabilistic program and a Bayesian Network are both ways of specifying probabilistic models. Any model that can be specified as a Bayesian Network can also be specified by a probabilistic program, in fact by a probabilistic program that has no control flow. Roughly
Bayes Nets == Straight line Probabilistic Programs
For example consider the Bayes Net
This Bayes Net is equivalent to the probabilistic program (in Pyro)
def model():
p_rain = pyro.param("p_rain", torch.tensor(0.2), constraint=unit_interval)
p_sprinkler = pyro.param("p_sprinkler", torch.tensor([0.4, 0.01]),
constraint=unit_interval)
p_wet = pyro.param("p_wet", torch.tensor([[0.0, 0.9], [0.8, 0.99]]),
constraint=unit_interval)
rain = pyro.sample("rain", Bernoulli(p_rain))
sprinkler = pyro.sample("sprinkler",
Bernoulli(p_sprinkler[rain.long()]))
wet = pyro.sample("wet", Bernoulli(p_wet[rain.long(), sprinkler.long()]))
More generally, probabilistic programs can contain control flow (if
, for
, while
) and recursion. Some of these extra features are expressed in extensions to Bayes nets, e.g. some for
loops can be expressed as plates in Bayes Nets.
edited 56 mins ago
answered Jan 11 at 2:36
FritzFritz
1162
1162
1
$begingroup$
What's the point ofp_rain
? It's never used. Should it be removed, sincerain
defined further down seems to be the important version.
$endgroup$
– beldaz
Mar 24 at 23:55
add a comment |
1
$begingroup$
What's the point ofp_rain
? It's never used. Should it be removed, sincerain
defined further down seems to be the important version.
$endgroup$
– beldaz
Mar 24 at 23:55
1
1
$begingroup$
What's the point of
p_rain
? It's never used. Should it be removed, since rain
defined further down seems to be the important version.$endgroup$
– beldaz
Mar 24 at 23:55
$begingroup$
What's the point of
p_rain
? It's never used. Should it be removed, since rain
defined further down seems to be the important version.$endgroup$
– beldaz
Mar 24 at 23:55
add a comment |
Thanks for contributing an answer to Data Science Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
Use MathJax to format equations. MathJax reference.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fdatascience.stackexchange.com%2fquestions%2f42458%2fwhats-the-difference-between-probabilistic-programming-such-as-pyro-and-belief-n%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown