aboutsummaryrefslogtreecommitdiffhomepage
path: root/tensorflow/core/api_def/base_api/api_def_InTopKV2.pbtxt
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
}