to_categorical(y, num_classes=None, dtype=’float32′)
Convert integer category labels to onehot encoding. y is an int array, num_classes is the total number of label categories, greater than max(y) (labels starting from 0).
Returns: len(y) * [max(y)+1] (dimension, m*n means m rows and n columns matrix, same below) if num_classes=None, otherwise len(y) * num_classes.
import keras
ohl=keras.utils.to_categorical([
1,3])
# ohl=keras.utils.to_categorical([[1],[3]])
print(ohl)
“””
[[0. 1. 0. 0.]
[0. 0. 0. 1.]]
“””
ohl=keras.utils.to_categorical([
1,3],num_classes=5)
print(ohl)
“””
[[0. 1. 0. 0. 0.]
[0. 0. 0. 1. 0.]]
“””
The source code for this part of keras is as follows.
def to_categorical(y, num_classes=None, dtype=’float32′):
“””Converts a class vector (integers) to binary class matrix.
E.g. for use with categorical_crossentropy.
# Arguments
y: class vector to be converted into a matrix
(integers from 0 to num_classes).
num_classes: total number of classes.
dtype: The data type expected by the input, as a string
(`float32`, `float64`, `int32`…)
# Returns
A binary matrix representation of the input. The classes axis
is placed last.
“””
y = np.array(y, dtype=
‘int’)
input_shape = y.shape
if input_shape and input_shape[-1] == 1 and len(input_shape) > 1:
input_shape = tuple(input_shape[:
-1])
y = y.ravel()
if not num_classes:
num_classes = np.max(y) +
1
n = y.shape[
0]
categorical = np.zeros((n, num_classes), dtype=dtype)
categorical[np.arange(n), y] =
1
output_shape = input_shape + (num_classes,)
categorical = np.reshape(categorical, output_shape)
return categorical
In short: **keras.utils.to_categorical function: is to convert the category label to onehot encoding (categorical means category label, which indicates the various categories you categorize in the real world), and onehot encoding is a binary encoding that is convenient for computer processing. **
Similar Posts:
- Tag code error valueerror: bad input shape()
- Tensorflowcenter {typeerror} non hashable type: “numpy. Ndarray”
- ImportError: cannot import name’e.g. utils’from’tensorflow.as.utils’ 38382;’ 39064;
- [Solved] PythonTypeError: ‘<' not supported between instances of 'str' and 'int'
- tf.nn.top_k(input, k, name=None) & tf.nn.in_top_k(predictions, targets, k, name=None)
- The Usage of Numpy.unravel_index() function
- Python Pandas: Read_Excel() and to_Excel() function
- InvalidArgumentError (see above for traceback): You must feed a value for placeholder tensor ‘…
- [Python Debug]Kernel Crash While Running Neural Network with Keras|Jupyter Notebook Run Keras Server Down
- Solution to GPU memory leak problem of tensorflow operation efficiency