人工智能是一个非常早而且宽泛的概念。后来人工智能逐渐具体化,机器学习是人工智能最主要的一个分支,以此来实现人工智能。后来随着机器学习和电脑的发展,人们又提出了神经网络算法,这个算法可以模拟人类的大脑决策过程,所以得到了长足的发展,现在依旧非常火。最近一段时间人工智能呼之欲出,更多的人随之研究,因而提出了更好的算法,深度学习算法。深度学习算法和神经网络算法都是模仿人类的大脑细胞,不同之处在于深度学习算法的神经网络层数非常的多,所以称为深度学习。
机器学习算法种类很多主要是:线性回归,Logistic 回归,线性判别分析,分类和回归树,朴素贝叶斯,K 最近邻算法,学习向量量化,支持向量机,袋装法和随机森林,Boosting 和 AdaBoost,反向传递神经网络,图论推理算法,回归树(Classification And Regression Tree, CART), ID3 (Iterative Dichotomiser 3), C4.5,人工神经网络,重要的人工神经网络算法包括:感知器神经网络(Perceptron Neural Network), 反向传递(Back Propagation), Hopfield网络,自组织映射(Self-Organizing Map, SOM)。学习矢量量化(Learning Vector Quantization, LVQ)。深度学习,常见的深度学习算法包括:受限波尔兹曼机(Restricted Boltzmann Machine, RBN), Deep Belief Networks(DBN),卷积网络(Convolutional Network), 堆栈式自动编码器(Stacked Auto-encoders)。
对于几乎所有机器学习算法,无论是有监督学习、无监督学习,还是强化学习,最后一般都归结为求解最优化问题。因此,最优化方法在机器学习算法的推导与实现中占据中心地位。对于机器学习算法,最后基本上都可以推导出一个最优解的公式,对于这样的算法,可以直接使用数学公式求解出最优解,对于不能这样计算的公式,可以使用像倒数这样的工具。还有一种算法是启发式优化算法,这样的算法就是完全不使用公式来计算,只是用经验方法来计算。
费马定理,拉格朗日乘数法,KKT条件。这三个给出一个最优化问题精确的公式解,也称为解析解,一般是理论结果。
梯度下降法,动量项,AdaGrad算法,RMSProp算法,AdaDelta算法,Adam算法,随机梯度下降法,牛顿法,拟牛顿法,可信域牛顿法,分治法,坐标下降法,SMO算法,分阶段优化,动态规划算法。他们是在要给出极值点的精确计算公式非常困难的情况下,用数值计算方法近似求解得到最优点。
启发式算法以仿自然体算法为主,主要有蚁群算法、模拟退火法、神经网络启发式算法。简单启发式算法:贪心算法,局部搜索,和爬山算法。元启发式算法:禁忌搜索,模拟退火,遗传算法,蚁群算法,粒子群算法。超启发式算法。