私はケラスでトリプレット損失関数を実装しています。一般に、損失関数は、地面の真理を引数にして予測値を取る。しかし、トリプレットの損失はラベルを使用せず、出力のみを使用します。私はただ一つのパラメータで関数を記述しようとした:ケラスでy_trueを使用しないカスタム損失関数を書く
def triplet_loss(y_pred):
margin = 1
return K.mean(K.square(y_pred[0]) - K.square(y_pred[1]) + margin)
それはtriplet_loss()
は1つの引数を取りますが、2つの引数がscore_array = fn(y_true, y_pred)
に(与えられたと言って失敗した私は2つの引数をy_true, y_pred
で関数を記述すると、プログラムがエラーなしで実行されます。なぜでしょうか?y_true
は使用されませんが、これらの2つの引数を使用してこの関数を実装するだけですか?これは正しいのですか、それとも別の方法ですか?
私はまだそれを解決していない、私は今それに対処しようとしています。 –