Ich habe erfolgreich ein einfaches Modell in Keras trainiert, um Bilder zu klassifizieren:
%Vor%Ich kann die Bildklassen auch mit
vorhersagen %Vor% Allerdings ist die Ausgabe von y_pred
immer binär. Dies scheint auch bei der Verwendung von predict_proba
und predict
der Fall zu sein. Meine Ausgaben sind in dieser Form
Das funktioniert OK, aber ich möchte eine Wahrscheinlichkeitsprozentzahl für jede Klassifizierung haben, zum Beispiel
%Vor%Wie bekomme ich das in Keras?
Softmax liefert möglicherweise eine "heiße Ausgabe". Betrachten Sie das folgende Beispiel:
%Vor% Da die Exponentialfunktion sehr schnell anwächst, beginnt softmax
, beginnend mit der Größenordnung 1, einen einheißen Ausgang zu liefern. In Keras Implementierung der Funktion softmax
der Maximalwert wird von der Eingabe subtrahiert, aber im oben genannten Fall wird es keinen Unterschied machen.
Mögliche Möglichkeiten, dies zu beheben:
Stellen Sie sicher, dass die Eingabebilder neu skaliert werden, sodass die Pixelwerte zwischen 0
und 1
liegen.
Fügen Sie Ihrem Modell einige Regularizer hinzu.
Tags und Links python neural-network deep-learning keras conv-neural-network