CoolFace
Apppublic

procgne/Plonk

sourceHugging Facemitupdated 10mo agoView on Hugging Face
0likes
positional_embeddings.cpython-310.pyc14 linesDownload Raw Back to __pycache__
1o

2>��f�@sDddlZddlmZddlZGdd�dej�ZGdd�dej�ZdS)�Ncs*eZdZdZd�fdd�	Zdd�Z�ZS)	�PositionalEmbedding�23    Taken from https://github.com/NVlabs/edm4    �'Fcs`t���||_||_||_tjd|jdtjd�}d||j}d|j|}|�d|�dS)Nr�)�start�end�dtype��freqs)	�super�__init__�num_channels�
max_positions�endpoint�torch�arange�float32�register_buffer)�selfr
rrr5��	__class__��A/home/dufour/Documents/diff_plonk/models/positional_embeddings.pyrs6zPositionalEmbedding.__init__cCs4t�||j�}tj|��|��gdd�}|�|j�S)Nr	��dim)r�outerr7�cat�cos�sin�tor)r�x�outrrr�forwardszPositionalEmbedding.forward)rF��__name__�8__module__�__qualname__�__doc__rr"�
__classcell__rrrrrs9rcs*eZdZdZd�fdd�	Zdd�Z�ZS)�FourierEmbeddingr�cs(t���|�dt�|d�|�dS)Nr10r)rrrr�randn)rr
�scalerrrr"s11zFourierEmbedding.__init__cCs<|�dtj|j�|j��}tj|��|�	�gdd�}|S)Nrr	r)12�ger�np�pir13rrrrrr)rr rrrr"&szFourierEmbedding.forward)r*r#rrrrr)sr))r�torch.nn�nn�numpyr.�Modulerr)rrrr�<module>s14