このページは Cloud Translation API によって翻訳されました。
Switch to English

tf.keras.metrics.CosineSimilarity

TensorFlow 1つのバージョン GitHubの上のソースを表示

ラベルと予測間のコサイン類似度を計算します。

cosine similarity = (a . b) / ||a|| ||b||

参照: コサイン類似度を

このメトリックは、間の平均コサイン類似度続けpredictionslabelsデータのストリーム上。

name メトリックインスタンスの(オプション)文字列名。
dtype メトリック結果の(任意)データ型。
axis (オプション)デフォルト値に-1。コサイン類似度が計算され、それに沿って寸法。

スタンドアロンの使用:

# l2_norm(y_true) = [[0., 1.], [1./1.414], 1./1.414]]]
# l2_norm(y_pred) = [[1., 0.], [1./1.414], 1./1.414]]]
# l2_norm(y_true) . l2_norm(y_pred) = [[0., 0.], [0.5, 0.5]]
# result = mean(sum(l2_norm(y_true) . l2_norm(y_pred), axis=1))
#        = ((0. + 0.) +  (0.5 + 0.5)) / 2
m = tf.keras.metrics.CosineSimilarity(axis=1)
m.update_state([[0., 1.], [1., 1.]], [[1., 0.], [1., 1.]])
m.result().numpy()
0.49999997
m.reset_states()
m.update_state([[0., 1.], [1., 1.]], [[1., 0.], [1., 1.]],
               sample_weight=[0.3, 0.7])
m.result().numpy()
0.6999999

使用方法compile() API:

 model.compile(
    optimizer='sgd',
    loss='mse',
    metrics=[tf.keras.metrics.CosineSimilarity(axis=1)])
 

メソッド

reset_states

ソースを表示

メトリックの状態変数のすべてをリセットします。

メトリックは、トレーニング中に評価されている場合、この関数は、エポック/ステップの間と呼ばれています。

result

ソースを表示

計算して返しメトリック値テンソル。

結果の計算は単純に状態変数を使用してメトリック値を算出する冪等操作です。

update_state

ソースを表示

メトリックの統計情報を蓄積します。

y_truey_pred同じ形状を有している必要があります。

引数
y_true 地上真理値。形状= [batch_size, d0, .. dN]
y_pred 予測値。形状= [batch_size, d0, .. dN]
sample_weight オプションsample_weightメトリックの係数として機能します。スカラーが設けられている場合、メトリックは単に指定された値によってスケーリングされます。場合sample_weightサイズのテンソルである[batch_size]その後、バッチの各サンプルのメトリックは、に対応する要素によって再スケーリングされるsample_weightベクター。形状場合sample_weightある[batch_size, d0, .. dN-1]又はこのような形状にブロードキャストすることができる)、その後の各メトリック要素y_predの対応する値によってスケーリングされるsample_weight 。 (上の注意dN-1すべてのメトリック関数は1次元、通常は最後の軸(-1)によって減らします)。

戻り値
更新オペアンプ。