深度学习算法 做算法需要哪些数学知识?
做算法需要哪些数学知识?
这是什么样的算法。例如,大数据需要概率论和数理统计的知识。
机器学习:线性代数、数值分析、优化、概率论、随机过程等
密码学:线性代数、抽象代数、代数几何等
图形和图像处理、视觉分析、游戏引擎:将使用线性代数和空间几何知识。
许多其他算法可分为离散数学,包括图论、组合数学和其他杂项方法。这一类很有代表性。很多工程问题不涉及具体的数学知识,而是依靠逻辑分析影响问题的因素和环节,根据实际情况做有针对性的处理。通常有必要列出所有可能的场景类别,分别检查它们,或者进行一些权衡。典型的是运筹学中的排队论和其他调度优化算法。
要成为算法工程师需要学哪些专业?
学哪个专业太容易了
如果数学和英语好一点,我就不麻烦了。这是最基本的
对于阿里这样的大公司来说,你至少需要985或者211所名牌大学
你可以问我关于电脑的问题
我会定期更新视频科学
数学对于电脑算法编程非常重要。我将主要从以下两个方面来解释为什么它如此重要
数学和算法编程需要很强的逻辑思维能力。程序代码的逻辑结构、连接方式和处理方式需要较强的逻辑思维能力。如果你学好数学,有很强的逻辑思维能力,你通常会对算法编程有更深的理解。
这应该是为什么数学和算法编程更相关的一个重要原因。无论是计算机的底层还是底层,数学知识都处处体现。例如,计算机底层的二进制、机器学习和深度学习的梯度求导、SVD分解、张量分解、PCA特征值、优化问题、密码学的大数分解、概率图模型等都与数学有着密切的关系。我举两个例子来实现
代码实现如下
代码比(float)(1.0/sqrt(x))快4倍,计算性能有了质的飞跃。为此,专门有一篇论文《快速平方根逆》来解释这段代码的数学原理。感兴趣的同学可以找这篇文章学习。
如果不直接使用数学知识和搜索,时间复杂度为O(n),效率较低,很难按照目前的计算机水平进行计算。如果我们知道Brahmagupta–Fibonacci恒等式、Pollard-Rho分解法、二次同余方程的解、欧氏除法等数学知识,那么求解这个问题的时间复杂度就大大降低,结果保证在0.2秒之内。
如果工作是算法岗位,数学更重要,因为机器学习、数据挖掘、NLP等方向的基本原理基本上都离不开数学。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。