Exemple #1
0
        def loss_fun(delta: ep.Tensor, logits: ep.Tensor) -> ep.Tensor:
            assert x.shape[0] == logits.shape[0]
            assert delta.shape == x.shape

            x_hat = x + delta
            logits_hat = model(x_hat)
            loss = ep.kl_div_with_logits(logits, logits_hat).sum()

            return loss
Exemple #2
0
 def loss_fn(inputs):
     logits_q = model(inputs)
     return ep.kl_div_with_logits(logits_p, logits_q).sum()
Exemple #3
0
def test_kl_div_with_logits(dummy: ep.Tensor, axis: int) -> None:
    logits_p = logits_q = ep.arange(dummy, 12).float32().reshape((3, 4))
    assert (ep.kl_div_with_logits(logits_p, logits_q, axis=axis) == 0).all()