摘要 计算机的错误计算(八)探讨了 Sigmoid 函数的导数的计算误差。本节讨论 Tanh函数(双曲正切函数)的导数的计算误差。
Tanh函数,也称为双曲正切函数,是一种在神经网络中常用的激活函数。它的数学表达式为:
.
Tanh函数的导数为:
.
例1. 不妨令 ,并用下列C代码计算:
则在 Visual Studio 2010 环境下,含有17位有效数字的输出结果为:0.90412767556058427e-5;而含有17位正确有效数字的结果为 0.90412767553505711e-5. 这样,计算机的输出中有 7 位错误数字。
即使只考虑前 15 或 16 位数字,错误数字也有五六位。
若在 Python 中使用 numpy 库中函数计算:
则输出为 9.041276755383798e-06,同样有 5 位错误数字。
当 的值越大, 越接近 1,这时,误差越大。
对这个误差,大家怎么看?大语言模型的幻觉(即一本正经的胡说八道)怎么来的?这也许是原因之一。