Warning: This project is deprecated. TensorFlow Addons has stopped development, The project will only be providing minimal maintenance releases until May 2024. See the full announcement here or on github.


Snake activation to learn periodic functions.

Computes snake activation:

\[ \mathrm{snake}(x) = \mathrm{x} + \frac{1 - \cos(2 \cdot \mathrm{frequency} \cdot x)}{2 \cdot \mathrm{frequency} }. \]

See Neural Networks Fail to Learn Periodic Functions and How to Fix It.


x = tf.constant([-1.0, 0.0, 1.0])
<tf.Tensor: shape=(3,), dtype=float32, numpy=array([-0.29192656,  0.        ,  1.7080734 ], dtype=float32)>

x A Tensor.
frequency A scalar, frequency of the periodic part.

A Tensor. Has the same type as x.