Warning when tweaking a minmax to contain 0.

PiperOrigin-RevId: 191625723
This commit is contained in:
A. Unique TensorFlower 2018-04-04 12:00:38 -07:00 committed by TensorFlower Gardener
parent 73b0540f81
commit bd540c8c45

View File

@ -72,6 +72,13 @@ bool ReadFakeQuantMinMax::Run(Model* model, std::size_t op_index) {
minmax.min = min_array.GetBuffer<ArrayDataType::kFloat>().data[0]; minmax.min = min_array.GetBuffer<ArrayDataType::kFloat>().data[0];
minmax.max = max_array.GetBuffer<ArrayDataType::kFloat>().data[0]; minmax.max = max_array.GetBuffer<ArrayDataType::kFloat>().data[0];
// We always want [min, max] to contain 0. // We always want [min, max] to contain 0.
if (minmax.min > 0 || minmax.max < 0) {
LOG(ERROR) << "For " << LogName(*fakequant_op) << " the MinMax range "
<< "[" << minmax.min << ", " << minmax.max
<< "] does not contain 0. "
<< "Proceeding by tweaking it to contain 0, which will result "
"in poor accuracy.";
}
minmax.min = std::min(minmax.min, 0.); minmax.min = std::min(minmax.min, 0.);
minmax.max = std::max(minmax.max, 0.); minmax.max = std::max(minmax.max, 0.);