tensorflow::ops::QuantizeDownAndShrinkRange

#include <math_ops.h>

Nicelleştirilmiş 'giriş' tensörünü, aşağıdaki yöntemi kullanarak daha düşük hassasiyetli bir 'çıkış' tensörüne dönüştürün.

Özet

Düşük bit derinliğinin kullanımını en üst düzeye çıkarmak için değerlerin gerçek dağılımı ve buna göre çıktı minimum ve maksimum aralıklarının ayarlanması.

[input_min, input_max], 'giriş' verilerinin kayan noktalı sayı yorumlaması için aralığı belirten skalar kayan noktalı sayılardır. Örneğin, input_min -1.0f ve input_max 1.0f ise ve quint16 nicelleştirilmiş verilerle uğraşıyorsak, 16 bitlik verilerdeki 0 değeri -1.0f olarak yorumlanmalı ve 65535 değeri 1.0f anlamına gelmelidir.

Bu operatör, verilerde bulunan gerçek minimum ve maksimum değerleri hesaplayarak, daha düşük bit derinliğine sahip bir çıktıya mümkün olduğunca fazla hassasiyet sıkıştırmaya çalışır. Örneğin, quint16 girdisinde 16.384'ten düşük ve 49.152'den yüksek değer olmayabilir. Bu, aralığın yalnızca yarısının gerçekten gerekli olduğu anlamına gelir; tüm kayan noktalı sayı yorumları -0,5f ile 0,5f arasındadır. Dolayısıyla, verileri quint8 çıktısına sıkıştırmak istiyorsak, girdi minimum ve maksimum değerlerinin önerdiği teorik -1,0f ile 1,0f aralığı yerine bu aralığı kullanabiliriz.

Pratikte bu, girdilerinden daha yüksek bit derinliğine sahip çıktılar üretebilen ve geniş potansiyel çıktı aralıklarına sahip olabilen, ancak pratikte girdi değerlerinin dağılımı olası aralığın yalnızca küçük bir bölümünü kullanan QuantizedMatMul gibi işlemlerden gelen çıktıyı almak için en kullanışlıdır. Bu çıktıyı bu operatöre besleyerek, doğruluk kaybını en aza indirerek 32 bitten 8 bite düşürebiliriz.

Argümanlar:

  • kapsam: Bir Kapsam nesnesi
  • input_min: Minimum nicelleştirilmiş giriş değerini temsil eden ondalık sayı değeri.
  • input_max: Nicelleştirilmiş giriş değerinin maksimum değerini temsil eden ondalık sayı.
  • out_type: Çıktının türü. Bit derinliği Tinput'tan daha düşük olmalıdır.

İadeler:

  • Output çıktı
  • Output : Minimum nicelleştirilmiş çıktı değerini temsil eden ondalık sayı değeri.
  • Output output_max: Nicelleştirilmiş maksimum çıktı değerini temsil eden ondalık sayı değeri.

Yapıcılar ve Yıkıcılar

QuantizeDownAndShrinkRange (const :: tensorflow::Scope & scope, :: tensorflow::Input input, :: tensorflow::Input input_min, :: tensorflow::Input input_max, DataType out_type)

Genel özellikler

operation
output
output_max
output_min

Genel özellikler

operasyon

Operation operation

çıktı

::tensorflow::Output output

çıktı_maks

::tensorflow::Output output_max

çıktı_minimum

::tensorflow::Output output_min

Kamusal işlevler

QuantizeDownAndShrinkRange

 QuantizeDownAndShrinkRange(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input input,
  ::tensorflow::Input input_min,
  ::tensorflow::Input input_max,
  DataType out_type
)