向数据中添加高斯噪声

什么是高斯噪声

高斯噪声既是符合高斯正态分布的误差。一些情况下我们需要向标准数据中加入合适的高斯噪声会让数据变得有一定误差而具有实验价值。高斯噪声还有一些其他用途但是我不太了解,这里我是为了实现多项式拟合正弦曲线,生成数据时,采用了添加高斯噪声的方法。

添加高斯噪声

  • 实际上python的random库中集成了高斯正态分布,可以直接使用(越来越爱python了)。
  • 一般我们都选择0作为高斯噪声的均值,方差的选择还没有很好地方法,只能通过不断修改并画出图看一看效果。后续有好的方法会更新,也欢迎大神前来指导
  • 下面提供一段示例代码
# 在0-2*pi的区间上生成100个点作为输入数据
X = np.linspace(0,2*np.pi,100,endpoint=True)
Y = np.sin(X)

# 对输入数据加入gauss噪声
# 定义gauss噪声的均值和方差
mu = 0
sigma = 0.12
for i in range(X.size):
    X[i] += random.gauss(mu,sigma)
    Y[i] += random.gauss(mu,sigma)

# 画出这些点
pt.plot(X,Y,linestyle='',marker='.')
pt.show()
  • 运行效果图
  • 这里写图片描述

你可能感兴趣的:(python,机器学习,python,random,机器学习)