Page 1 of 1

HB model specification

Posted: 13 Jun 2024, 04:41
by siqifeng
Hi!

I have a question about the hierarchical Bayes (HB) model specification. On the webpage of example files and data, Hybrid_with_OL_and_MMNL_bayesian seems to be the counterpart of Hybrid_with_OL_and_MMNL, but the former specifies a single random beta:

Code: Select all

b_brand_Artemis = b_brand_Artemis_base + gamma_...
whereas the latter specifies a “mu + sigma*xi” structure:

Code: Select all

randcoeff[["b_brand_Artemis"]] = mu_brand_Artemis + sig_brand_Artemis*xi_Artemis + gamma_...
I wonder if we can use this structure (non-random mu and sigma, and a random xi) when we specify the HB model. I think one advantage is that we can easily constrain the parameter scale using fixedA and fixedD, and it might be easier to interpret the estimation results (like a frequentist MMNL model).

Thank you!

Re: HB model specification

Posted: 13 Jun 2024, 08:42
by stephanehess
Hi

I invite you to have a detailed look at the manual. The section apollo_randCoeff is only used with classical estimation. With Bayesian estimation, the syntax is different, as explained in the manual. apollo_randCoeff is need as classical estimation relies on monte carlo simulation

Stephane

Re: HB model specification

Posted: 13 Jun 2024, 21:52
by siqifeng
Thank you for the response, Stephane! I did read the manual carefully, but I'm not familiar enough with Bayesian estimation.

Siqi

Re: HB model specification

Posted: 15 Jun 2024, 07:04
by stephanehess
Siqi

maybe I don't completely understand your question then.

In the HB model you are referring to, we have three random parameters, namely b_brand_Artemis_base, b_brand_Novum_base and eta. These are specified as following Normal distributions (see hbDist).

The classically estimated model also allows for three random components, namely the random disturbance in the latent variable (see eta in the code below)

Code: Select all

randcoeff[["LV"]]              = gamma_LV_reg_user*regular_user + gamma_LV_university*university_educated + gamma_LV_age_50*over_50 + eta


and the randomness added to the two branded options, see sig in the following

Code: Select all

randcoeff[["b_brand_Artemis"]] = mu_brand_Artemis + sig_brand_Artemis*xi_Artemis + gamma_Artemis_reg_user*regular_user + gamma_Artemis_university*university_educated + gamma_Artemis_age_50*over_50  
  randcoeff[["b_brand_Novum"]]   = mu_brand_Novum   + sig_brand_Novum  *xi_Novum   + gamma_Novum_reg_user  *regular_user + gamma_Novum_university  *university_educated + gamma_Novum_age_50  *over_50  
If this is not clear, please feel free to clarify your question more and I'll try to help

Stephane

Re: HB model specification

Posted: 22 Jul 2024, 00:04
by siqifeng
Thank you very much for the clarification! I'm sorry that I haven't checked the forum in a while (until IATBR 2024). I see that the HB and classical estimation are specified differently in Apollo, although both assume normally distributed random parameters.

Re: HB model specification

Posted: 05 Aug 2024, 17:31
by stephanehess
Hi

yes, the syntax is different. But both can use distributions other than Normal, of course. This is discussed in more detail in the manual

Stephane