I've come across an interesting problem recently, and I'm wondering if I'm missing some obvious approach here. The problem statement is thus:
Imagine I run an online business, and I'm interested in restructuring my pricing model such that the price a user sees is dependent on say, age (or some other 'well-behaved' variable that we can assume is known to me — ignore the ethical considerations for now, I'm going with age for the sake of simplicity). So, I run a test over the course of a few weeks where I randomly assign users to one of four price variants, and I collect data on how each variant converts users:
- Variant 1: \$2.99/month
- Variant 2: \$4.99/month
- Variant 3: \$6.99/month
- Variant 4: \$8.99/month
The question is, given a users age, what's the optimal variant to assign the user?
I've thought of a couple of approaches so far, but I'm curious if there's a 'go-to' method here that I'm missing. My ideas so far are:
- Create four linear regression models of form $\text{Revenue}_{\text{user}} \sim \text{age}_{\text{user}}$, one for each variant. I can then plug each user's age into each model, and select the variant whose model produces the highest predicted revenue. However, I am unsure if this is an appropriate way to specify the linear model, as $\text{Revenue}_{\text{user}}$ is heavily zero-inflated.
- Bucket the users into age quantiles, and then identify the variant in each quantile that maximises revenue. This is conceptually simple, but also prone to overfitting. There is also the question of how many quantiles do I use?, which isn't immediately obvious.
I'm wondering if either a) a Bayesian approach or b) a ML-based approach (using something like a RF) could work here?