1. A method for modeling a data generating process, comprising: generating a dyadic Bayesian model comprising a pair of probabilistic functions representing a prior distribution and a sampling distribution; and modeling a data generating process based on the dyadic Bayesian model using observed data, wherein modeling the data generating process further comprises: generating a learner object for the dyadic Bayesian model; training the dyadic Bayesian model with the learner object based on the observed data to produce a trained dyadic Bayesian model; generating a posterior distribution over parameters based on the trained dyadic Bayesian model; generating a posterior predictive distribution based on the posterior distribution; and predicting an outcome of observable variables based on the posterior predictive distribution.
1. A method for modeling a data generating process, comprising: generating a dyadic Bayesian model comprising a pair of probabilistic functions representing a prior distribution and a sampling distribution; and modeling a data generating process based on the dyadic Bayesian model using observed data, wherein modeling the data generating process further comprises: generating a learner object for the dyadic Bayesian model; training the dyadic Bayesian model with the learner object based on the observed data to produce a trained dyadic Bayesian model; generating a posterior distribution over parameters based on the trained dyadic Bayesian model; generating a posterior predictive distribution based on the posterior distribution; and predicting an outcome of observable variables based on the posterior predictive distribution. 2. The method of claim 1 , comprising: generating a sampler object for the dyadic Bayesian model; and using the sampler object to test the learner object by computing synthetic data for the dyadic Bayesian model and using the synthetic data to judge an accuracy of the posterior distribution or the posterior predictive distribution.