PositionSplit.add_inferred_sample_sizes_from_model()#
- PositionSplit.add_inferred_sample_sizes_from_model(model)[source]#
Infer effective sample sizes from
modeland attach them to this split.Empty validation or test parts are omitted from the inferred mapping. The method mutates and returns
self. Inference counts log-probability scalars, not observed value elements; for multivariate observation distributions, one observed event may have several value dimensions but one pointwise log-probability scalar.- Return type:
Examples
>>> import jax.numpy as jnp >>> import liesel.model as lsl >>> import tensorflow_probability.substrates.jax.distributions as tfd >>> from liesel.optim import Split >>> y = lsl.Var.new_obs( ... jnp.arange(4.0), ... lsl.Dist(tfd.Normal, loc=0.0, scale=1.0), ... name="y", ... ) >>> model = lsl.Model([y]) >>> split = Split( ... ["y"], axis_size=4, validate_axis_size=1, shuffle=False ... ).split_position(model.extract_position(["y"])) >>> split.add_inferred_sample_sizes_from_model(model) is split True >>> split.sample_sizes {'train': 3.0, 'validate': 1.0}