Proof of Approximate / Exact Bayesian Computation












5














the ABC algorithm is given as




  1. Draw $theta sim pi(theta)$

  2. Simulate data $X sim pi(x | theta)$

  3. Accept $theta$ if $rho(X, D) < varepsilon$


where $pi(theta)$ is the prior, $pi(x | theta)$ is the likelihood, $rho(cdot | cdot)$ is some distance measure, $D$ is the observed data and $varepsilon$ is the tolerance that represents a trade off between accuracy and computability.



Generally, in papers that I have seen on this, a proof is given where it states we actually sample from $pi_{varepsilon} = pi(theta | rho(X, D) < varepsilon)$ and then if $varepsilon to 0$, this converges to the true posterior $pi(theta | D)$.



If in Step 3, we had



3*. Accept $theta$ if $X = D$



I was wondering if anyone knew how to prove that in this new algorithm, we sample from the true posterior? So there is no $varepsilon to 0$ argument?



Thanks in advance to anyone that can offer some help!










share|cite|improve this question



























    5














    the ABC algorithm is given as




    1. Draw $theta sim pi(theta)$

    2. Simulate data $X sim pi(x | theta)$

    3. Accept $theta$ if $rho(X, D) < varepsilon$


    where $pi(theta)$ is the prior, $pi(x | theta)$ is the likelihood, $rho(cdot | cdot)$ is some distance measure, $D$ is the observed data and $varepsilon$ is the tolerance that represents a trade off between accuracy and computability.



    Generally, in papers that I have seen on this, a proof is given where it states we actually sample from $pi_{varepsilon} = pi(theta | rho(X, D) < varepsilon)$ and then if $varepsilon to 0$, this converges to the true posterior $pi(theta | D)$.



    If in Step 3, we had



    3*. Accept $theta$ if $X = D$



    I was wondering if anyone knew how to prove that in this new algorithm, we sample from the true posterior? So there is no $varepsilon to 0$ argument?



    Thanks in advance to anyone that can offer some help!










    share|cite|improve this question

























      5












      5








      5


      2





      the ABC algorithm is given as




      1. Draw $theta sim pi(theta)$

      2. Simulate data $X sim pi(x | theta)$

      3. Accept $theta$ if $rho(X, D) < varepsilon$


      where $pi(theta)$ is the prior, $pi(x | theta)$ is the likelihood, $rho(cdot | cdot)$ is some distance measure, $D$ is the observed data and $varepsilon$ is the tolerance that represents a trade off between accuracy and computability.



      Generally, in papers that I have seen on this, a proof is given where it states we actually sample from $pi_{varepsilon} = pi(theta | rho(X, D) < varepsilon)$ and then if $varepsilon to 0$, this converges to the true posterior $pi(theta | D)$.



      If in Step 3, we had



      3*. Accept $theta$ if $X = D$



      I was wondering if anyone knew how to prove that in this new algorithm, we sample from the true posterior? So there is no $varepsilon to 0$ argument?



      Thanks in advance to anyone that can offer some help!










      share|cite|improve this question













      the ABC algorithm is given as




      1. Draw $theta sim pi(theta)$

      2. Simulate data $X sim pi(x | theta)$

      3. Accept $theta$ if $rho(X, D) < varepsilon$


      where $pi(theta)$ is the prior, $pi(x | theta)$ is the likelihood, $rho(cdot | cdot)$ is some distance measure, $D$ is the observed data and $varepsilon$ is the tolerance that represents a trade off between accuracy and computability.



      Generally, in papers that I have seen on this, a proof is given where it states we actually sample from $pi_{varepsilon} = pi(theta | rho(X, D) < varepsilon)$ and then if $varepsilon to 0$, this converges to the true posterior $pi(theta | D)$.



      If in Step 3, we had



      3*. Accept $theta$ if $X = D$



      I was wondering if anyone knew how to prove that in this new algorithm, we sample from the true posterior? So there is no $varepsilon to 0$ argument?



      Thanks in advance to anyone that can offer some help!







      bayesian abc






      share|cite|improve this question













      share|cite|improve this question











      share|cite|improve this question




      share|cite|improve this question










      asked Dec 3 '18 at 13:24









      charlie_wg

      335




      335






















          1 Answer
          1






          active

          oldest

          votes


















          6














          This case is the original version of the algorithm, as in Rubin (1984) and Tavaré et al. (1997). Assuming that $$mathbb{P}_theta(X=D)>0$$ the values of $theta$ that come out of the algorithm are distributed from a distribution with density proportional to
          $$pi(theta) times mathbb{P}_theta(X=D)$$
          since the algorithm generates the pair $(theta,mathbb{I}_{X=D})$ with joint distribution
          $$pi(theta) times mathbb{P}_theta(X=D)^{mathbb{I}_{X=D}} times
          mathbb{P}_theta(Xne D)^{mathbb{I}_{Xne D}}$$

          Conditioning on $mathbb{I}_{X=D}=1$ leads to
          $$theta|mathbb{I}_{X=D}=1 sim pi(theta) times mathbb{P}_theta(X=D)Big/int pi(theta) times mathbb{P}_theta(X=D) ,text{d}theta$$
          which is the posterior distribution.



          On the side, I gave this very proof in class a few hours ago!






          share|cite|improve this answer

















          • 1




            Thanks Xi'an! If this was extended outside of the Bayesian context, so for arbitrary functions $f_{1}(x)$ and $f_{2}(x)$, does this work to find samples from $f propto f_{1}f_{2}$?
            – charlie_wg
            Dec 3 '18 at 16:04






          • 1




            Yes, indeed!, this is actually the most rudimentary form of acceptance-rejection: simulate $X$ from $f_1$ and accept if the realisation of $Ysim f_2$ is equal to the realisation of $X$.
            – Xi'an
            Dec 3 '18 at 18:28











          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: "65"
          };
          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
          });


          }
          });














          draft saved

          draft discarded


















          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstats.stackexchange.com%2fquestions%2f380076%2fproof-of-approximate-exact-bayesian-computation%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









          6














          This case is the original version of the algorithm, as in Rubin (1984) and Tavaré et al. (1997). Assuming that $$mathbb{P}_theta(X=D)>0$$ the values of $theta$ that come out of the algorithm are distributed from a distribution with density proportional to
          $$pi(theta) times mathbb{P}_theta(X=D)$$
          since the algorithm generates the pair $(theta,mathbb{I}_{X=D})$ with joint distribution
          $$pi(theta) times mathbb{P}_theta(X=D)^{mathbb{I}_{X=D}} times
          mathbb{P}_theta(Xne D)^{mathbb{I}_{Xne D}}$$

          Conditioning on $mathbb{I}_{X=D}=1$ leads to
          $$theta|mathbb{I}_{X=D}=1 sim pi(theta) times mathbb{P}_theta(X=D)Big/int pi(theta) times mathbb{P}_theta(X=D) ,text{d}theta$$
          which is the posterior distribution.



          On the side, I gave this very proof in class a few hours ago!






          share|cite|improve this answer

















          • 1




            Thanks Xi'an! If this was extended outside of the Bayesian context, so for arbitrary functions $f_{1}(x)$ and $f_{2}(x)$, does this work to find samples from $f propto f_{1}f_{2}$?
            – charlie_wg
            Dec 3 '18 at 16:04






          • 1




            Yes, indeed!, this is actually the most rudimentary form of acceptance-rejection: simulate $X$ from $f_1$ and accept if the realisation of $Ysim f_2$ is equal to the realisation of $X$.
            – Xi'an
            Dec 3 '18 at 18:28
















          6














          This case is the original version of the algorithm, as in Rubin (1984) and Tavaré et al. (1997). Assuming that $$mathbb{P}_theta(X=D)>0$$ the values of $theta$ that come out of the algorithm are distributed from a distribution with density proportional to
          $$pi(theta) times mathbb{P}_theta(X=D)$$
          since the algorithm generates the pair $(theta,mathbb{I}_{X=D})$ with joint distribution
          $$pi(theta) times mathbb{P}_theta(X=D)^{mathbb{I}_{X=D}} times
          mathbb{P}_theta(Xne D)^{mathbb{I}_{Xne D}}$$

          Conditioning on $mathbb{I}_{X=D}=1$ leads to
          $$theta|mathbb{I}_{X=D}=1 sim pi(theta) times mathbb{P}_theta(X=D)Big/int pi(theta) times mathbb{P}_theta(X=D) ,text{d}theta$$
          which is the posterior distribution.



          On the side, I gave this very proof in class a few hours ago!






          share|cite|improve this answer

















          • 1




            Thanks Xi'an! If this was extended outside of the Bayesian context, so for arbitrary functions $f_{1}(x)$ and $f_{2}(x)$, does this work to find samples from $f propto f_{1}f_{2}$?
            – charlie_wg
            Dec 3 '18 at 16:04






          • 1




            Yes, indeed!, this is actually the most rudimentary form of acceptance-rejection: simulate $X$ from $f_1$ and accept if the realisation of $Ysim f_2$ is equal to the realisation of $X$.
            – Xi'an
            Dec 3 '18 at 18:28














          6












          6








          6






          This case is the original version of the algorithm, as in Rubin (1984) and Tavaré et al. (1997). Assuming that $$mathbb{P}_theta(X=D)>0$$ the values of $theta$ that come out of the algorithm are distributed from a distribution with density proportional to
          $$pi(theta) times mathbb{P}_theta(X=D)$$
          since the algorithm generates the pair $(theta,mathbb{I}_{X=D})$ with joint distribution
          $$pi(theta) times mathbb{P}_theta(X=D)^{mathbb{I}_{X=D}} times
          mathbb{P}_theta(Xne D)^{mathbb{I}_{Xne D}}$$

          Conditioning on $mathbb{I}_{X=D}=1$ leads to
          $$theta|mathbb{I}_{X=D}=1 sim pi(theta) times mathbb{P}_theta(X=D)Big/int pi(theta) times mathbb{P}_theta(X=D) ,text{d}theta$$
          which is the posterior distribution.



          On the side, I gave this very proof in class a few hours ago!






          share|cite|improve this answer












          This case is the original version of the algorithm, as in Rubin (1984) and Tavaré et al. (1997). Assuming that $$mathbb{P}_theta(X=D)>0$$ the values of $theta$ that come out of the algorithm are distributed from a distribution with density proportional to
          $$pi(theta) times mathbb{P}_theta(X=D)$$
          since the algorithm generates the pair $(theta,mathbb{I}_{X=D})$ with joint distribution
          $$pi(theta) times mathbb{P}_theta(X=D)^{mathbb{I}_{X=D}} times
          mathbb{P}_theta(Xne D)^{mathbb{I}_{Xne D}}$$

          Conditioning on $mathbb{I}_{X=D}=1$ leads to
          $$theta|mathbb{I}_{X=D}=1 sim pi(theta) times mathbb{P}_theta(X=D)Big/int pi(theta) times mathbb{P}_theta(X=D) ,text{d}theta$$
          which is the posterior distribution.



          On the side, I gave this very proof in class a few hours ago!







          share|cite|improve this answer












          share|cite|improve this answer



          share|cite|improve this answer










          answered Dec 3 '18 at 15:17









          Xi'an

          53.5k689346




          53.5k689346








          • 1




            Thanks Xi'an! If this was extended outside of the Bayesian context, so for arbitrary functions $f_{1}(x)$ and $f_{2}(x)$, does this work to find samples from $f propto f_{1}f_{2}$?
            – charlie_wg
            Dec 3 '18 at 16:04






          • 1




            Yes, indeed!, this is actually the most rudimentary form of acceptance-rejection: simulate $X$ from $f_1$ and accept if the realisation of $Ysim f_2$ is equal to the realisation of $X$.
            – Xi'an
            Dec 3 '18 at 18:28














          • 1




            Thanks Xi'an! If this was extended outside of the Bayesian context, so for arbitrary functions $f_{1}(x)$ and $f_{2}(x)$, does this work to find samples from $f propto f_{1}f_{2}$?
            – charlie_wg
            Dec 3 '18 at 16:04






          • 1




            Yes, indeed!, this is actually the most rudimentary form of acceptance-rejection: simulate $X$ from $f_1$ and accept if the realisation of $Ysim f_2$ is equal to the realisation of $X$.
            – Xi'an
            Dec 3 '18 at 18:28








          1




          1




          Thanks Xi'an! If this was extended outside of the Bayesian context, so for arbitrary functions $f_{1}(x)$ and $f_{2}(x)$, does this work to find samples from $f propto f_{1}f_{2}$?
          – charlie_wg
          Dec 3 '18 at 16:04




          Thanks Xi'an! If this was extended outside of the Bayesian context, so for arbitrary functions $f_{1}(x)$ and $f_{2}(x)$, does this work to find samples from $f propto f_{1}f_{2}$?
          – charlie_wg
          Dec 3 '18 at 16:04




          1




          1




          Yes, indeed!, this is actually the most rudimentary form of acceptance-rejection: simulate $X$ from $f_1$ and accept if the realisation of $Ysim f_2$ is equal to the realisation of $X$.
          – Xi'an
          Dec 3 '18 at 18:28




          Yes, indeed!, this is actually the most rudimentary form of acceptance-rejection: simulate $X$ from $f_1$ and accept if the realisation of $Ysim f_2$ is equal to the realisation of $X$.
          – Xi'an
          Dec 3 '18 at 18:28


















          draft saved

          draft discarded




















































          Thanks for contributing an answer to Cross Validated!


          • 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.





          Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


          Please pay close attention to the following guidance:


          • 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.


          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstats.stackexchange.com%2fquestions%2f380076%2fproof-of-approximate-exact-bayesian-computation%23new-answer', 'question_page');
          }
          );

          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







          Popular posts from this blog

          How to change which sound is reproduced for terminal bell?

          Title Spacing in Bjornstrup Chapter, Removing Chapter Number From Contents

          Can I use Tabulator js library in my java Spring + Thymeleaf project?