标题这句话来自著名经济学家约翰·梅纳德·凯恩斯(John Maynard Keynes)。他在讨论经济决策时强调,面对复杂的现实世界,精确性并不总是现实或必要,尤其当精确性带来误导时,反而不如“大致的正确”更为实际和有用。
数学建模的核心在于用数学工具来解释、预测复杂的现实问题。这个过程就像给现实世界做一个“压缩包”:我们不可能捕捉到所有细节,但如果能抓住关键,就能获得有用的答案。著名统计学家乔治·博克(George Box)的一句话总结了数学建模的精髓:“所有模型都是错的,但有些是有用的。” 这里的重点就在于“有用”——模型不必完美,只要能帮助我们理解和决策,就已经达到了目的。
模型的简化和假设
现实世界复杂无比,试图构建一个无懈可击的数学模型往往是不可能的,甚至是徒劳的。比如,天气预报。即便现代气象模型考虑了无数变量,仍然无法长期精准预测,因为天气系统本质上是混沌的——一丁点的误差都会导致截然不同的结果。在这种情况下,模型越复杂,误差放大的可能性就越大。
于是,建模时我们常常做出一些大胆的简化和假设,比如假设流体“不可压缩”或者经济中的“理性人”行为。这些假设显然和现实不符,但它们让我们能够从复杂问题中提取出关键信息,形成“大致正确”的结论,而不是陷入无尽的细节中。正如奥卡姆剃刀所说:“如无必要,勿增实体。” 简化反而让模型更有用。
复杂性与不确定性
在建模时,不仅要考虑复杂性,还要面对不确定性。像流行病学模型SIR,它假设每个人的行为是均匀的,感染率也是固定的。这听起来非常简化,甚至不太现实,但在新冠疫情初期,它为公共卫生决策提供了有效的参考。相比之下,更复杂的代理模型(ABM)可能更加精确,但反而因为数据需求过高、计算复杂度过大,无法及时提供实用的预测。
正因为如此,我们要明白:一个“大致正确”的模型能帮我们看清问题的整体趋势,而追求绝对的精确性,可能会让我们陷入无法避免的误差中。比如,气象学中的概率预报模型并不告诉你具体会不会下雨,而是告诉你下雨的概率是多少,这种含有不确定性的预测比一个“精确”却有可能错得离谱的结果更实用。
从哲学上来看,数学建模体现了一种实用主义的思维方式,也反映了一种对世界的态度:我们不追求“完美”的答案,而是寻找“有用”的解决方案。 尤其是在面对不确定性时,简化和近似往往能让我们抓住关键,而非沉迷于细枝末节的精确。
神经网络可以计算任何函数的可视化证明
最新一年的诺贝尔物理学奖和化学奖颁给了与AI有关的科学家。而这里的AI很大程度上依赖神经网络算法。
神经网络,作为现代人工智能的基石,最神奇的地方之一,就是它能够逼近任何函数。这个性质页被称为普遍逼近定理。换句话说,无论这个函数有多复杂、多奇特,只要给神经网络足够的神经元、足够的层数,它都能够很好地计算出近似值。那么,这究竟是怎么做到的呢?本篇文章参考《深入浅出神经网络与深度学习》一书,给出可视化证明的思路。
一个复杂的函数
神经网络的本质可以理解为一系列数学操作。对于输入,通过一层层的线性加权求和和非线性激活函数,网络最终输出一个 。
我们先给一个复杂的函数,比如:
这个函数包含了多项式、正弦、余弦等多种成分。若要手动计算它在每个点的值,显然是个麻烦事。现在我们要尝试用神经网络来近似计算这个函数。
一个简单的神经网络
为了理解这个过程,咱们先来看一个简单的例子。设想一个输入层、一个隐藏层和一个输出层的神经网络,如下图所示:
输入 (x) → 隐藏层 (h1, h2) → 输出 (y)
隐藏层由两个神经元组成,分别记为 和 ,输出层只有一个神经元 。每个神经元的计算方式都一样:首先它会对输入做一个加权求和,再通过一个非线性函数进行“激活”,比如最常用的 sigmoid 函数:
这样,神经元的输出就从一个简单的线性组合变成了一个非线性值。这种非线性是神经网络能够逼近复杂函数的关键。
下面是具体的数学表达:
假设输入为 ,从输入层到隐藏层的权重分别为 和 ,偏置为 和 。
隐藏层第一个神经元 :
激活函数(Sigmoid)的输出为:
隐藏层第二个神经元 :
激活函数(Sigmoid)的输出为:
输出层接收隐藏层两个神经元 和 的输出作为输入,权重为 和 ,偏置为 。
经过激活函数(Sigmoid)的输出为:
近似阶跃函数
为了进一步理解,我们可以通过可视化的方式观察神经网络是如何逐步近似函数的。
改变偏置
每个神经元有两个重要参数:权重和偏置。先来看偏置的作用。假设输入是一个简单的 值,输出是通过 sigmoid 函数计算的非线性值。增加偏置会让 sigmoid 函数的曲线向左移动,减小偏置则会让曲线向右移动。
通过调整偏置,可以让神经元在输入的不同位置产生不同的响应。
调整权重
接下来,调整权重。增大权重时,sigmoid 函数的曲线会变得更陡,趋向于阶跃函数;减小权重时,曲线变得更加平滑、宽松。
比如,当我们将权重设得非常大时,神经网络的输出就接近于一个阶跃函数。
阶跃函数能够很好地表示区间内的急剧变化,而神经网络可以通过多个这样的阶跃函数来逼近复杂的非线性函数。
近似隆起函数
现在,假设我们要用神经网络来近似上面提到的那个复杂函数 。首先,我们可以通过一对隐藏神经元来生成一个“隆起函数”(bump function)。这实际上是两个相邻的阶跃函数相加。每个阶跃函数有一个确定的开始点和结束点,通过调节神经元的权重和偏置,可以精确控制这个隆起函数的位置和形状。
为了更准确地逼近 ,我们需要多个这样的隆起函数。通过添加更多的隐藏神经元,可以使得每个神经元生成一个隆起函数,然后将它们组合起来,最终逼近 的每一部分。每一个隐藏神经元所负责的区间就是函数的某个局部区域。
提升逼近能力
随着你往神经网络里增加更多的隐藏神经元,隆起函数的数量也随之增加。这样,神经网络的逼近能力就越来越强,输出的曲线也就越来越接近目标函数。通过增加隐藏神经元数量,并细化每个神经元的隆起函数形状,几乎可以达到任意的逼近精度。
这一点在普遍逼近定理中得到了严谨的证明。定理指出,只要神经网络有一个隐藏层,并且隐藏神经元的数量足够多,它就能够逼近任意的连续函数,不管这个函数多么复杂。
多输入和多输出的情况
上面的例子只处理了单个输入和输出的情况,但在实际应用中,神经网络往往会有多个输入和输出。例如,当我们想要训练一个网络来识别图像,输入可能是一张包含数百万像素的图片,输出则是一个分类标签。这种多输入多输出的情况,同样可以通过神经网络实现。
每个输入都对应一个权重,神经元对每个输入进行加权求和后,再通过非线性激活函数进行处理。多个输入共同作用时,神经网络会学会如何从输入的复杂模式中提取出关键信息,进而输出一个我们想要的结果。
尽管普遍逼近定理告诉我们,神经网络可以逼近任何连续函数,但它并不意味着我们总能轻易地构造出这样的神经网络。实际应用中,训练一个能够高效计算目标函数的神经网络需要依赖大量的数据和优化技巧。神经网络的表现也会受到计算资源、网络架构、训练数据质量等多种因素的影响。
2024 年诺贝尔物理学奖揭晓,瑞典皇家科学院宣布将该奖项授予 John J. Hopfield 和 Geoffrey E. Hinton,以表彰他们在人工神经网络领域的基础性发现和发明。这一成就为现代机器学习的快速发展奠定了坚实的基础。
这再次证明了人工智能,尤其是神经网络技术,在现代科技中的重要性。Hopfield 和 Hinton 的突破性研究为今天的人工智能和机器学习奠定了坚实的基础。神经网络的普遍逼近定理告诉我们,尽管计算机无法像人类那样思考,但通过合理的网络结构和算法,机器可以接近并模仿复杂的学习和记忆过程。
在未来,随着计算能力的提升和算法的不断优化,神经网络的潜力将会进一步释放。无论是技术创新还是科学研究,人工智能都将在各个领域中发挥举足轻重的作用,推动人类进入智能时代的崭新篇章。
标签:输出,大致,优于,函数,偏置,神经网络,精确,输入,神经元 From: https://blog.csdn.net/Gabriel100yi/article/details/143171654