# tensorflow::ops::OneHot

#include <array_ops.h>

Returns a one-hot tensor.

## Summary

The locations represented by indices in indices take value on_value, while all other locations take value off_value.

If the input indices is rank N, the output will have rank N+1, The new axis is created at dimension axis (default: the new axis is appended at the end).

If indices is a scalar the output shape will be a vector of length depth.

If indices is a vector of length features, the output shape will be:

features x depth if axis == -1
depth x features if axis == 0

If indices is a matrix (batch) with shape [batch, features], the output shape will be:

batch x features x depth if axis == -1
batch x depth x features if axis == 1
depth x batch x features if axis == 0

# Examples

Suppose that

indices = [0, 2, -1, 1]
depth = 3
on_value = 5.0
off_value = 0.0
axis = -1

Then output is [4 x 3]:

output =
[5.0 0.0 0.0]  // one_hot(0)
[0.0 0.0 5.0]  // one_hot(2)
[0.0 0.0 0.0]  // one_hot(-1)
[0.0 5.0 0.0]  // one_hot(1)

Suppose that

indices = [0, 2, -1, 1]
depth = 3
on_value = 0.0
off_value = 3.0
axis = 0

Then output is [3 x 4]:

output =
[0.0 3.0 3.0 3.0]
[3.0 3.0 3.0 0.0]
[3.0 3.0 3.0 3.0]
[3.0 0.0 3.0 3.0]
//  ^                one_hot(0)
//      ^            one_hot(2)
//          ^        one_hot(-1)
//              ^    one_hot(1)

Suppose that

indices = [[0, 2], [1, -1]]
depth = 3
on_value = 1.0
off_value = 0.0
axis = -1

Then output is [2 x 2 x 3]:

output =
[
[1.0, 0.0, 0.0]  // one_hot(0)
[0.0, 0.0, 1.0]  // one_hot(2)
][
[0.0, 1.0, 0.0]  // one_hot(1)
[0.0, 0.0, 0.0]  // one_hot(-1)
]

Args:

• scope: A Scope object
• indices: A tensor of indices.
• depth: A scalar defining the depth of the one hot dimension.
• on_value: A scalar defining the value to fill in output when indices[j] = i.
• off_value: A scalar defining the value to fill in output when indices[j] != i.

Optional attributes (see Attrs):

• axis: The axis to fill (default: -1, a new inner-most axis).

Returns:

### Constructors and Destructors

OneHot(const ::tensorflow::Scope & scope, ::tensorflow::Input indices, ::tensorflow::Input depth, ::tensorflow::Input on_value, ::tensorflow::Input off_value)
OneHot(const ::tensorflow::Scope & scope, ::tensorflow::Input indices, ::tensorflow::Input depth, ::tensorflow::Input on_value, ::tensorflow::Input off_value, const OneHot::Attrs & attrs)

operation
output

### Public functions

node() const
::tensorflow::Node *
operator::tensorflow::Input() const
operator::tensorflow::Output() const

Axis(int64 x)

### Structs

tensorflow::ops::OneHot::Attrs

Optional attribute setters for OneHot.

## Public attributes

### operation

Operation operation

### output

::tensorflow::Output output

## Public functions

### OneHot

OneHot(
const ::tensorflow::Scope & scope,
::tensorflow::Input indices,
::tensorflow::Input depth,
::tensorflow::Input on_value,
::tensorflow::Input off_value
)

### OneHot

OneHot(
const ::tensorflow::Scope & scope,
::tensorflow::Input indices,
::tensorflow::Input depth,
::tensorflow::Input on_value,
::tensorflow::Input off_value,
const OneHot::Attrs & attrs
)

### node

::tensorflow::Node * node() const

### operator::tensorflow::Input

operator::tensorflow::Input() const

### operator::tensorflow::Output

operator::tensorflow::Output() const

Attrs Axis(
int64 x
)
[]
[]