Var.new_param()

Contents

Var.new_param()#

classmethod Var.new_param(value, distribution=None, name='', inference=None)[source]#

Initializes a strong variable that acts as a model parameter.

A parameter is a strong variable that can have a distribution. If it does have a distribution, its log_prob is counted in a model’s log prior, i.e. log_prior.

Parameters:
  • value (Any) – The value of the variable.

  • distribution (Dist | None) – The probability distribution of the variable. (default: None)

  • name (str) – The name of the variable. If you do not specify a name, a unique name will be automatically generated upon initialization of a Model. (default: '')

  • inference (TypeAliasType) – Additional information that can be used to set up inference algorithms. (default: None)

Return type:

Var

See also

Var.new_obs

Initializes a strong variable that holds observed data.

Var.new_calc

Initializes a weak variable that is a function of other variables.

Var.new_value

Initializes a strong variable without a distribution.

Examples

A simple parameter without a distribution and without a name:

>>> x = lsl.Var.new_param(1.0)
>>> x
Var(name="")

A simple parameter with a normal prior:

>>> prior = lsl.Dist(tfd.Normal, loc=0.0, scale=1.0)
>>> x = lsl.Var.new_param(1.0, distribution=prior)
>>> x
Var(name="")