警告:このAPIは非推奨であり、置き換えが安定した後 TensorFlowの将来のバージョンで削除される予定です。

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

MatrixDiagV2

パブリックファイナルクラスMatrixDiagV2

指定されたバッチ対角値を持つバッチ対角テンソルを返します。

`diagonal`の内容が行列の` k [0] `番目から` k [1] `番目の対角線であり、他のすべてが` padding`で埋められているテンソルを返します。 `num_rows`と` num_cols`は、出力の最も内側の行列の次元を指定します。両方が指定されていない場合、opは最も内側の行列が正方行列であると想定し、そのサイズを「k」と「対角」の最も内側の次元から推測します。それらの1つだけが指定されている場合、opは、指定されていない値が他の基準に基づいて可能な限り最小であると想定します。

`対角`に `r`次元` [I、J、...、L、M、N] `を持たせます。出力テンソルは、対角線が1つだけ指定されている場合( `k`は整数、または` k [0] == k [1] `)。それ以外の場合は、ランクが「r」で、形状が「[I、J、...、L、num_rows、num_cols]」になります。

`対角`の2番目に内側の次元には二重の意味があります。 `k`がスカラーまたは` k [0] == k [1] `の場合、` M`はバッチサイズ[I、J、...、M]の一部であり、出力テンソルは次のとおりです。

output[i, j, ..., l, m, n]
   = diagonal[i, j, ..., l, n-max(d_upper, 0)] ; if n - m == d_upper
     padding_value                             ; otherwise
 
それ以外の場合、 `M`は、同じバッチ内の行列の対角線の数として扱われ(` M = k [1] -k [0] + 1`)、出力テンソルは次のとおりです。
output[i, j, ..., l, m, n]
   = diagonal[i, j, ..., l, diag_index, index_in_diag] ; if k[0] <= d <= k[1]
     padding_value                                     ; otherwise
 
ここで、 `d = n --m` 、 `diag_index = k [1] -d`、および` index_in_diag = n-max(d、0) `。

例:

# The main diagonal.
 diagonal = np.array([[1, 2, 3, 4],            # Input shape: (2, 4)
                      [5, 6, 7, 8]])
 tf.matrix_diag(diagonal) ==> [[[1, 0, 0, 0],  # Output shape: (2, 4, 4)
                                [0, 2, 0, 0],
                                [0, 0, 3, 0],
                                [0, 0, 0, 4]],
                               [[5, 0, 0, 0],
                                [0, 6, 0, 0],
                                [0, 0, 7, 0],
                                [0, 0, 0, 8]]]
 
 # A superdiagonal (per batch).
 diagonal = np.array([[1, 2, 3],  # Input shape: (2, 3)
                      [4, 5, 6]])
 tf.matrix_diag(diagonal, k = 1)
   ==> [[[0, 1, 0, 0],  # Output shape: (2, 4, 4)
         [0, 0, 2, 0],
         [0, 0, 0, 3],
         [0, 0, 0, 0]],
        [[0, 4, 0, 0],
         [0, 0, 5, 0],
         [0, 0, 0, 6],
         [0, 0, 0, 0]]]
 
 # A band of diagonals.
 diagonals = np.array([[[1, 2, 3],  # Input shape: (2, 2, 3)
                        [4, 5, 0]],
                       [[6, 7, 9],
                        [9, 1, 0]]])
 tf.matrix_diag(diagonals, k = (-1, 0))
   ==> [[[1, 0, 0],  # Output shape: (2, 3, 3)
         [4, 2, 0],
         [0, 5, 3]],
        [[6, 0, 0],
         [9, 7, 0],
         [0, 1, 9]]]
 
 # Rectangular matrix.
 diagonal = np.array([1, 2])  # Input shape: (2)
 tf.matrix_diag(diagonal, k = -1, num_rows = 3, num_cols = 4)
   ==> [[0, 0, 0, 0],  # Output shape: (3, 4)
        [1, 0, 0, 0],
        [0, 2, 0, 0]]
 
 # Rectangular matrix with inferred num_cols and padding_value = 9.
 tf.matrix_diag(diagonal, k = -1, num_rows = 3, padding_value = 9)
   ==> [[9, 9],  # Output shape: (3, 2)
        [1, 9],
        [9, 2]]
 

パブリックメソッド

出力<T>
asOutput ()
テンソルのシンボリックハンドルを返します。
static <T> MatrixDiagV2 <T>
createスコープスコープ、オペランド<T>対角、オペランド<整数> k、オペランド<整数> numRows、オペランド<整数> numCols、オペランド<T> paddingValue)
新しいMatrixDiagV2操作をラップするクラスを作成するファクトリメソッド。
出力<T>
出力()
`k`が整数の場合はランク` r + 1`、それ以外の場合はランク `r`を持ちます。

継承されたメソッド

パブリックメソッド

public Output <T> asOutput ()

テンソルのシンボリックハンドルを返します。

TensorFlow操作への入力は、別のTensorFlow操作の出力です。このメソッドは、入力の計算を表すシンボリックハンドルを取得するために使用されます。

public static MatrixDiagV2 <T> create スコープスコープ、オペランド<T>対角線、オペランド<整数> k、オペランド<整数> numRows、オペランド<整数> numCols、オペランド<T> paddingValue)

新しいMatrixDiagV2操作をラップするクラスを作成するファクトリメソッド。

パラメーター
範囲現在のスコープ
対角線ランク `r`、ここで` r> = 1`
k対角オフセット。正の値は超対角を意味し、0は主対角を示し、負の値は副対角を意味します。 `k`は、単一の整数(単一の対角線の場合)または行列バンドの下限と上限を指定する整数のペアにすることができます。 `k [0]`は `k [1]`より大きくてはいけません。
numRows出力行列の行数。提供されていない場合、opは出力行列が正方行列であると想定し、kと「対角」の最も内側の次元から行列サイズを推測します。
numCols出力行列の列数。提供されていない場合、opは出力行列が正方行列であると想定し、kと「対角」の最も内側の次元から行列サイズを推測します。
paddingValue指定された対角帯の外側の領域を埋める番号。デフォルトは0です。
戻り値
  • MatrixDiagV2の新しいインスタンス

public Output <T> output ()

`k`が整数の場合はランク` r + 1`、それ以外の場合はランク `r`を持ちます。