我使用keras中提供的to_categorical函数将float类型的numpy ndarray转换为其二进制对应项。 Y的尺寸为2144x1,但函数返回的数组尺寸为2144x2。 如何从to_categorical获得2144x1阵列? Y仅包含0和1(FLOAT TYPE) 功能调用:
string[] Emails = null;
答案 0 :(得分:2)
keras.utils.to_categorical(y, num_classes=None)
将类向量(整数)转换为二进制类矩阵。
但它看起来并不支持浮动(它为所有数字做底线)
to_categorical([0, 0.1, 0.2, 0.3, 1])
[[ 1. 0.]
[ 1. 0.]
[ 1. 0.]
[ 1. 0.]
[ 0. 1.]]
to_categorical([0, 1, 2, 3, 1])
[[ 1. 0. 0. 0.]
[ 0. 1. 0. 0.]
[ 0. 0. 1. 0.]
[ 0. 0. 0. 1.]
[ 0. 1. 0. 0.]]
一种解决方案是,将其扩展为正整数并转换为分类。