codecamp

怎么对TensorFlow进行假量化

tf.fake_quant_with_min_max_args

fake_quant_with_min_max_args(
    inputs,
    min=None,
    max=None,
    num_bits=None,
    narrow_range=None,
    name=None
)

参见指南:张量变换>假量化

假量化的 '输入(inputs)' 张量,类型浮动到相同类型的 '输出(outputs)' 张量.

属性 [min; max] 定义 inputs 数据的钳位范围.inputs 值被量化为量化范围([0; 2^num_bits - 1] 当 narrow_range为假的,并且 [1; 2^num_bits - 1] 为真时),然后被去量化(de-quantized)并作为 [min; max] 间隔中的浮点输出.num_bits 是量化的位宽;介于 2 和 8 之间(包含).

量化被称为假,因为输出仍处于浮点状态.

参数:

  • inputs:float32 类型的张量.
  • min:可选浮点型.默认值为-6.
  • max:可选浮点型.默认值为6.
  • num_bits:可选的整数型.默认值为8.
  • narrow_range:可选布尔值.默认取值为 False.
  • name:操作的名称(可选).

返回:

float32 类型的张量.

tf.fake_quant_with_min_max_args_gradient

fake_quant_with_min_max_args_gradient(
    gradients,
    inputs,
    min=None,
    max=None,
    num_bits=None,
    narrow_range=None,
    name=None
)

参见指南:张量变换>假量化


计算 FakeQuantWithMinMaxArgs 操作的梯度.

参数:

  • gradients:float32 类型的张量.在 FakeQuantWithMinMaxArgs 操作之上的反向传播(Backpropagated)梯度.
  • inputs:float32 类型的张量.作为 FakeQuantWithMinMaxArgs 操作的输入传递的值.
  • min:可选的浮点型,默认为-6.
  • max:可选的浮点型,默认为6.
  • num_bits:可选的整数型,默认为8.
  • narrow_range:可选的布尔值,默认为 False.
  • name:操作的名称(可选).

返回:

float32 类型的张量.FakeQuantWithMinMaxArgs 操作之下的反向传播(Backpropagated)梯度:gradients * (inputs >= min && inputs <= max).

构造TensorFlow的单位矩阵
TensorFlow快速傅里叶变换
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

TensorFlow 函数介绍

TensorFlow 函数模块:tf

TensorFlow的image模块

TensorFlow使用之tf.io

TensorFlow使用之tf.keras

TensorFlow函数教程:tf.keras.applications

TensorFlow函数教程:tf.keras.backend

TensorFlow使用之tf.metrics

TensorFlow使用之tf.nn

TensorFlow使用之tf.python_io

TensorFlow 功能函数

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }