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

UniformRequantize

public final クラスUniformRequantize

量子化されたテンソル `input` を指定して、新しい量子化パラメータで再量子化します。

{input_scales, input_zero_points, input_quantization_axis, input_quantization_min_val, input_quantization_max_val} を使用して量子化された量子化されたテンソル `input` が与えられた場合、{output_scales, output_zero_points, output_quantization_axis, output_quantization_min_val, output_quantization_max_val} を使用して量子化されるテンソルに再量子化します。再量子化は次の式を使用して行われます: output_quantized_data = clip( (input_quantized_data - input_zero_point) * (input_scale / output_scale) + output_zero_point, output_quantization_min_val, output_quantization_max_val)

テンソルごとおよび軸ごとの量子化がサポートされているケースは次のとおりです。

  • テンソルごと -> テンソルごと
  • テンソルごと -> 軸ごと
  • 軸ごと -> 軸ごと (input_quantization_axis は output_quantization_axis に等しい)。つまり、input_quantization_axis と output_quantization_axis の少なくとも 1 つが -1 であるか、2 つが等しくなければなりません。

ネストされたクラス

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

公開メソッド

出力<U>
asOutput ()
テンソルのシンボリック ハンドルを返します。
static <U, T> UniformRequantize <U>
create ( Scope scope、オペランド<T> input、オペランド<Float> inputScales、オペランド<Integer> inputZeroPoints、オペランド<Float> outputScales、オペランド<Integer> outputZeroPoints、Class<U> Tout、Long inputQuantizationMinVal、Long inputQuantizationMaxVal、Long outputQuantizationMinVal、長い outputQuantizationMaxVal、オプション...オプション)
新しい UniformRequantize 操作をラップするクラスを作成するファクトリ メソッド。
static UniformRequantize.Options
inputQuantizationAxis (長い inputQuantizationAxis)
出力<U>
出力()
出力は、形状が入力と同じ Tout の量子化された Tensor です。
static UniformRequantize.Options
outputQuantizationAxis (長い outputQuantizationAxis)

継承されたメソッド

公開メソッド

public Output <U> asOutput ()

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

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

public static UniformRequantize <U> create ( Scope scope, Operand <T> input, Operand <Float> inputScales, Operand <Integer> inputZeroPoints, Operand <Float> outputScales, Operand <Integer> outputZeroPoints, Class<U> Tout, Long inputQuantizationMinVal, Long inputQuantizationMaxVal、Long outputQuantizationMinVal、Long outputQuantizationMaxVal、オプション... options)

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

パラメーター
範囲現在のスコープ
入力Tin のテンソルでなければなりません。
入力スケール`input` が表す元のデータを量子化するときにスケールとして使用される float 値。 quantization_axis が -1 (テンソルごとの量子化) の場合はスカラー テンソルでなければなりません。そうでない場合は、サイズ (input.dim_size(quantization_axis),) (軸ごとの量子化) の 1D テンソルです。
入力ゼロポイント`input` が表す元のデータを量子化するときに zero_point として使用される int32 値。鱗と同じ形状条件。
出力スケール`input` が表す元のデータを量子化するための新しいスケールとして使用する float 値。 quantization_axis が -1 (テンソルごとの量子化) の場合はスカラー テンソルでなければなりません。そうでない場合は、サイズ (input.dim_size(quantization_axis),) (軸ごとの量子化) の 1D テンソルです。
出力ゼロポイント`input` が表す元のデータを量子化するための新しい zero_point として使用する int32 値。鱗と同じ形状条件。
トウト出力テンソルの型。 tf.DType から: tf.qint8、tf.qint32
入力量子化最小値「input」が表す元のデータを量子化するときに使用された量子化の最小値。この属性の目的は通常 (ただしこれに限定されません) 狭い範囲を示すことです。これは次のように設定されます: 狭い範囲の場合は `(Tin 最低値) + 1`、それ以外の場合は `(Tin 最低値)`。たとえば、Tin が qint8 の場合、狭い範囲が量子化されている場合は -127 に設定され、そうでない場合は -128 に設定されます。
入力量子化最大値「input」が表す元のデータを量子化するときに使用された量子化最大値。この属性の目的は、通常 (ただしこれに限定されません) 狭い範囲を示すことです。これは、狭い範囲と狭い範囲の両方に対して `(Tout max)` に設定されます。たとえば、Tin が qint8 の場合、これは 127 に設定されます。
outputQuantizationMinVal `input` が表す元のデータを量子化するための新しい量子化最小値。
outputQuantizationMaxVal `input` が表す元のデータを量子化するための新しい量子化最大値。
オプションオプションの属性値を運ぶ
戻り値
  • UniformRequantize の新しいインスタンス

public static UniformRequantize.Options inputQuantizationAxis (長い inputQuantizationAxis)

パラメーター
入力量子化軸「input」が表す元のデータを量子化するときに使用された量子化軸。その次元に沿ったスライスに軸ごとの量子化が適用されるテンソルの次元インデックスを示します。 -1 (デフォルト) に設定すると、テンソルごとの量子化を示します。それ以外の場合は、範囲 [0, input.dims()) 内に設定する必要があります。

public出力<U>出力()

出力は、形状が入力と同じ Tout の量子化された Tensor です。

public static UniformRequantize.Options outputQuantizationAxis (Long outputQuantizationAxis)

パラメーター
outputQuantizationAxis `input` が表す元のデータを量子化するために使用する新しい量子化軸。