Rate this Page

ObserverBase#

classtorch.ao.quantization.observer.ObserverBase(dtype,is_dynamic=False)[source]#

Base observer Module.Any observer implementation should derive from this class.

Concrete observers should follow the same API. In forward, they will updatethe statistics of the observed Tensor. And they should provide acalculate_qparams function that computes the quantization parameters giventhe collected statistics.

Parameters:
  • dtype – dtype argument to thequantize node needed to implement thereference model spec.

  • is_dynamic (bool) – indicator for whether the observer is a placeholder for dynamic quantization

  • quantization (or static) –

classmethodwith_args(**kwargs)[source]#

Wrapper that allows creation of class factories.

This can be useful when there is a need to create classes with the sameconstructor arguments, but different instances. Can be used in conjunction with_callable_args

Example:

>>>Foo.with_args=classmethod(_with_args)>>>foo_builder=Foo.with_args(a=3,b=4).with_args(answer=42)>>>foo_instance1=foo_builder()>>>foo_instance2=foo_builder()>>>id(foo_instance1)==id(foo_instance2)False
classmethodwith_callable_args(**kwargs)[source]#

Wrapper that allows creation of class factories args that need to becalled at construction time.

This can be useful when there is a need to create classes with the sameconstructor arguments, but different instances and those arguments should onlybe calculated at construction time. Can be used in conjunction with _with_args

Example:

>>>Foo.with_callable_args=classmethod(_with_callable_args)>>>Foo.with_args=classmethod(_with_args)>>>foo_builder=Foo.with_callable_args(cur_time=get_time_func).with_args(name="dan")>>>foo_instance1=foo_builder()>>># wait 50>>>foo_instance2=foo_builder()>>>id(foo_instance1.creation_time)==id(foo_instance2.creation_time)False