LoadAndRemapMatrix

パブリック最終クラスLoadAndRemapMatrix

チェックポイントから `old_tensor_name` という名前の 2 次元 (行列) `Tensor` をロードします

`ckpt_path` にあり、指定された再マッピングを使用して行と列の順序を変更する可能性があります。

ほとんどのユーザーは、この関数を直接使用する代わりに、ラッパー初期化子 (`tf.contrib.framework.load_and_remap_matrix_initializer` など) の 1 つを使用する必要があります。

リマッピングは、次のプロパティを持つ 1 次元テンソルです。

  • `row_remapping` には正確に `num_rows` 個のエントリが必要です。出力行列の行 `i` は、チェックポイントからの古い `Tensor` のインデックス `row_remapping[i]` に対応する行から初期化されます。
  • `col_remapping` には 0 エントリ (列の並べ替えが必要ないことを示す) または `num_cols` エントリがなければなりません。指定した場合、出力行列の列 `j` は、チェックポイントからの古い `Tensor` のインデックス `col_remapping[j]` に対応する列から初期化されます。
  • いずれかの再マッピングの値 -1 は、「欠落」エントリを意味します。その場合、欠落している行または列を埋めるために、「initializing_values」テンソルの値が使用されます。 「row_remapping」に「r」の欠落エントリがあり、「col_remapping」に「c」の欠落エントリがある場合、次の条件が真である必要があります。
`(r * num_cols) + (c * num_rows) - (r * c) == len(initializing_values)`

リマッピング テンソルは、GenerateVocabRemapping オペレーションを使用して生成できます。

例として、row_remapping = [1, 0, -1]、col_remapping = [0, 2, -1]、initializing_values = [0.5, -0.5, 0.25, -0.25, 42]、および w(i, j) の場合チェックポイントの古いテンソルの行 i、列 j の値を表すと、出力行列は次のようになります。

[[w(1, 0), w(1, 2), 0.5], [w(0, 0), w(0, 2), -0.5], [0.25, -0.25, 42]]

ネストされたクラス

クラスLoadAndRemapMatrix.Options LoadAndRemapMatrixのオプションの属性

定数

OP_NAME TensorFlow コア エンジンによって認識される、この演算の名前

パブリックメソッド

出力< TFloat32 >
asOutput ()
テンソルのシンボリック ハンドルを返します。
静的LoadAndRemapMatrix
create (スコープscope、オペランド<TString> ckptPath、オペランド<TString> oldTensorName、オペランド<TInt64> rowRemapping、オペランド<TInt64> colRemapping、オペランド<TFloat32> initializingValues、Long numRows、Long numCols、 Options... options)
新しい LoadAndRemapMatrix オペレーションをラップするクラスを作成するためのファクトリ メソッド。
静的LoadAndRemapMatrix.Options
maxRowsInMemory (長い maxRowsInMemory)
出力< TFloat32 >
出力マトリックス()
チェックポイントからロードされた既存の値と、initializing_values から埋められた欠落値を含む出力行列。

継承されたメソッド

定数

パブリック静的最終文字列OP_NAME

TensorFlow コア エンジンによって認識される、この演算の名前

定数値: "LoadAndRemapMatrix"

パブリックメソッド

public Output < TFloat32 > asOutput ()

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

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

public static LoadAndRemapMatrix create (スコープscope、オペランド<TString> ckptPath、オペランド<TString> oldTensorName、オペランド<TInt64> rowRemapping、オペランド<TInt64> colRemapping、オペランド<TFloat32> initializingValues、Long numRows、Long numCols、 Options... options)

新しい LoadAndRemapMatrix オペレーションをラップするクラスを作成するためのファクトリ メソッド。

パラメーター
範囲現在のスコープ
ckptパス古い行列 `Tensor` がロードされる TensorFlow チェックポイント (バージョン 2、`TensorBundle`) へのパス。
古いテンソル名チェックポイントからロードする 2-D `Tensor` の名前。
行の再マッピング行リマッピングの int `Tensor` (通常は `generate_vocab_remapping` によって作成されます)。行の再マッピングが必要ない場合でも、これはインデックス値の Tensor (例: [0, 1, 2, ...])、またはシフトされたインデックス値の `Tensor` (例: [8, 9, 10, ...]、パーティション化された「変数」の場合)。
列再マッピング列再マッピングの int `Tensor` (通常は `generate_vocab_remapping` によって作成されます)。行の再マッピングのみが行われる場合 (列の順序が同じなど)、サイズ 0 の `Tensor` になる可能性があります。
値の初期化チェックポイントからロードされない出力行列のセルに入力する値を含む float `Tensor`。長さは、欠落しているセルまたは新しいセルの数と正確に同じである必要があります。
行数出力行列の行数 (1 次元の長さ)。
列数出力行列の列数 (2 次元の長さ)。
オプションオプションの属性値を持ちます
戻り値
  • LoadAndRemapMatrix の新しいインスタンス

public static LoadAndRemapMatrix.Options maxRowsInMemory (Long maxRowsInMemory)

パラメーター
maxRowsInMemoryチェックポイントから一度にロードする行の最大数。 0 以下の場合、行列全体がメモリにロードされます。この引数を設定すると、ディスク読み取りの増加と引き換えにメモリ使用量が減ります。

public Output < TFloat32 > OutputMatrix ()

チェックポイントからロードされた既存の値と、initializing_values から埋められた欠落値を含む出力行列。