Вы можете создать свой собственный слой как таковой,
import tensorflow as tf
class noiseLayer(tf.keras.layers.Layer):
def __init__(self,mean,std):
super(noiseLayer, self).__init__()
self.mean = mean
self.std = std
def call(self, input):
mean = self.mean
std = self.std
return input + tf.random.normal(tf.shape(input).numpy(),
mean = mean,
stddev = std)
X = tf.ones([10,10,10]) * 100
Y = noiseLayer(mean = 0, std = 0.1)(X)
Этот код работает в последней версии Tensorflow 2.0.