Register
Login
Resources
Docs Blog Datasets Glossary Case Studies Tutorials & Webinars
Product
Data Engine LLMs Platform Enterprise
Pricing Explore
Connect to our Discord channel

#680 Optimizer readme

Merged
Ghost merged 1 commits into Deci-AI:master from deci-ai:feature/SG-605-add_optimizers_tuto
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
  1. from super_gradients.training.models import Bottleneck
  2. try:
  3. from pytorch_quantization import nn as quant_nn
  4. from super_gradients.training.utils.quantization.core import SGQuantMixin, QuantizedMetadata
  5. from super_gradients.training.utils.quantization.selective_quantization_utils import register_quantized_module
  6. _imported_pytorch_quantization_failure = None
  7. except (ImportError, NameError, ModuleNotFoundError) as import_err:
  8. _imported_pytorch_quantization_failure = import_err
  9. @register_quantized_module(float_source=Bottleneck, action=QuantizedMetadata.ReplacementAction.RECURE_AND_REPLACE)
  10. class QuantBottleneck(SGQuantMixin):
  11. """
  12. we just insert quantized tensor to the shortcut (=residual) layer, so that it would be quantized
  13. NOTE: we must quantize the float instance, so the mode should be
  14. QuantizedMetadata.ReplacementAction.RECURE_AND_REPLACE
  15. """
  16. if _imported_pytorch_quantization_failure is not None:
  17. raise _imported_pytorch_quantization_failure
  18. @classmethod
  19. def from_float(cls, float_instance: Bottleneck, **kwargs):
  20. float_instance.shortcut.add_module("residual_quantizer", quant_nn.TensorQuantizer(kwargs.get("quant_desc_input")))
  21. return float_instance
Discard
Tip!

Press p or to see the previous file or, n or to see the next file