一个热编码输出到 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
声明。
在我的一个 .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
声明。