diff --git a/src/proto/algorithm_state.proto b/src/proto/algorithm_state.proto index 02f6ba07d..ad8b4e641 100644 --- a/src/proto/algorithm_state.proto +++ b/src/proto/algorithm_state.proto @@ -26,7 +26,7 @@ message AlgorithmState { LinRegUniLSState lin_reg_uni_ls_state = 4; // State of a linear regression univariate location-scale family Vector general_state = 5; // Just a vector of doubles FAState fa_state = 6; // State of a Mixture of Factor Analysers - + SRState sr_state = 7; // State of a Mixture of Beta distributions } int32 cardinality = 3; // How many observations are in this cluster } @@ -45,6 +45,7 @@ message AlgorithmState { MultiNormalIGDistribution lin_reg_uni_state = 4; NxIGDistribution nnxig_state = 5; FAPriorDistribution fa_state = 7; + GamGamDistribution gg_state = 8; } } HierarchyHypers hierarchy_hypers = 5; // The current values of the hyperparameters of the hierarchy diff --git a/src/proto/distribution.proto b/src/proto/distribution.proto index 804813f78..81db3ffc8 100644 --- a/src/proto/distribution.proto +++ b/src/proto/distribution.proto @@ -95,3 +95,10 @@ message MultiNormalIGDistribution { double shape = 3; double scale = 4; } + +message GamGamDistribution { + double a_shape = 1; + double a_rate = 2; + double b_shape = 3; + double b_rate = 4; +} \ No newline at end of file diff --git a/src/proto/hierarchy_id.proto b/src/proto/hierarchy_id.proto index 45e9b4d6d..710c2e075 100644 --- a/src/proto/hierarchy_id.proto +++ b/src/proto/hierarchy_id.proto @@ -14,4 +14,5 @@ enum HierarchyId { FA = 5; // Factor Analysers NNxIG = 6; // Normal - Normal x Inverse Gamma PythonHier = 7; // Generic python hierarchy + BetaGG = 8; // Beta - GammaGamma hierarchy } diff --git a/src/proto/hierarchy_prior.proto b/src/proto/hierarchy_prior.proto index 09558e0d5..19062a639 100644 --- a/src/proto/hierarchy_prior.proto +++ b/src/proto/hierarchy_prior.proto @@ -123,3 +123,12 @@ message PythonHierPrior{ Vector values = 1; // values are modified from python } } + +/* + * Prior for the parameters of the base measure in a Beta - GammaGamma hierarchy + */ +message GGPrior { + oneof prior { + GamGamDistribution fixed_values = 1; + } +} \ No newline at end of file diff --git a/src/proto/ls_state.proto b/src/proto/ls_state.proto index 50028afde..ed09522a1 100644 --- a/src/proto/ls_state.proto +++ b/src/proto/ls_state.proto @@ -37,3 +37,8 @@ message FAState { Matrix eta = 3; Matrix lambda = 4; } + +message SRState { + double shape = 1; + double rate = 2; +} \ No newline at end of file