一个热编码输出到 ML 模型的分类值

One hot encoded output to categorical value from a ML model

在我的一个 .py 文件中,我创建了一个模型并保存了它的 .pkl 文件以供以后分析使用。 该模型是使用来自这个 kaggle 情感数据集的代码形成的 https://www.kaggle.com/shivamburnwal/speech-emotion-recognition 问题是,当我使用此代码的模型来检测新音频的情绪时,输出是一种热编码格式。 有什么方法可以让我获得实际的情绪('happy'、'fear' 等)而不是 1 和 0。

预测输出是这样的列表:

prediction = [0,0,0,0,1,0,0] , [0,1,0,0,0,0,0], [0,0,0,1,0,0,0]

然后您可以使用以下代码更改它们:

pred = []

for x in prediction:
    if x == [0,0,0,0,1,0,0]:
        pred.append('Sad')
    
    elif x == [0,1,0,0,0,0,0]:
        pred.append('Happy')
        
    elif x == [0,0,0,1,0,0,0]:
        pred.append('disgust')

print(pred)

输出=

['Sad', 'Happy', 'disgust']

请根据需要添加更多elif声明。