gpt4 book ai didi

machine-learning - 如何仅评估某些类别的 Keras 模型精度

转载 作者:行者123 更新时间:2023-11-30 09:41:32 26 4
gpt4 key购买 nike

我有以下 Keras 模型,其输出有 3 个类(0、1、2):

    model = Sequential()
model.add(LSTM(100, input_shape=(n_time_steps,n_features)))
model.add(Dropout(0.5))
model.add(Dense(100, activation='relu'))
model.add(Dense(n_classes, activation='softmax'))
model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy'])

我有兴趣评估模型的 1 类和 2 类精度,而不是 0,也就是说,如果 1 类和 2 类中的误报数量最少,则该模型是好的,而我并不真正关心0 级。

如何在 Keras 中编写此类指标?

最佳答案

创建任何采用真实情况和预测结果的函数并计算您的指标:

def false_positives(y_true, y_pred):
negatives = 1 - y_true
y_pred = K.cast(K.greater(y_pred, 0.5), K.floatx()) #round to 0 or 1
#if you don't round y_pred, it might even serve as a loss function

falsePositives = y_pred * negatives
falsePositives1 = falsePositives[:,1]
falsePositives2 = falsePositives[:,2]

return something

使用metrics = [false_positives]metrics=['accuracy', false_positives_1, false_positives_2]等。

关于machine-learning - 如何仅评估某些类别的 Keras 模型精度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58132955/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com