torch.distributions.chi2 的源代码
from torch.distributions import constraints
from torch.distributions.gamma import Gamma
__all__ = ["Chi2"]
[docs]class Chi2(Gamma):
r"""
创建一个由形状参数 :attr:`df` 参数化的卡方分布。
这完全等价于 ``Gamma(alpha=0.5*df, beta=0.5)``
示例::
>>> # xdoctest: +IGNORE_WANT("非确定性")
>>> m = Chi2(torch.tensor([1.0]))
>>> m.sample() # 形状为 df=1 的卡方分布
tensor([ 0.1046])
参数:
df (float 或 Tensor): 分布的形状参数
"""
arg_constraints = {"df": constraints.positive}
def __init__(self, df, validate_args=None):
super().__init__(0.5 * df, 0.5, validate_args=validate_args)
[docs] def expand(self, batch_shape, _instance=None):
new = self._get_checked_instance(Chi2, _instance)
return super().expand(batch_shape, new)
@property
def df(self):
return self.concentration * 2