Я работаю в Keras / TensorFlow.Это моя модель Keras:
model = Sequential()
model.add(Dense(512, input_shape=(max_words,)))
model.add(Activation('relu'))
model.add(Dropout(0.5))
model.add(Dense(num_classes))
model.add(Activation('softmax'))
model.compile(loss='categorical_crossentropy',
optimizer='adam',
metrics=['accuracy'])
После этапа обучения и этапа тестирования я кодирую метод, который принимает данные (которые я не знаю, его класс) e Этот метод возвращает прогноз класса суровень доверия.Теперь этот метод возвращает только предсказание класса.Это метод:
def predict(input):
try:
x_prediction = tokenize.texts_to_matrix(input)
q = model.predict(np.array([x_prediction[0],]))
predicted_label = text_labels[np.argmax(q)]
print("Prediction: " + predicted_label + "\n")
except:
return "Error"
Что мне добавить в метод, чтобы получить уровень достоверности соответствующего прогноза?Я не хочу использовать достоверность переменной 'q', но я хочу использовать байесовский подход.Как я могу сделать?Спасибо