算法的描述:是对要解决一个问题或要完成一项任务所采取的方法和步骤的描述,包括需要什么数据(输入什么数据、输出什么结果)、采用什么结构、使用什么语句以及如何安排这些语句等。通常使用自然语言、结构化流程图、伪代码等来描述算法。
本经典算法研究系列,如今己写了22篇,13个算法,包括算法理论的研究,算法编程的实现,很多个算法都后续写了续集,如第二个算法:Dijkstra算法,便写了4篇文章。而红黑树系列,则更是最后写了6篇文章,成为了国内最为经典的红黑树教程。
十三个经典算法集锦
一、A*搜索算法
一(续)、A*,Dijkstra,BFS算法性能比较及A*算法的应用
二、Dijkstra算法初探
二(续)、彻底理解Dij kstra算法
二(再续)、Dijkstra算法+fibonacci堆的逐步c实现
二(三续)、Dijkstra算法+Heap堆的完整c实现源码
三、dynamic programming
四、BFS和DFS优先搜索算法
五、红黑树算法的实现与剖析
五(续)、教你透彻了解红黑树
六、教你从头到尾彻底理解KMP算法
七、遗传箅法透析GA本质
八、再谈启发式搜索算法
九、图像特征提取与匹配之SIFT算法
九(续)、sift算法的编译与实现
九(再续)、教你一步一步用c语言实现sift算法、上九(再续)、教你一步一步用c语言实现sift算法、下
十、从头到尾彻底理解傅里叶变换算法、上
十、从头到尾彻底理解傅里叶变换算法、下
十一、从头到尾彻底解析Hash表算法
十二、快速排序算法之所有版本的c/c++实现
十三、通过浙大上机复试试题学SPFA算法
整体来说,机器学习算法可以分为 3 大类:
0.1 监督学习
工作原理:该算法由自变量(协变量、预测变量)和因变量(结果变量)组成,由一组自变量对因变量进行预测。通过这些变量集合,我们生成一个将输入映射到输出的函数。训练过程达到我们设定的损失阈值停止训练,也就是使模型达到我们需要的准确度等水平。
监督学习的例子:回归,决策树,随机森林,KNN,逻辑回归等
0.2 无监督学习
工作原理:在无监督学习算法中,我们没有目标或结果变量来预测。 通常用于不同群体的群体聚类。
无监督学习的例子:Apriori 算法,K-means。
0.3 强化学习
工作原理: 强化学习(reinforcement learning),又称再励学习、评价学习,学习不是单一方法,而是一种机器学习方式,在智能控制机器人及分析预测等领域有许多应用。
强化学习例子:马尔可夫决策过程
通用机器学习算法列表
1. 线性回归
2. Logistic 回归
3. 决策树
4. SVM
5. 朴素贝叶斯
6. KNN
7. K 均值
8. 随机森林
9. 降维算法
10. 梯度提升算法
1.GBM
2.XGBoost
3.LightGBM
4.CatBoost
详细资料在在附件