2016-10-11 14 views
8

私はGoogleのfaceネット紙を実装しようとしている:すべてのケラスにトリプレットロスを実装するにはどうしたらいいですか?

enter image description here

まず、それがKerasのシーケンシャルAPIを使用してこの論文を実装することが可能であるか、私はグラフAPIのために行くべきですか?いずれの場合も

、あなたが損失を計算するためのパラメータとして、どのように私はモデルのコンパイルにカスタム損失関数tripletLossを通過しないとどのように私はanchor embeddingを受けるか、positive embeddingnegative embedding教えてくださいだろうか?

model.fitの2番目のパラメータY(どうあるべきか。また

、)、私はこの場合はいずれかを持っていない...

+0

Hey! KerasでFacenetを実装できる場所はどこですか?私はちょうどこれを必要とするプロジェクトに取り組んでおり、これを取り除くことができたかどうか疑問に思っていました... – Rob

答えて

2

This issueはKerasにカスタム目標(損失)を作成する方法について説明します。

あなたが最後にそれを処理1(目的関数の y_trueパラメータはそれから取られている)であるため、私はあなたはそれが通じ合うことができる必要があるものは何でも渡すことができますと言うでしょう .fit()yパラメータについて
def dummy_objective(y_true, y_pred): 
    return 0.5 # your implem of tripletLoss here 

model.compile(loss=dummy_objective, optimizer='adadelta') 

、ケラス配管。そしてあなたが本当に監督を必要としない場合、次元チェックを渡すためのダミーベクトルかもしれません。

最後に、この特定の用紙の実装方法については、またはfacenetKeras docに検索すると何も返されませんでした。だからあなたはおそらくそれを自分で実装するか、誰かを見つける必要があります。

関連する問題