TensorFlow机器学习(原书第2版)
上QQ阅读APP看书,第一时间看更新

4.3 什么是钟形曲线?预测高斯分布

钟形曲线或正态曲线是描述符合正态分布的数据的常用术语。数据最大的Y值出现在中间或X的统计分布均值上,数据较小的Y值出现在X值的头尾两部分。我们也称其为高斯分布,以德国著名数学家卡尔·弗里德里希·高斯命名,他提出了描述正态分布的高斯函数。

我们可以在Python中使用NumPy的np.random.normal方法从正态分布的数据中产生随机的采样点。下面的方程展示了高斯分布:

方程包括参数μ(mu)和σ(sig),分别作为分布的均值和标准差。musig是模型的参数,如你所见,TensorFlow将为这些参数学习恰当的值,作为模型训练的一部分。

验证一下使用这些参数来生成钟形曲线,你可以将清单4.3中的代码输入到一个名为gaussian.py的文件中,然后运行它生成绘图。清单4.3代码生成的可视化钟形曲线如图4.4所示。注意我选择的mu值在-1到2之间。你可以在图4.4中看到曲线的中心点,以及1到3之间的标准差(sig),因此曲线的宽度也应该与这些值相对应。代码绘制了120个线性间隔的点,X值在-3到3之间,Y值在0到1之间。根据musig的正态分布,输出如图4.4所示。

图4.4 3条钟形曲线均值在-1和2之间(中心点应该在这些点附近),标准差在1和3之间。曲线由-3和3之间线性分布的120个点构成

清单4.3 生成若干高斯分布并可视化