数学建模:发现生活中的数学之美
建模,数学,代码和理论研究,机器学习...
古语有云:“数学是科学上的皇冠”,不管是经济学问题还是其他工程为题,学到最后其实做的都是数学,但是很多人并没有具备数学思维。
在上学的时候我有幸参加过几次数学建模竞赛,最后也拿到了国赛和美赛比较好的名次;数学建模是一种锻炼将生活中看似普通问题转化成数学问题的一种能力,这种能力正是现在硕士生或者博士生需要具备的一种能力,所以我说真正的具备了高超数学建模能力的人完全没有去读国内的硕士或者博士,我们从数据挖掘或者机器学习的角度来看,很多Machine Learning 和Data Mining的算法都是数学建模上已有的算法,有些数模的算法可能考虑了更多的转化场景。
数学建模十大算法:
1.蒙特卡洛算法:称为随机性算法,同时通过模型可以来验证模型的正确性。
2.数据处理算法,这些数据处理算法包括数据拟合,参数估计,插值等
3.规划类算法,包括线性规划、非线性规划,二次规划,多元规划等
4.图论算法,图算法包括最短路径,二分图等
5.动态规划,回溯算法,分支治之等计算机算法
6.最优化理论的最优化算法,这类算法包括:模拟退火,神经网络和遗传算法,最优化理论能够在前面的算法的参数更多的优化
7.连续离散化方法,现实世界很多问题是连续问题,但是数学的连续算法并不能很好的解决,所以要使用连续离散方法将连续问题分解成离散方法。
8.数值分析算法,方程求解,矩阵等问题都可以使用数值分析算法进行解决。
9.网格算法和穷举法
10.图像处理算法
同样对比机器学习的十大算法:
1.C4.5是机器学习中的一个分类决策算法,C4.5是ID3决策树的一种改进算法
2.K-means是一种聚类算法,
(注释,机器学习从大的方面来说其实有两种算法,监督学习和非监督学习,聚类和分类)
3.SVM(支持向量机,Suporrt vector machine)是一种监督式的学习算法,主要用于统计分类和回归分析中
4.PageRank:作为谷歌最早的一种排序算法也是非常经典的,因为PR是第一次将文档的重要性作为重要的考量因素
5.最大期望(EM)算法,统计计算中经常用到的在概率模型中寻找参数最大拟然估计的算法,经常用在机器学习和计算机视觉领域的数据集聚(Data Clustering)
4.Apriori算法是一种最有影响的挖掘布尔关联规则频繁项集的算法。
5.AdaBoost算法是一种迭代算法,核心的思想是针对每一个训练集训练不同的分类器(弱分类器),然后将这些弱分类器集合起来,构成一个更强的最终分类器,算法通过改变数据分布来实现的。
6.KNN(K最近邻分类算法)
7.Naive Bayes:在很多的分类模型中,应用最广泛的两种分类模型是决策树模型和贝叶斯模型
8.CART:分类和回归树,CART是Classification and Regression Trees,分类树有两个关键的思想,意识关于递归划分自变量空间的想法,二是用验证数据进行减枝
我们发现数模上培养的对算法的分析能力和机器学习上的有很多重叠的地方,这就是说数模对机器学习能够完全替代的原因。
关注 python开发树莓派学习社区
微信扫一扫关注公众号