Ich habe Probleme, keras zu verwenden, um zu meinem Szenario zu passen. In meiner Ausgabeschicht würde es die Wahrscheinlichkeiten jedes Artikels ausgeben. Ich möchte die obersten N Elemente (d. H. Mit der höchsten Wahrscheinlichkeit) nehmen und sehen, ob sie eine Teilmenge der Wahrheit sind (die eine Menge von Elementen hat). Ich muss die negative Log-Wahrscheinlichkeit für dieses Szenario kompilieren. Darf ich fragen, wie kann ich das tun?keras - softmax top N - Verlustfunktion
Vielen Dank für Ihre Hilfe im Voraus.
`
nn = Sequential()
nn.add(Dense(self.num_hidden_units, input_dim = input_num, init="uniform"))
nn.add(Activation('tanh'))
nn.add(Dense(self.num_items, init="uniform"))
nn.add(Activation('softmax'))
`
Ist es ein Multi-Label- oder Multi-Class-Szenario? Mit anderen Worten, schließen sich Ihre Etiketten gegenseitig aus? – yuval
Die Ausgabe ist die Wahrscheinlichkeiten für jedes Element auftreten, können Sie jede Klasse sagen. Aber sie schließen sich nicht gegenseitig aus, da ich erwähnt habe, dass ich gerne das obere N in der Ausgabe nehmen und sehen möchte, ob sie eine Teilmenge der Wahrheitsmenge sind. Aber ich bin mir nicht sicher, wie ich in diesem Fall negative Log-Likelihood anwenden. Ich kann die kategorische Kreuzentropie nicht verwenden, da ich keine Klasse aus Multiclasses vorhersage. Danke für die Antwort! – soulless