(self, conds: edic=edic())
| 243 | return reduce_last(tc.sum, logps_all, len(self.shape)) |
| 244 | |
| 245 | def entropy(self, conds: edic=edic()) -> tc.Tensor: |
| 246 | # [shape_bat, shape_cond] -> [shape_bat] |
| 247 | logits = self._logitsfn(conds) # logit == log prob |
| 248 | return - reduce_last(tc.sum, logits.exp() * logits, len(self.shape) + 1) |
| 249 | |
| 250 | class Bern(DistrElem): |
| 251 | def __init__(self, name: str, *, probs = None, logits = None, shape = None, device = None): |
no test coverage detected