甜草莓,不是专家 | 人人都有不知道的东西,讨厌嘲讽类评论 阅读原文 因为当一个信息科学(或者大多科学)问题能被正确归纳进数学框架,数学就能以可靠的、定量的方式提供分析 / 解决思路,甚至可能直接给出答案。可以这么说,数学和数学思维是分析复杂系统 / 各类行为、解决未知问题的最佳工具。 这样的未知问题在信息工业界有很多,甚至有时候解决某些数学问题会带来标志性的大成功。不过业界缺少受过数学训练的人(不论应数还是纯数)来发现和解决问题,所以这可能是目前比较重视的原因。 以边缘计算为例,发现问题中的数学结构能解决原本不容易解决的问题 以近两年的热点,移动边缘计算(Moblie Edge Computing,MEC)为例,众所周知,为了降低用户手机的计算负载来降低电池损耗,手机上的计算任务可以分流(offloading)到云端;同时,为了给用户提供低延迟服务,原本集中化的云计算会下沉到用户边缘设备(比如基站),那么从用户角度看,什么时候怎么做会更好呢? 用户体验质量(QoS)很大程度上是由延迟、电量、数据速率等等因素一起决定的。 在 MEC 体系中,延迟整体会由三部分组成,即手机与基站间的电磁波延迟、手机与基站的计算任务导致的延迟和通信信号 / 信令延迟,三者之间也有部分内在关联。再考虑移动节点的带宽利用效率,内容敏感度(隐私性),电池容量和节点安全,问题会相当复杂。 比较简单粗暴的想法,是当用户需要低延迟的时候把全部计算任务给基站,但是多个用户存在时就很有可能压垮本就不多的基站计算资源。何况,如果把计算任务都放在边缘侧,用户的内容隐私也难以满足。但是如果我们挖掘计算任务本身的数学结构,就会发现计算任务可以用有向无环图来描述为子任务(节点)和任务依赖(边)。 原本简单粗暴的二值决策此时变成了带约束的图优化问题,也有能力据此引入能量,带宽等 QoS 相关的指标约束。当我们发现它的图结构时,利用图论中类似 graph product 这类更适合分布式的计算方法求解就很自然而然了。 这时候优化问题的解就是最终需要的计算分流方案。 如果我们进一步挖掘计算任务的数学结构,就会发现 MEC 问题构建的 hyper graph 大多不是全连通的,而是具有一定稀疏性,这种情况下可以直接用到类似 SBA、Cholmod 之类的稀疏代数库来加速运算。在此程度上,要是能把计算复杂度度降到足够低,或者计算时间降到毫秒以下,那么适应用户 QoS 的 offloading 就可以被工业化应用在边缘计算里。 2. 数学在传统工业中是隐身的,但在信息工业中是半显学 我想上边这个例子足够说明一些问题。大家可能也都发现了,虽然传统工业中也存在很多数学问题,但是科技公司却显得更重视数学,愿意为数学投入精力,个人猜测可能是因为: 目前相当多的信息工业的标志性成果都很依赖数学,我们可以随手举出很多耳熟能详的例子,比如 Google 和它的 Pagerank 算法,深度学习中的 BP 算法,Deepmind 和它的 Alphago,5G 信道编码中的 Polar 码,图像领域的压缩感知等等。 信息科学有很深厚的数学积淀和很多成熟、经过验证的数学模型,可以简化建模过程。 对于传统制造业,流程效率提升百分之 X 确实能带来很多经济效益,但是这些效益没有产生一个标志性的结果,所以相比之下,数学显得「隐身」了。 3. 业界缺乏具备数学思维的人来发现和定义问题,更缺乏能熟练使用现代数学工具的人来解决问题 一般来说,应用数学工作者和行业合作的基本流程遵循以下范式: 确定问题 建立数学模型 分析求解 应用结果 编写软件 调整模型鲁棒性和敏感性适应真实环境 这其中需要耗费很多时间成本、人力物力,数学建模必须有与非数学人士交流,用数学术语翻译真实世界问题的能力,同时还要考虑模型是否简洁优雅,是否直指问题本质,复杂度太高的模型可能无法分析整个系统。但是复杂度太低的模型可能会因为考虑因素太少,无法直接使用,这时候就需要能熟练使用数学工具的人了。 可惜这两种都相当少,工业界又不太可能每遇到新问题都去咨询数学科研人员。这种情况下积累的问题足够多了,自然而然就有了去培养的兴趣。 4. 一个老生常谈的问题,应用数学和基础数学。 我不是做数学的,甚至不能算严格的应用数学,研究方向大概算得上数学应用。不过在我个人看来,数学学科其实有两个推动力,一个来自于数学本身的优雅和逻辑性,大家叫「纯数学」,另外一个来自于现实问题对数学结构的挑战,通过现实问题发展数学框架,大家叫「应用数学」。当然,在此基础上还能延伸出一批「数学应用」,主要是运用数学思想建立更现实的模型,发现问题中的数学结构,进而解决迫在眉睫的问题。 这三者没有什么高低贵贱之分,只是方向侧重不同。就本题而言,我觉得科技互联网公司更重视的其实是介于「应用数学」和「数学应用」之间的工作。比如如果我们把神经网络的发展认为是数学应用,把凸优化的发展认为是应用数学,那么拓扑学的发展就是纯数学。应用数学算不算基础数学?这可能是个见仁见智的问题,要看「基础」到什么程度了。 总之数学思维是共通的,纯数工作者来了也能上手应数,应用数学大发展也会反哺纯数,给纯数带来更多挑战。 (:逃 阅读原文