簡體   English   中英

如何在 Keras 中的輸入數據中添加均勻分布的噪聲?

[英]How to add a noise with uniform distribution to input data in Keras?

我需要在輸入數據中添加量化噪聲。 我經常讀到這些噪音被建模為均勻分布的噪音。

我有一個使用 Keras 實現的編碼/解碼網絡(輸入數據是時間序列原始數據),在 Keras 中實現了一個層,您可以使用它添加高斯噪聲(GaussianNoise 層),我可以使用該層來創建均勻噪聲嗎?

如果沒有,我可以使用其他已實現的層嗎?

您可以這樣創建自己的圖層,

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。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM