TFLite Converter, add possibility to ignore some OPs from quantization
@adamp87 One workaround could be to quantize the entire model, then fine-tune specific layers with FP32 weights and activation. This approach can be less efficient and might not perfectly address accuracy concerns. Thank you! @sushreebarsa Not sure how would that be possible, is there a documentation how to perform such a task? Currently my workaround is to split the Model `call()` code. I think a solution could be something similar like the `ignored_scope` at openvino. [reference](https://docs.openvino.ai/2022.3/basic_qauntization_flow.html#tune-quantization-parameters) Hi @abattery, can you please take a look? Thanks. Hi @abattery,

in the meantime I got a suggestion to experiment with [QuantizationDebugger](https://www.tensorflow.org/api_docs/python/tf/lite/experimental/QuantizationDebugger). Please see ticket: https://github.com/PINTO0309/onnx2tf/issues/578

What is your opinion about it? Is this the right way? Im still having some issues that could be discussed.

Thank you!
### Issue type

Feature Request

### Have you reproduced the bug with TensorFlow Nightly?

No

### Source

binary

### TensorFlow version

v2.13.0-17-gf841394b1b7

### Custom code

No

### OS platform and distribution

_No response_

### Mobile device

_No response_

### Python version

3.10.13

### Bazel version

_No response_

### GCC/compiler version

_No response_

### CUDA/cuDNN version

_No response_

### GPU model and memory

_No response_

### Current behavior?

Quantizing models to integer works as expected, but because some of the final operations work in INT8, a large accuracy drop can be observed in some models.

This ticket is a feature request to be able to exclude specific operations from quantization and execute in FP32. OpenVINO supports this feature as `ignored_scope` param during quantization. [Link to OpenVINO quantizer documentation.](https://docs.openvino.ai/2022.3/basic_qauntization_flow.html#tune-quantization-parameters) Considering how Edge TPU works, the solution should be to set where to stop quantization and execute the rest of the OPs in FP32 on the CPU.

Lets take yolov8n as an example and convert the pytorch model to TF using onnx2tf. Lets compare the main branch in [FULL INT8](https://github.com/adamp87/ultralytics/tree/main) quantization, with a dirty hack by detaching the last operations and executing as [INT8 + FP32](https://github.com/adamp87/ultralytics/tree/tflite_detach_dirty). As a note, Edge TPU compiled models larger than 192pixel input execute the head on the CPU as some Transpose operations are too large for the TPU.

| Model yolo8n  | mAP50 | mAP50-95 | Note | Speed on Intel CPU |
| ------------- | ------------- | ------------- | ------------- | ------------- |
| Baseline FP32 |  52.6 | 37.4  | Main branch | N/A |
| TFLite Full INT8  |  48.8 | 32.9 | per-tensor | 162.2 ms |
| TFLite INT8 + FP32 |  50.3 | 35.2 | per-tensor | 166.0ms |
| TFLite Full INT8  |  49.8 | 33.9 | per-channel | N/A |
| TFLite INT8 + FP32  |  51.4 | 36.3 | per-channel | N/A |


### Standalone code to reproduce the issue

```shell
https://github.com/adamp87/ultralytics/blob/tflite_detach_dirty/yolo8_full_int8_nohead_test.ipynb
```


### Relevant log output

_No response_