o
    ‡ZŽh&  ã                   @   s&   d dl Z dgZG dd„ de jjƒZdS )é    NÚDropoutc                   @   s:   e Zd ZdZdd„ Zdd„ Zeddd„ƒZed	d
„ ƒZdS )r   a`  This is the quantized equivalent of :class:`~torch.nn.Dropout`.
        And this is a placeholder to enable models where fp32 tensors
        had dropout to work with quantized tensors in train and eval mode.

    Args:
        p: probability of an element to be zeroed
        inplace: can optionally do the operation in-place. Default: ``False``
    c                 C   s   |S ©N© )ÚselfÚinputr   r   úT/var/www/auris/lib/python3.10/site-packages/torch/ao/nn/quantized/modules/dropout.pyÚforward   ó   zDropout.forwardc                 C   s   dS )NZQuantizedDropoutr   )r   r   r   r   Ú	_get_name   r	   zDropout._get_nameFc                 C   ó   | |j |jƒS r   ©ÚpZinplace)ÚclsÚmodZuse_precomputed_fake_quantr   r   r   Ú
from_float   ó   zDropout.from_floatc                 C   r   r   r   )r   r   ÚscaleZ
zero_pointr   r   r   Úfrom_reference   r   zDropout.from_referenceN)F)	Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r
   Úclassmethodr   r   r   r   r   r   r      s    	)ZtorchÚ__all__Únnr   r   r   r   r   Ú<module>   s   