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

tf.keras.backend.batch_dot

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

バッチ式では、製品に点在しています。

batch_dotドット積を計算するために使用されるx及びyときxy形状のバッチ、すなわちデータである(batch_size, :)batch_dot入力よりも小さい寸法を有するテンソルまたは変数になります。次元数が1に削減されている場合は、我々は使用expand_dims ndimは少なくとも2であることを確認します。

x Kerasテンソル又は可変ndim >= 2
y Kerasテンソル又は可変ndim >= 2
axes タプルまたはターゲット寸法、または単一の整数と整数のリスト。大きx.shape[axes[0]]y.shape[axes[1]]等しくなければなりません。

形状のテンソルは、連結に等しいxの形状(以下にわたって合計した寸法)とyの形状(以下、バッチ寸法にわたって合計した寸法)。最終ランクが1であれば、我々はそれを再構築(batch_size, 1)

例:

x_batch = tf.keras.backend.ones(shape=(32, 20, 1))
y_batch = tf.keras.backend.ones(shape=(32, 30, 20))
xy_batch_dot = tf.keras.backend.batch_dot(x_batch, y_batch, axes=(1, 2))
tf.keras.backend.int_shape(xy_batch_dot)
(32, 1, 30)

シェイプ推論:

ましょxの形状は、である(100, 20)およびy 'の形状は、である(100, 30, 20)場合axes得られるテンソルの出力形状を見つけるために、(1、2)であり、各寸法をループxの形状およびy 'の形状:

  • x.shape[0] :100:出力形状に追加
  • x.shape[1] :20:追記出力形状、寸法1ないx上加算されています。 ( dot_axes[0] = 1)
  • y.shape[0] :100:出力形状に、常に最初の寸法を無視しない追記y
  • y.shape[1] :30:出力形状に追加
  • y.shape[2] :20:出力形状の2次元にない追記行うy上加算されています。 ( dot_axes[1] = 2) output_shape = (100, 30)