Hello,

I’m currently working on a PyMC model where I’m trying to initialize values for a Beta distribution to ensure that a custom penalty potential does not evaluate to `-inf`

. Here is the code snippet:

```
n = 3
with pm.Model() as model:
tau_latent = pm.Beta('tau_latent',
alpha=1,
beta=1,
shape=n,
initval=(np.linspace(0 + 0.1,
1. - 0.1, n))
)
pm.Potential(
"penalty_last_one",
pm.math.switch(
pt.any(pt.lt(tau_latent[-1] - 1.0, 0.1)), -np.inf,
0
))
```

I have configured the `initval`

for `tau_latent`

in such a way that I expect the `penalty_last_one`

potential to not result in `-inf`

. However, I still encounter a `SamplingError`

indicating that the initial evaluation of the model at the starting point failed, specifically mentioning that `'penalty_last_one': -inf`

.

The starting values provided in the error message are as follows: `{'tau_latent_logodds__': array([-4.36858715, -1.53270918, -0.31507496, 0.73444259, 2.08084293])}`

.

When attempting to convert these log-odds back to probabilities using `np.exp`

, it seems it might not be correctly calculating the initial values. Could someone help clarify the correct approach to set the `initval`

for the Beta distribution in this context, ensuring the custom potential does not return `-inf`

?

Thank you for your assistance