量子化された Tensor `lhs` と量子化された Tensor `rhs` の量子化加算を実行して、量子化された `output` を作成します。
量子化された `lhs` と量子化された `rhs` を指定すると、`lhs` と `rhs` に対して量子化された加算を実行して、量子化された `output` を作成します。
`UniformQuantizedAdd` は Numpy ブロードキャスト ルールに従います。 2 つの入力配列形状が要素ごとに比較されます。後続の次元から始めて、2 つの次元が等しいか、どちらかの次元が 1 である必要があります。
`lhs` と `rhs` は量子化された Tensor である必要があり、データ値は次の式を使用して量子化されます。
quantized_data = clip(original_data / scale + zero_point, quantization_min_val, quantization_max_val)
「出力」も同じ式を使用して量子化されます。`lhs` と `output` が両方とも軸ごとに量子化されている場合、量子化軸は一致する必要があります。また、「rhs」と「output」が両方とも軸ごとに量子化されている場合、量子化軸は一致する必要があります。一致とは、ブロードキャストに関して追加するときに軸が一致する必要があることを意味します。つまり、両方のオペランド `lhs` と `rhs` について、`operand.quantization_axis` >= 0 かつ `output.quantization_axis` >= 0 の場合、`operand.dims` - `operand.quantization_axis` は `output.dims` と等しくなければなりません。 ` - `output.quantization_axis`。
ネストされたクラス
クラス | UniformQuantizedAdd.オプション | UniformQuantizedAdd のオプションの属性 |
パブリックメソッド
出力<T> | asOutput () テンソルのシンボリック ハンドルを返します。 |
静的 <T> UniformQuantizedAdd <T> | create (スコープscope,オペランド<T> lhs,オペランド<T> rhs,オペランド<Float> lhsScales,オペランド<Integer> lhsZeroPoints,オペランド<Float> rhsScales,オペランド<Integer> rhsZeroPoints,オペランド<Float> OutputScales,オペランド<Integer > OutputZeroPoints、Long lhsQuantizationMinVal、Long lhsQuantizationMaxVal、Long rhsQuantizationMinVal、Long rhsQuantizationMaxVal、Long OutputQuantizationMinVal、Long OutputQuantizationMaxVal、 Options...オプション) 新しいUniformQuantizedAddオペレーションをラップするクラスを作成するファクトリメソッド。 |
静的UniformQuantizedAdd.Options | lhsQuantizationAxis (長い lhsQuantizationAxis) |
出力<T> | 出力() 出力の量子化テンソル。 |
静的UniformQuantizedAdd.Options | OutputQuantizationAxis (長い出力量子化軸) |
静的UniformQuantizedAdd.Options | rhsQuantizationAxis (長い rhsQuantizationAxis) |
継承されたメソッド
パブリックメソッド
public Output <T> asOutput ()
テンソルのシンボリック ハンドルを返します。
TensorFlow オペレーションへの入力は、別の TensorFlow オペレーションの出力です。このメソッドは、入力の計算を表すシンボリック ハンドルを取得するために使用されます。
public static UniformQuantizedAdd <T> create (スコープscope,オペランド<T> lhs,オペランド<T> rhs,オペランド<Float> lhsScales,オペランド<Integer> lhsZeroPoints,オペランド<Float> rhsScales,オペランド<Integer> rhsZeroPoints,オペランド<Float > OutputScales、オペランド<Integer> OutputZeroPoints、Long lhsQuantizationMinVal、Long lhsQuantizationMaxVal、Long rhsQuantizationMinVal、Long rhsQuantizationMaxVal、Long outputQuantizationMinVal、Long outputQuantizationMaxVal、 Options...オプション)
新しいUniformQuantizedAddオペレーションをラップするクラスを作成するファクトリメソッド。
パラメータ
範囲 | 現在のスコープ |
---|---|
左 | 量子化されたテンソルでなければなりません。 |
右肩 | 量子化されたテンソルでなければなりません。 |
lhsスケール | `lhs` が表す元のデータを量子化するときにスケール係数として使用される浮動小数点値。 |
lhsゼロポイント | `lhs` が表す元のデータを量子化するときにゼロ点として使用される int32 値。 lhs_scales と同じ形状でなければなりません。 |
rhsスケール | `rhs` が表す元のデータを量子化するときにスケール係数として使用される浮動小数点値。 |
rhsゼロポイント | `rhs` が表す元のデータを量子化するときにゼロ点として使用される int32 値。 `rhs_scales` と同じ形状でなければなりません。 |
出力スケール | 「output」が表す元のデータを量子化するときにスケール係数として使用する浮動小数点値。 |
出力ゼロポイント | 出力が表す元のデータを量子化するときにゼロ点として使用される int32 値。 `output_scales` と同じ形状でなければなりません。 |
lhs量子化最小値 | `lhs` に格納される量子化データの最小値。たとえば、「Tin」が「qint8」の場合、狭い範囲で量子化されている場合は -127、そうでない場合は -128 に設定する必要があります。 |
lhsQuantizationMaxVal | lhs に格納される量子化データの最大値。たとえば、「Tin」が「qint8」の場合、これを 127 に設定する必要があります。 |
rhs量子化最小値 | 「rhs」に格納される量子化データの最小値。たとえば、「Tin」が「qint8」の場合、狭い範囲で量子化されている場合は -127、そうでない場合は -128 に設定する必要があります。 |
rhsQuantizationMaxVal | rhs に格納される量子化データの最大値。たとえば、「Tin」が「qint8」の場合、これを 127 に設定する必要があります。 |
出力量子化最小値 | 「output」に格納される量子化データの最小値。たとえば、「Tout」が「qint8」の場合、狭い範囲で量子化されている場合は -127、そうでない場合は -128 に設定する必要があります。 |
出力量子化最大値 | 「output」に格納される量子化データの最大値。たとえば、「Tout」が「qint8」の場合、これを 127 に設定する必要があります。 |
オプション | オプションの属性値を持ちます |
返品
- UniformQuantizedAdd の新しいインスタンス
public static UniformQuantizedAdd.Options lhsQuantizationAxis (Long lhsQuantizationAxis)
パラメータ
lhs量子化軸 | 軸ごとの量子化がその次元に沿ったスライスに適用されるテンソルの次元インデックスを示します。 -1 (デフォルト) に設定すると、テンソルごとの量子化を示します。 `lhs` の場合、テンソルごとの量子化のみがサポートされます。したがって、これは -1 に設定する必要があります。他の値を指定すると、OpKernel 構築時にエラーが発生します。 |
---|
public static UniformQuantizedAdd.Options OutputQuantizationAxis (Long OutputQuantizationAxis)
パラメータ
出力量子化軸 | 軸ごとの量子化がその次元に沿ったスライスに適用されるテンソルの次元インデックスを示します。 -1 (デフォルト) に設定すると、テンソルごとの量子化を示します。 「出力」の場合、「output_feature_dimension」に沿ったテンソルごとの量子化またはチャネルごとの量子化のみがサポートされます。したがって、これは -1 または `dimension_numbers.output_feature_dimension` に設定する必要があります。他の値を指定すると、OpKernel 構築時にエラーが発生します。 |
---|
public static UniformQuantizedAdd.Options rhsQuantizationAxis (Long rhsQuantizationAxis)
パラメータ
rhs量子化軸 | 軸ごとの量子化がその次元に沿ったスライスに適用されるテンソルの次元インデックスを示します。 -1 (デフォルト) に設定すると、テンソルごとの量子化を示します。 「rhs」の場合、「kernel_output_feature_dimension」に沿ったテンソルごとの量子化またはチャネルごとの量子化のみがサポートされます。したがって、これは -1 または `dimension_numbers.kernel_output_feature_dimension` に設定する必要があります。他の値を指定すると、OpKernel 構築時にエラーが発生します。 |
---|