无标题文章

作者:250-1

链接:https://www.zhihu.com/question/35454260/answer/63794021

来源:知乎

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

算法相关的数学书。。。“相关”两个字就是搞算法的人的大坑(根本没个头),一开始认为算法需要的只是一些实用的数学(这里微积分线性代数这些过于基础的就不说了),,,于是初等数论,组合数学,图论等等就出现了,这些数学知识相关的算法大部分是关于处理“数据结构”(等类似问题)那种问题(语言表达不好,不过这些问题很多是智力题);后来才知道算法的应用场景才很大程度决定到底需要哪些数学,,,所以才是大坑!资源优化模型(“资源”不仅指物,也指人)经常需要运筹学,密码算法的设计很难不用到抽象代数(比起写一堆数论符号或矩阵表示来说,抽代那几个小巧玲珑的符号可爱太多了),图像算法数值计算算法的知识简直用到骨子里去了,人工智能或者机器学习或者数据挖掘的残暴程度几乎囊括所有基础数学与应用数学的基础知识,比如泛函分析,变分学,控制论,微分方程与动力系统以及相关的最优化理论(工程计算或者神经网络设计离不开这些),这些还只是分析学的范畴与延伸应用(范畴这个词只是通俗意思哦~),,,ML,AI,DM都很难离开统计学,,,统计学啊统计学,就不得不提到概率,,,我听过一些非数学专业的吐槽,为什么概率没了换成了测度?好处是离散型和连续型的随机变量不用分开讲了,麻烦是。。。你懂的,又要挖个坑埋新东西了。。。统计学,随机过程等延伸就不说了(类似的还有模糊数学与信息论,信息论必须了解一点,不然会脱离这个时代的),因为大家熟知的几何还没出现呢~~~几何这个东西吧,对很多人来讲,坐标系的引入和微积分的发展逐渐让人淡忘了还有这么一门学科,估计不少大学生对几何的认识只停留在中学几何和大学解析几何程度,毕竟微积分和线性代数实在太强大了,,,可惜啊,微积分和线性代数一结合处理的几何问题大多离不开与某种量的计算,也就是“可计算”量相关的问题,大声吼一句——几何还有什么?拓扑学出现,虽然不能完全认为拓扑学就是另一种几何学,但是这门课的最实用的地方我目前只能想到与几何相关的部分。。。基础拓扑学没啥计算,看起来和算法不太搭噶,,,不过基础的修补完了,拓扑学就会有新花样——微分拓扑和代数拓扑,,,搞算法的多少可能听过流形学习(manifold learning)这个概念吧,这也算是近年来比较伟大的产物了,据我了解可能是本世纪才真正茁壮发展的东西。。。前面的那些数学学科不够过瘾的话,就来玩玩这些拓扑课吧,流形作为最实用的拓扑空间已经渐渐在机器学习界占据了不小的地位,特别是图像算法,怎么用尽情百度吧,只有你想不到的,没有它用不到的~微分流形的一大好处是其上存在度量,于是就有可计算的花样,嗯没错,微分几何可以推广了(有些微分几何课只是微积分课程的几何延伸,难度不足以虐人,体现不出数学的博大精深),感谢微分几何可以推广,不然就没有广义相对论这么伟大的东西了,几何还没完,不加点代数不过瘾,数学就是这么前仆后继,李群(Lie group)和李代数闪亮登场,它俩不是人,但能虐人!我记得有本国产书籍《李群机器学习》,里面大致介绍了一些李群李代数在机器学习中的应用,同时包含了Finsler几何(好像还有Riemannian几何)的应用,那本书内容丰富,还有同调代数和范畴论的理论以及应用(这个范畴才是代数里的范畴~),这个同调代数建议学完代数拓扑(里面有同调代数)再了解吧,前者还是能给出一些同调的直观理解,对学习纯代数有帮助的。。。说了这么多,其实还没完,刚刚提到了一点物理,又得挖个坑了,搞基础计算机科学与算法的肯定要了解计算理论,什么DNA计算,膜计算以及最近几年很火的量子计算,,,这个量子计算,就我浅薄的理解,等于披着物理羊皮的数学狼,相关算法实在太多。。。搞算法研究的人用到的数学都是千奇百怪,我一个研究生搞量子控制的朋友只是简单地说了一些张量代数与李代数等等经常用到的概念,另一个研究生搞细胞自动机的朋友告诉了我经常会用到拓扑动力系统与符号动力系统的知识,废话就不多说了~~~

综上所述,你想搞算法搞得越深,数学就越是无底洞(相信很多算法工程师一定有这个感觉)。其他领域不了解,算法设计分析这一块的东西深究到底就是数学,想玩好就要学数学,,,你真正要学的不是算法,而是数学,而且永远学不够,你要用一种雄壮的感觉,因为算法的深入会直接为你背上人类文明最耀眼的光芒之一——数学!

PS:有些冷门的数学分支一样很有用,数理逻辑就是其中之一,计算理论和数理逻辑关系很大,,,哦哦,还有泛代数(universal algebra),反正我觉得这门课挺有趣的,还有很多,我说的只是冰山一角,坐等各路大神发言~

最后,年轻人加油!!!

你可能感兴趣的:(无标题文章)