反向标签编码器不适用于神经网络?

问题描述 投票:0回答:2

我的数据框中有一个分类变量(A、B、C)。然后,我使用 Label Encoder 对其进行编码,以将其传递给使用 Keras 的神经网络。通常我会在其他算法上反转这种转换,以便取回类别名称,但出于某种原因,这不适用于神经网络/keras?有办法解决这个问题吗?

编辑:我已经将这些概率转换为类指标,但由于某种原因逆变换不起作用,所以我无法取回原始标签

python keras deep-learning
2个回答
0
投票

当您使用神经网络进行多类分类时,输出层通常由多个具有 softmax 激活函数的神经元组成。这意味着神经网络的输出是类的概率分布,而不是直接的标签编码。因此,您不能直接将 LabelEncoder 的 inverse_transform() 方法应用于神经网络输出。

您需要通过选择最高概率的索引将概率转换为类索引,并在这些类索引上使用 LabelEncoder 的 inverse_transform() 方法。


0
投票

我不知道你使用了哪个标签编码器库,但我记得在 sklearn 中,有一个标签编码器可以将字符串转换为数字,反之亦然,检查一下。 https://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.LabelEncoder.html

© www.soinside.com 2019 - 2024. All rights reserved.