计算机金融类专业对数学要求高吗的要求高吗?

个人认为对于计算机专业的学生来说,数学好是需要的,但是这个数学不是我们所熟悉的“数学”,而是数学思维。数学思维对于我们的学习和工作来说是非常的重要的,因为它不仅可能增强我们的逻辑思维能力,还可以让我们统筹大局,做到“心中有数”,因此,如果锻炼我们的数学思维能力是非常重要的。作为在互联网行业从业十年的老司机,我带过不少成功上岸大厂的学生,当然就也跟他们讨论过各种话题。曾经就和一个学生聊过计算机专业需不需要数学特别好这个话题。他现在在某个大厂做software engineer,工作了两年了。本科和研究生都是学计算机的,所以对CS也算是了解挺透的。他高中的时候曾经打过几年数学竞赛,也算是有过一些了解。
对这个问题普遍有几种回答: 一:基础数学能力会对学习计算机专业有极大的帮助,数学在很多计算机领域都占很高的比重。 二:计算机就是把人类数学加到机器中,数学就是加减乘除,所以编程一定要(初中高中大学)数学成绩好。 三:(来自工作后的程序员)每天切图写curd根本没算过什么加减乘除,计算机根本不需要数学,数学辣鸡。
首先个人觉得数学好是需要的,但是这个数学不是我们所熟悉的“数学”。大家普遍理解的计算机专业,就是在电脑上敲符号,就是编程。大家理解的数学就是加减乘除或者稍微高级一点的加减乘除。再或者就是很难得证明题,那些泡在草稿纸里得天才们。而计算机里的数学,不是指三角函数,解析几何,更不是毕达哥拉斯定理,拉格朗日,甚至是麦克斯韦方程,(不,不是凡尔赛),而是数学思维。
不玩文字游戏了,总结出来就是不需要数学成绩好,需要的是有数学思维能力。
很多我的朋友数学都一般,甚至很多外国人数学都不怎么样,学校计算机系的数学必修都靠他们拉低分,(感谢一下),但是不妨碍人家在计算机课上发言踊跃,做Project的时候会用各种新鲜的技术。所以说计算机需要的更多的是数学思维能力,或者 像计算机一样的思考方式。比如说Tuning Machine,你说它是数学吧,它也是,但是它更多的是从计算机的角度思考问题。如果满足条件就进入下一步,然后在各种的state中loop。现实中数学基本不会用到这种方法解决问题,但换做计算机,这个就可以很好的,而且很方便的解决比如String包含的问题。而且,说一句题外话,它也是第三次数学危机的解决方案。
而更多的算法题,更是需要从计算机的方向思考问题。比如Backtracking,dp这些问题。明显不是从正向推理就可以解决的问题。尤其是dp,你需要思考应该从哪里开始,如何把后面和前面的联系在一起,得出关系。再说Backtracking,更是需要考虑从哪一步开始backtrack,如果所有可能都不行,往前一步,应该变哪些条件。这些实际考察的都是你的思维能力,你能不能正确的判断这些条件。有时候,一个等于号都可能成为你是不是会seg fault或者出界的关键。
所以说,如果要成为大神,清晰的思考能力,数学逻辑思维是必不可少的。 那么,它可以怎么培养或者怎么发掘呢?
这个学生刚开始的时候对每道题的了解都不够,经常不知道应该用什么方法,而且当时backtracking,二分法他都不了解,每次碰到都特别怵。后来他跟着我上了一期算法课,才发现是可以找到学习方法的。每个题都有它的特点,看到题的时候有一些方法是需要条件反射反应的。比如遇到Array的题,就要反应二分,不管最后能不能用二分法做出来,都是需要思考的。如果可以的话,就能把时间复杂度降log2。所以说,在系统性学习和自己练习中,这些能力都是可以培养的。
懂数学的CS同学,就像能从场景中洞察规律的乌鸦,它能观察到绿灯行红灯停的规律,并利用好这一规律,利用来往车辆,给自己压核桃吃。而没有数学思维的CS同学,就像学舌的鹦鹉,眼神空洞的学舌“I love U”,身心麻木的敲着LeetCode不知道第几题;而像我,能洞察到题海章术的七句心法,就被学生说是一只通透数学的CS典型乌鸦;
CS世界的业务逻辑,充满数学章法,用数学的眼光,就像音符任何有规律的艺术,你同样会发现其间的逻辑之美。这个学生跟我说,单从我的文本聚类项目,就可以洞察到,CS同学日常的数学之美。
简单的新闻网站为例,首先考虑信息获取,信源的可靠性,我们用数学的思维,通过其引用与被引用量来衡量,并封装为PageRank方法; 而信息高并发的获取,我们用线程池O(1)时间进行线程,以数学思维优化时间;信息的抓取,我们用BFS、结合每轮信息重复率,以数学思维优化抓取计算; 信息的实时同步,我们用Kafka来订阅,而工具本身的设计理念,就是综合机器资源与数据安全,以数学思维实现负载均衡; 信息检索推荐中,用户及物料的profile向量,query与文本的TopK召回,相似文本向量的KNN聚类,都是用数学的思维,抽象的表示对象,用数学的方法,计算业务关系;
总之,整个业务实现工程落地中,无论时间、资源优化,还是指标设定、特征抽象,都离不开凝结了数学思维的宝藏工具箱,及基于数学思维的业务抽象;
总结来说,计算机是需要数学的,但与其说是你的数学能力,或者某项能力强,更多是是需要你的学习能力强。当然,如果你的目标是如果想要成为业界大佬 OR 推动人类的科学认知,数学还是要很好的。今年的求职因为疫情原因可谓格外的惨烈,我们建了一个微信的讨论群,在群里会分享解题方法和面试官的出题思路,还有一些行业的内部信息。进群可以加微信:MSBZ1019,注明知乎 id+发送简历即可。
显然谈不上需要特别好,尤其更偏重coding的话,大可直接说对数学没太几毛钱要求。当然数学功底屌能锦上添花(哪怕你算法学得比同侪们扎实到位些那至少各个面试总有点好处吧),更能大幅提升你作为专业人士的天花板(往大里说理工科都一样,也没啥特殊),这点没啥疑问。实际点说,你如果能在本科阶段,把微积分、线性代数、概率统计、数值优化、离散数学、数论基础(数据结构、算法等就往专业基础课列咯)等数学课能学个明白早就足够吊打国内绝大多数CS和相邻专业的毕业生。集约点你也能直接看下面这样的书(或者像什么具体数学也能看看):总而言之,CS对于数学基础的要求横向比较上我以为没啥值得多吹的,无论是前些年信安热,这些年AI热时期都一样,和各方向工科专业对比并没值得特意强调的地方。我非常非常看不惯知乎和其他网络媒介上一些人有意无意对新人渲染什么CS对数学有极高要求,CS极度烧脑的观点,你们真是搞笑。CS确实能够拿出烧脑的专业课,问题在于理工科谁拿不出来,光CS相邻专业们就能拿一堆,人家大学4年哪个比你们学得轻松了?你们恰恰不谈CS的一大优势就是就算没学好啥数学,靠点过得去的coding水平也能找到像样的工作,甚至别说CS,我大学毕业十几年前的时候,通信、信息、电子、自动化等专业本科还有的人去当大流码农呢,你们想想为啥?至于打基础的几门工程数学,作为电院信院计院之类的背景都不敢多吹逼,俺们低年级学着那点微积分、线代、概率就来吹难,有没有想过人家学着数分、高代、高概的专业们是什么体验,你好意思么,明明你低年级日子好过多了好么。所以不要因为高中数学成绩不出挑就盲目提前不自信,事实上现在很多对数理要求更高的专业往往生源都不如计算机,真要以此类推,这些人是不是该一律提前退学了?当然,有句话是必须要说的,无论读哪个理工科,资质平平的人想在专业方向有所建树,自身努力都是不可少的,态度上你最好要比高中更努力,方法上则要摆脱各种海量刷题和套路,真正突破解决每个知识点,结成知识树(这里不是说做题不重要,做题是检验知识掌握程度的好方法之一,但不用做太多题,更不要追求奇技淫巧的东西,要学会多回味各个知识点,看看自己究竟懂没懂,这比你试卷混多少分重要得多),这个思想准备必须有。

我要回帖

更多关于 金融类专业对数学要求高吗 的文章

 

随机推荐