Computes the Poisson metric between y_true and y_pred.

Inherits From: Mean, Metric, Layer, Module

metric = y_pred - y_true * log(y_pred)

Args
name (Optional) string name of the metric instance.
dtype (Optional) data type of the metric result.

#### Standalone usage:

m = tf.keras.metrics.Poisson()
m.update_state([[0, 1], [0, 0]], [[1, 1], [0, 0]])
m.result().numpy()
0.49999997

m.reset_states()
m.update_state([[0, 1], [0, 0]], [[1, 1], [0, 0]],
sample_weight=[1, 0])
m.result().numpy()
0.99999994


Usage with compile() API:

model.compile(optimizer='sgd',
loss='mse',
metrics=[tf.keras.metrics.Poisson()])


## Methods

### reset_states

View source

Resets all of the metric state variables.

This function is called between epochs/steps, when a metric is evaluated during training.

### result

View source

Computes and returns the metric value tensor.

Result computation is an idempotent operation that simply calculates the metric value using the state variables.

### update_state

View source

Accumulates metric statistics.

y_true and y_pred should have the same shape.

Args
y_true Ground truth values. shape = [batch_size, d0, .. dN].
y_pred The predicted values. shape = [batch_size, d0, .. dN].
sample_weight Optional sample_weight acts as a coefficient for the metric. If a scalar is provided, then the metric is simply scaled by the given value. If sample_weight is a tensor of size [batch_size], then the metric for each sample of the batch is rescaled by the corresponding element in the sample_weight vector. If the shape of sample_weight is [batch_size, d0, .. dN-1] (or can be broadcasted to this shape), then each metric element of y_pred is scaled by the corresponding value of sample_weight. (Note on dN-1: all metric functions reduce by 1 dimension, usually the last axis (-1)).
Returns
Update op.