blob: 6f418ce0ecc2316ca0026bca49a7532855fdcddb (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
op {
graph_op_name: "InTopKV2"
in_arg {
name: "predictions"
description: <<END
A `batch_size` x `classes` tensor.
END
}
in_arg {
name: "targets"
description: <<END
A `batch_size` vector of class ids.
END
}
in_arg {
name: "k"
description: <<END
Number of top elements to look at for computing precision.
END
}
out_arg {
name: "precision"
description: <<END
Computed precision at `k` as a `bool Tensor`.
END
}
summary: "Says whether the targets are in the top `K` predictions."
description: <<END
This outputs a `batch_size` bool array, an entry `out[i]` is `true` if the
prediction for the target class is among the top `k` predictions among
all predictions for example `i`. Note that the behavior of `InTopK` differs
from the `TopK` op in its handling of ties; if multiple classes have the
same prediction value and straddle the top-`k` boundary, all of those
classes are considered to be in the top `k`.
More formally, let
\\(predictions_i\\) be the predictions for all classes for example `i`,
\\(targets_i\\) be the target class for example `i`,
\\(out_i\\) be the output for example `i`,
$$out_i = predictions_{i, targets_i} \in TopKIncludingTies(predictions_i)$$
END
}
|