数学推导+纯Python实现机器学习算法30:系列总结与感悟

Python机器学习算法实现

Author:louwill

Machine Learning Lab

     

     终于到了最后的总结。从第一篇线性回归的文章开始到现在,已经接近有两年的时间了。当然,也不是纯写这30篇文章用了这么长时间,在第14篇Ridge回归之后中间断更了10个多月,好在今年抽出时间把全部补齐了。

一点总结

     整个系列对常用的、主流的机器学习模型与算法进行了梳理,主题只有两个,一个是数学推导,一个手写实现。因为机器学习原理大多都是由数学支撑,基本的机器学习数学公式推导对于深入掌握机器学习十分重要;另一方面,通过手写实现机器学习算法,深入理解算法细节,进一步提高算法实现的代码能力。

     在完成这项工作的过程中,很多朋友都有问过我,所有的算法是否都是我自己写的。当然不是,作为一名普通的学习者,不可能独自闭门造车的完成这项工作,在公式推导和代码实现过程中,笔者曾大量参考借鉴了各种博客、教材和GitHub相关仓库,总体而言也是一项集成性的工作。还有一个问题就是很多朋友也会问,说好的手写呢,怎么你LightGBM调了包了呢。其实不光是LightGBM调了包,笔者在写支持向量机的时候调用了cvxopt求解二次规划,贝叶斯网络用了pgmpy,CatBoost调用了原生的catboost库,最大熵模型也调用了maxentropy等。一方面是中间确实偷了懒,一方面也是因为部分算法系统过于复杂,一部分未完成的工作会留到下半年继续。

     全部模型和算法整理成思维导图如下:

数学推导+纯Python实现机器学习算法30:系列总结与感悟_第1张图片

     按照模型类型分为监督学习模型、无监督学习模型和概率模型三大类:

数学推导+纯Python实现机器学习算法30:系列总结与感悟_第2张图片

监督模型

数学推导+纯Python实现机器学习算法30:系列总结与感悟_第3张图片

无监督模型

数学推导+纯Python实现机器学习算法30:系列总结与感悟_第4张图片

概率模型

全部30讲如下:

数学推导+纯Python实现机器学习算法1:线性回归

数学推导+纯Python实现机器学习算法2:逻辑回归

数学推导+纯Python实现机器学习算法3:k近邻

数学推导+纯Python实现机器学习算法4:决策树之ID3算法

数学推导+纯Python实现机器学习算法5:决策树之CART算法

数学推导+纯Python实现机器学习算法6:感知机

数学推导+纯Python实现机器学习算法7:神经网络

数学推导+纯Python实现机器学习算法8:线性可分支持向量机

数学推导+纯Python实现机器学习算法9:线性支持向量机

数学推导+纯Python实现机器学习算法10:线性不可分支持向量机

数学推导+纯Python实现机器学习算法11:朴素贝叶斯

数学推导+纯Python实现机器学习算法12:贝叶斯网络

数学推导+纯Python实现机器学习算法13:Lasso回归

数学推导+纯Python实现机器学习算法14:Ridge岭回归

数学推导+纯Python实现机器学习算法15:GBDT

数学推导+纯Python实现机器学习算法16:Adaboost

数学推导+纯Python实现机器学习算法17:XGBoost

数学推导+纯Python实现机器学习算法18:LightGBM

数学推导+纯Python实现机器学习算法19:CatBoost

数学推导+纯Python实现机器学习算法20:随机森林

数学推导+纯Python实现机器学习算法21:最大熵模型

数学推导+纯Python实现机器学习算法22:EM算法

数学推导+纯Python实现机器学习算法23:CRF条件随机场

数学推导+纯Python实现机器学习算法24:HMM隐马尔可夫模型

数学推导+纯Python实现机器学习算法25:kmeans聚类

数学推导+纯Python实现机器学习算法26:PCA降维

数学推导+纯Python实现机器学习算法27:LDA线性判别分析

数学推导+纯Python实现机器学习算法28:奇异值分解SVD

数学推导+纯Python实现机器学习算法29:马尔可夫链蒙特卡洛

数学推导+纯Python实现机器学习算法30:系列总结与感悟

下一步的工作

     下一步,笔者将在30讲的基础上继续进行完善和梳理,在深度上进行挖掘,并将系列整理改写为书稿,预计于明年年初成稿。完整版的代码将继续在我的GitHub进行更新完善,感谢各位关注。GitHub地址如下或者阅读原文:

https://github.com/luwill/machine-learning-code-writing

     另外,对本系列接下来的改写有建议和想法的朋友可以直接加我微信沟通。

数学推导+纯Python实现机器学习算法30:系列总结与感悟_第5张图片

喜欢您就点个在看!

你可能感兴趣的:(数学推导+纯Python实现机器学习算法30:系列总结与感悟)