Home
last modified time | relevance | path

Searched refs:quantization (Results 1 – 25 of 251) sorted by relevance

1234567891011

/external/tensorflow/tensorflow/lite/tools/optimize/
Dquantize_model_test.cc290 EXPECT_EQ(subgraph->tensors[input_idx]->quantization->scale.size(), 1); in TEST_F()
291 EXPECT_FLOAT_EQ(subgraph->tensors[input_idx]->quantization->scale[0], in TEST_F()
293 EXPECT_EQ(subgraph->tensors[input_idx]->quantization->zero_point.size(), 1); in TEST_F()
294 EXPECT_EQ(subgraph->tensors[input_idx]->quantization->zero_point[0], 0); in TEST_F()
297 EXPECT_EQ(subgraph->tensors[output_idx]->quantization->scale.size(), 1); in TEST_F()
298 EXPECT_FLOAT_EQ(subgraph->tensors[output_idx]->quantization->scale[0], in TEST_F()
300 EXPECT_EQ(subgraph->tensors[output_idx]->quantization->zero_point.size(), in TEST_F()
302 EXPECT_EQ(subgraph->tensors[output_idx]->quantization->zero_point[0], 0); in TEST_F()
380 EXPECT_EQ(subgraph->tensors[0]->quantization->scale.size(), 1); in TEST_F()
381 EXPECT_EQ(subgraph->tensors[0]->quantization->zero_point.size(), 1); in TEST_F()
[all …]
Dquantize_model.cc74 TF_LITE_ENSURE(error_reporter, weight_tensor->quantization); in QuantizeBias()
75 std::vector<float> weight_scales = weight_tensor->quantization->scale; in QuantizeBias()
84 if (!input_tensor->quantization || in QuantizeBias()
85 input_tensor->quantization->scale.size() != 1) { in QuantizeBias()
96 model, bias_tensor, input_tensor->quantization->scale[0], in QuantizeBias()
107 input_tensor->quantization->scale[0] * weight_scales[0], in QuantizeBias()
119 !tensor->quantization->scale.empty()); in TensorTypeChangeRequired()
144 const float scale = subgraph->tensors[tensor_idx]->quantization->scale[0]; in SetInputType()
146 subgraph->tensors[tensor_idx]->quantization->zero_point[0]; in SetInputType()
196 const float scale = subgraph->tensors[tensor_idx]->quantization->scale[0]; in SetOutputType()
[all …]
Dmodel_utils_test.cc35 tensor.quantization = absl::make_unique<QuantizationParametersT>(); in TEST()
36 tensor.quantization->scale.push_back(0.5); in TEST()
37 tensor.quantization->scale.push_back(1.5); in TEST()
39 tensor.quantization->zero_point.push_back(1); in TEST()
40 tensor.quantization->zero_point.push_back(-1); in TEST()
60 tensor.quantization = absl::make_unique<QuantizationParametersT>(); in TEST()
61 tensor.quantization->min.push_back(0.5); in TEST()
63 tensor.quantization->max.push_back(1.5); in TEST()
Dmodel_utils.cc96 (*tensor)->quantization = absl::make_unique<QuantizationParametersT>(); in MakeTensorWithQuantParam()
97 (*tensor)->quantization->scale.push_back(scale); in MakeTensorWithQuantParam()
98 (*tensor)->quantization->zero_point.push_back(zero_point); in MakeTensorWithQuantParam()
102 return tensor->quantization != nullptr && in QuantizationParametersExist()
103 !tensor->quantization->scale.empty() && in QuantizationParametersExist()
104 !tensor->quantization->zero_point.empty(); in QuantizationParametersExist()
118 return tensor->quantization && !tensor->quantization->min.empty() && in HasMinMax()
119 !tensor->quantization->max.empty(); in HasMinMax()
Dquantization_utils.cc258 if (tensor->quantization == nullptr) { in SymmetricPerChannelQuantization()
259 tensor->quantization = absl::make_unique<QuantizationParametersT>(); in SymmetricPerChannelQuantization()
264 tensor->quantization.get(), error_reporter)); in SymmetricPerChannelQuantization()
272 std::max(std::abs(tensor->quantization->min[channel_idx]), in SymmetricPerChannelQuantization()
273 std::abs(tensor->quantization->max[channel_idx])); in SymmetricPerChannelQuantization()
365 if (tensor->quantization->min.size() != 1 || in SymmetricQuantizeTensorFromMinMax()
366 tensor->quantization->max.size() != 1) { in SymmetricQuantizeTensorFromMinMax()
382 tensor->quantization->min[0], tensor->quantization->max[0], in SymmetricQuantizeTensorFromMinMax()
384 tensor->quantization->scale = std::vector<float>(1, scaling_factor); in SymmetricQuantizeTensorFromMinMax()
385 tensor->quantization->zero_point = std::vector<int64_t>(1, 0); in SymmetricQuantizeTensorFromMinMax()
[all …]
Dquantization_utils_test.cc203 tensor.quantization = nullptr; in TEST_F()
234 tensor.quantization = absl::make_unique<QuantizationParametersT>(); in TEST_F()
237 tensor.quantization.get(), &error_reporter_); in TEST_F()
242 EXPECT_THAT(tensor.quantization->min, ElementsAreArray(expected_mins)); in TEST_F()
243 EXPECT_THAT(tensor.quantization->max, ElementsAreArray(expected_maxs)); in TEST_F()
358 auto quantization = absl::make_unique<QuantizationParametersT>(); in TEST_F() local
359 quantization->min = {-0.00001, -7.0, -2.0}; in TEST_F()
360 quantization->max = {0.00001, 1.0, -1.0}; in TEST_F()
361 std::vector<float> scales = std::vector<float>(quantization->min.size()); in TEST_F()
363 GetSymmetricScalesFromMaxMin(quantization.get(), &scales, &error_reporter_); in TEST_F()
[all …]
/external/tensorflow/tensorflow/lite/toco/tflite/
Dimport.cc78 auto quantization = input_tensor->quantization(); in ImportTensors() local
79 if (quantization) { in ImportTensors()
82 if (quantization->min() && quantization->max()) { in ImportTensors()
83 CHECK_EQ(1, quantization->min()->Length()); in ImportTensors()
84 CHECK_EQ(1, quantization->max()->Length()); in ImportTensors()
86 minmax.min = quantization->min()->Get(0); in ImportTensors()
87 minmax.max = quantization->max()->Get(0); in ImportTensors()
89 if (quantization->scale() && quantization->zero_point()) { in ImportTensors()
90 CHECK_EQ(1, quantization->scale()->Length()); in ImportTensors()
91 CHECK_EQ(1, quantization->zero_point()->Length()); in ImportTensors()
[all …]
/external/tensorflow/tensorflow/compiler/mlir/lite/tests/mlir2flatbuffer/
Dlstm.mlir15 // CHECK-NEXT: quantization: {
22 // CHECK-NEXT: quantization: {
29 // CHECK-NEXT: quantization: {
36 // CHECK-NEXT: quantization: {
43 // CHECK-NEXT: quantization: {
50 // CHECK-NEXT: quantization: {
57 // CHECK-NEXT: quantization: {
64 // CHECK-NEXT: quantization: {
71 // CHECK-NEXT: quantization: {
78 // CHECK-NEXT: quantization: {
[all …]
Dunidirectional_sequence_lstm.mlir15 // CHECK-NEXT: quantization: {
22 // CHECK-NEXT: quantization: {
29 // CHECK-NEXT: quantization: {
36 // CHECK-NEXT: quantization: {
43 // CHECK-NEXT: quantization: {
50 // CHECK-NEXT: quantization: {
57 // CHECK-NEXT: quantization: {
64 // CHECK-NEXT: quantization: {
71 // CHECK-NEXT: quantization: {
78 // CHECK-NEXT: quantization: {
[all …]
Dtfl_while_op.mlir23 // CHECK-NEXT: quantization: {
30 // CHECK-NEXT: quantization: {
38 // CHECK-NEXT: quantization: {
45 // CHECK-NEXT: quantization: {
67 // CHECK-NEXT: quantization: {
74 // CHECK-NEXT: quantization: {
82 // CHECK-NEXT: quantization: {
90 // CHECK-NEXT: quantization: {
108 // CHECK-NEXT: quantization: {
115 // CHECK-NEXT: quantization: {
[all …]
Dwhile_op.mlir23 // CHECK-NEXT: quantization: {
30 // CHECK-NEXT: quantization: {
38 // CHECK-NEXT: quantization: {
45 // CHECK-NEXT: quantization: {
67 // CHECK-NEXT: quantization: {
74 // CHECK-NEXT: quantization: {
82 // CHECK-NEXT: quantization: {
90 // CHECK-NEXT: quantization: {
108 // CHECK-NEXT: quantization: {
115 // CHECK-NEXT: quantization: {
[all …]
Dbasic_lstm.mlir15 // CHECK-NEXT: quantization: {
22 // CHECK-NEXT: quantization: {
29 // CHECK-NEXT: quantization: {
36 // CHECK-NEXT: quantization: {
43 // CHECK-NEXT: quantization: {
50 // CHECK-NEXT: quantization: {
57 // CHECK-NEXT: quantization: {
64 // CHECK-NEXT: quantization: {
71 // CHECK-NEXT: quantization: {
Dif_op.mlir23 // CHECK-NEXT: quantization: {
30 // CHECK-NEXT: quantization: {
38 // CHECK-NEXT: quantization: {
45 // CHECK-NEXT: quantization: {
70 // CHECK-NEXT: quantization: {
77 // CHECK-NEXT: quantization: {
84 // CHECK-NEXT: quantization: {
105 // CHECK-NEXT: quantization: {
112 // CHECK-NEXT: quantization: {
119 // CHECK-NEXT: quantization: {
Dsvdf_v2.mlir15 // CHECK-NEXT: quantization: {
23 // CHECK-NEXT: quantization: {
30 // CHECK-NEXT: quantization: {
37 // CHECK-NEXT: quantization: {
43 // CHECK-NEXT: quantization: {
51 // CHECK-NEXT: quantization: {
Dsvdf.mlir15 // CHECK-NEXT: quantization: {
22 // CHECK-NEXT: quantization: {
29 // CHECK-NEXT: quantization: {
36 // CHECK-NEXT: quantization: {
42 // CHECK-NEXT: quantization: {
50 // CHECK-NEXT: quantization: {
/external/tensorflow/tensorflow/compiler/mlir/lite/tests/flatbuffer2mlir/
Dimporter_test_min_max.cc121 input_tensor->quantization->scale.clear(); in InjectStatsToFullyConnected()
122 input_tensor->quantization->zero_point.clear(); in InjectStatsToFullyConnected()
123 input_tensor->quantization->min.push_back(-1.0); in InjectStatsToFullyConnected()
124 input_tensor->quantization->max.push_back(1.0); in InjectStatsToFullyConnected()
128 output_tensor->quantization->scale.clear(); in InjectStatsToFullyConnected()
129 output_tensor->quantization->zero_point.clear(); in InjectStatsToFullyConnected()
131 output_tensor->quantization->min.push_back(-1.0 * i); in InjectStatsToFullyConnected()
132 output_tensor->quantization->max.push_back(1.0 * i); in InjectStatsToFullyConnected()
134 output_tensor->quantization->quantized_dimension = shape.size() - 1; in InjectStatsToFullyConnected()
/external/tensorflow/tensorflow/lite/kernels/
Dkernel_util_test.cc250 input.quantization.type = kTfLiteAffineQuantization; in TEST_F()
257 input.quantization.params = reinterpret_cast<void*>(input_params); in TEST_F()
270 filter.quantization.type = kTfLiteAffineQuantization; in TEST_F()
282 filter.quantization.params = reinterpret_cast<void*>(filter_params); in TEST_F()
291 bias.quantization.type = kTfLiteAffineQuantization; in TEST_F()
302 bias.quantization.params = reinterpret_cast<void*>(bias_params); in TEST_F()
311 output.quantization.type = kTfLiteAffineQuantization; in TEST_F()
318 output.quantization.params = reinterpret_cast<void*>(output_params); in TEST_F()
356 input.quantization.type = kTfLiteAffineQuantization; in TEST_F()
363 input.quantization.params = reinterpret_cast<void*>(input_params); in TEST_F()
[all …]
/external/tensorflow/tensorflow/lite/g3doc/performance/
Dpost_training_quantization.md1 # Post-training quantization
3 Post-training quantization is a conversion technique that can reduce model size
14 There are several post-training quantization options to choose from. Here is a
19 | Weight quantization | 4x smaller, 2-3x speedup, | CPU |
21 | Full integer quantization | 4x smaller, 3x+ speedup | CPU, Edge TPU, etc. |
22 | Float16 quantization | 2x smaller, potential GPU | CPU/GPU |
25 This decision tree can help determine which post-training quantization method is
31 [quantization-aware training](
33 However, doing so requires some model modifications to add fake quantization
34 nodes, whereas the post-training quantization techniques on this page use an
[all …]
Dmodel_optimization.md13 ## Model quantization
21 …mentations provide SIMD instruction capabilities, which are especially beneficial for quantization.
23 TensorFlow Lite provides several levels of support for quantization.
25 * Tensorflow Lite [post-training quantization](post_training_quantization.md)
34 Below are the latency and accuracy results for post-training quantization and
35 quantization-aware training on a few models. All latency numbers are measured on
60 <b>Table 1</b> Benefits of model quantization for select CNN models
69 [post-training quantization tool](post_training_quantization.md) since this is
74 [quantization-aware training](https://github.com/tensorflow/tensorflow/tree/r1.13/tensorflow/contri…
/external/tensorflow/tensorflow/lite/delegates/gpu/common/
Dmodel_builder_test.cc171 TfLiteQuantization quantization; in InterpreterFp16() local
172 quantization.type = kTfLiteNoQuantization; in InterpreterFp16()
175 0, TfLiteType::kTfLiteFloat16, "t0", dims, quantization, false), in InterpreterFp16()
179 2, TfLiteType::kTfLiteFloat16, "t2", dims, quantization, false), in InterpreterFp16()
183 1, TfLiteType::kTfLiteFloat32, "t1", dims, quantization, false), in InterpreterFp16()
187 3, TfLiteType::kTfLiteFloat32, "t3", dims, quantization, false), in InterpreterFp16()
353 TfLiteQuantization quantization; in InterpreterFp32() local
354 quantization.type = kTfLiteNoQuantization; in InterpreterFp32()
356 0, TfLiteType::kTfLiteUInt8, "t0", dims, quantization, false), in InterpreterFp32()
360 1, TfLiteType::kTfLiteFloat32, "t1", dims, quantization, false), in InterpreterFp32()
[all …]
/external/tensorflow/tensorflow/lite/c/
Dcommon.c88 void TfLiteQuantizationFree(TfLiteQuantization* quantization) { in TfLiteQuantizationFree() argument
89 if (quantization->type == kTfLiteAffineQuantization) { in TfLiteQuantizationFree()
91 (TfLiteAffineQuantization*)(quantization->params); in TfLiteQuantizationFree()
102 quantization->params = NULL; in TfLiteQuantizationFree()
103 quantization->type = kTfLiteNoQuantization; in TfLiteQuantizationFree()
148 TfLiteQuantizationFree(&t->quantization); in TfLiteTensorFree()
154 TfLiteQuantizationParams quantization, char* buffer, in TfLiteTensorReset() argument
162 tensor->params = quantization; in TfLiteTensorReset()
169 tensor->quantization.type = kTfLiteNoQuantization; in TfLiteTensorReset()
170 tensor->quantization.params = NULL; in TfLiteTensorReset()
/external/tensorflow/tensorflow/lite/
Dinterpreter.cc59 TfLiteQuantization quantization; in GetQuantizationFromLegacy() local
60 quantization.type = kTfLiteAffineQuantization; in GetQuantizationFromLegacy()
67 quantization.params = affine_quantization; in GetQuantizationFromLegacy()
69 return quantization; in GetQuantizationFromLegacy()
229 const std::vector<int>& dims, TfLiteQuantization quantization, in SetTensorParametersReadOnly() argument
232 tensor_index, type, name, dims.size(), dims.data(), quantization, buffer, in SetTensorParametersReadOnly()
238 const std::vector<int>& dims, TfLiteQuantization quantization, in SetTensorParametersReadWrite() argument
241 tensor_index, type, name, dims.size(), dims.data(), quantization, in SetTensorParametersReadWrite()
247 const int* dims, TfLiteQuantizationParams quantization, const char* buffer, in SetTensorParametersReadOnly() argument
249 TfLiteQuantization new_quantization = GetQuantizationFromLegacy(quantization); in SetTensorParametersReadOnly()
[all …]
/external/tensorflow/tensorflow/compiler/mlir/lite/quantization/
Dquantization_info.proto7 // Represents the quantization parameters for a list of named tensors.
11 // quantization specification.
39 // The quantized axis index if it is per-axis quantization.
48 // The quantization parameters for a named tensor.
62 // The quantization parameters for the tensor. If it is for per-axis, the
67 // Metadata about the quantization parameters.
71 // List of quantization parameters for tensors.
Dquantization.td16 // This is the quantization definition file for TensorFlow.
60 // TFL native op traits (for quantization).
70 // Specify this trait if the op requires same inputs and outputs quantization
83 // and also the quantization dimension if per-axis quantization is support.
84 // If the quantization dimension is -1, per-axis quantization isn't supported.
91 // apply quantization on this op.
/external/tensorflow/tensorflow/lite/tools/optimize/calibration/
Dcalibration_reader.cc47 if (tensor->quantization) { in AddCalibrationToModel()
48 const float existing_min = tensor->quantization->min[0]; in AddCalibrationToModel()
49 const float existing_max = tensor->quantization->max[0]; in AddCalibrationToModel()
57 subgraph->tensors[tensorid_stat.first]->quantization = in AddCalibrationToModel()

1234567891011