陶哲轩:计算机通用方法,往往比深奥的纯数学更能解决问题

科技   2024-11-16 00:03   北京  

来源 | 机器之心

刚刚,著名数学家陶哲轩在个人社交平台更新的几篇帖子,引起大家广泛的共鸣。

陶哲轩用浅显易懂的语言表达了自己对数学的理解与思考心得。 

文中谈到了一个关于「度」的问题,陶哲轩表示在设计系统时,缺乏或者过度的数学分析可能都会适得其反,所以要适度。

有时,我们不需要太过复杂精深的专业知识,大道至简。

对于大多数任务,使用一些相对简单但通用的数学方法,往往比专门设计的算法效果更好。

陶哲轩还提到,在纯数学中,故意忽略一些直觉上看似非常重要的信息非常有帮助。

接下来是陶哲轩帖子全部内容。

掌握一点点的数学知识就能大有裨益。系统的设计不仅仅会因为缺乏足够的数学分析而受到限制,同样也可能因为过度的数学分析而受到阻碍。 

一个常见的例子是网络安全中对密码的要求。从数学上讲,密码要求越复杂(例如,规定最小长度、特殊字符或不重复使用密码),密码就越安全。

然而,如果要求过于复杂,用户和服务提供商可能会寻找绕过复杂要求的方法,比如寻找简单的密码重置或恢复方式,或者将密码存储在不安全的系统中。这些做法反而可能降低整体系统的安全性,而不是提升它。 

另一方面,只对单一指标(如用户使用密码直接登录系统)进行过度优化,可能会损害更广泛的目标。就如古德哈特定律(Goodhart's law)中所说的,「当压力施于其上以进行控制时,任何观测到的统计恒性都倾向消散。」

粗略的讲,在设计安全性时,直接输入方式的安全性应该加强到与其他输入方式的安全性相当,但超过这个程度的加强反而可能适得其反


举个例子来说,如果一栋建筑的前门有锁,但窗户没有防护,那么再给前门加更多的锁就没有太大意义,这样做甚至可能导致一种危险的虚假安全感。另一方面,如果窗户比前门更难进入,那么在前门上至少加一把锁就很合理。 



在人工智能领域,强化学习之父 Rick Sutton 的「苦涩的教训」(Bitter Lesson)就是这一原则的一个例子。


从直觉上来看,大家往往会认为针对具体任务量身定制算法是最自然的选择,在某些情况下,确实能取得不错的效果。


其实,对于大多数任务,使用一些相对简单但通用的数学方法,如梯度下降和反向传播,往往比专门设计的算法效果更好通用方法不依赖于特定任务的领域知识,而是通过大量的数据和计算资源来训练模型,通常能带来更大的进展。


最近,我看到了有人为传感器网络开发更实惠的模数转换器(ADC),就是这条发现的证明。


传统上,ADC 电路基于经典电气工程原理设计,采用常微分方程(ODE)、共振、傅里叶变换等数学工具来构建高效电路。然而,在一些特定环境(如传感器网络)中,我们的目标是大规模、快速且成本低的方式实现模数转换,同时可以容忍一定的故障率。


在这种情况下,训练神经网络来设计 ADC 电路,不依赖任何专业领域的知识(如傅里叶分析),反而是更好的方法。


这并不是说领域知识毫无用处 —— 例如,物理信息神经网络在许多物理领域的表现可以远超标准神经网络 —— 关键在于了解在什么情况下,应该运用多少领域知识。



在纯数学中,一个有效的解题方法是故意忽略一些直觉上看似非常重要的信息。比如,在分析数论中,许多进展都是通过把像素数这样的「重要」数学对象转化为看起来更加简单、结构较少的形式来实现的。这样做可以让我们更容易找到解决问题的途径。


抽象也需要把握一个度。如果抽象得过头,就会丢失关键信息,反而无法解决问题;而如果抽象得恰到好处,问题就会变得更加清晰,从而找到合适的技巧去解决它。在此过程中甚至可以做出一些看似不太合理的变换,让解题思路更加灵活起来。


我有时会开玩笑说,应用数学家只需要掌握每本纯数学研究生教材的前两章,之后的章节对他们可能帮助不大(甚至可能有负面作用)。


另一方面,正是寻找第 3 到第 12 章的过程,才使得前两章至臻完美、具有广泛实用性的瑰宝。



在读完陶哲轩的这段见解后,有人评论道:这些建议非常有价值,不论是对于哪种问题,都要做到: 


  • 简化细节,直到看到更宏观的问题结构。
  • 判断是否已有针对同类问题的解决方案。
  • 或者判断这个一般性问题类是否过于笼统,或者是否过于具体。



参考链接:

https://mathstodon.xyz/@tao/113482950431855749

深度学习与NLP
专注深度学习、NLP相关技术、资讯,追求纯粹的技术,享受学习、分享的快乐。
 最新文章