从数学层面推导最经典的机器学习算法,涉及的Python库有:Numpy/Scipy/matplotlib/Pandas/scikit-learn/libSVM/LDA/NLTK
每个算法模块从三个方面着手:(1)弄懂原理;(2)自己动手实现;(3)使用已有机器学习库做效果对比。
1、机器学习中的数学基础Taylor展式的应用
常见概率分布与共轭分布
最大似然估计
中心极限定理及其应用
大数定理及其应用
Lagrange凸优化
2、Python及其数学/机器学习库的使用机器学习算法类别
机器学习应用的一般流程
解释器Python2.7与IDE:Anaconda/Pycharm
numpy/scipy/matplotlib/panda库的介绍和典型使用
举例:SVD用于图像处理
3、回归线性回归
高斯分布
Logistic回归
最大似然估计
梯度下降算法:BGD与SGD
特征选择与过拟合
4、回归实践机器学习sklearn库介绍
Ridge回归、LASSO
Logistic/Softmax回归
回归代码实现和调参
数据可视化
5、决策树和随机森林熵、联合熵、条件熵、KL散度、互信息
最大似然估计与最大熵模型
ID3、C4.5、CART详解
决策树的评价
预剪枝和后剪枝
Bagging
随机森林
6、随机森林实践手写随机森林实践
调用开源库函数完成随机森林
数据结构的综合使用
gini系数
7、提升提升为什么有效
Adaboost算法
加法模型与指数损失
梯度提升决策树GBDT
8、xgboost自己动手实现GBDT
xgboost库介绍
Taylor展式与学习算法
xgboost应用于实践
9、SVM线性可分支持向量机
软间隔的改进
损失函数的理解
核函数的原理和选择
SMO算法
10、SVM实践libSVM代码库介绍
原始数据和特征提取
手写随机森林实践
调用开源库函数完成SVM
SVM、Logistic回归、随机森林三者的横向比较
11、聚类各种相似度度量及其相互关系
K-means与K-Medoids及变种
AP算法/LPA算法及其应用
密度聚类DBSCAN/DCluster(Science2014)
谱聚类SC
聚类评价和结果指标
12、聚类实践动手自己实现K-means
K-Means++算法原理和实现
并查集的实践应用
密度聚类的代码实现
使用开源机器学习包完成聚类
13、EM算法最大似然估计
Jensen不等式
朴素理解EM算法
精确推导EM算法
EM算法的深入理解
混合高斯分布
14、EM算法实践多元高斯分布的EM实现
分类结果的数据可视化
EM与聚类的比较
主题模型pLSA与EM算法
15、主题模型LDA贝叶斯学派的模型认识
共轭先验分布
Dirichlet分布
Laplace平滑
Gibbs采样详解
16、LDA实践停止词和高频词
动手自己实现LDA
LDA开源包的使用和过程分析
Metropolis-Hastings算法
MCMC
LDA与word2vec的比较
17、隐马尔科夫模型HMM概率计算问题
前向/后向算法
HMM的参数学习
Baum-Welch算法详解
Viterbi算法详解
18、HMM实践动手自己实现HMM用于中文分词
多个语言分词开源包的使用和过程分析
文件数据格式UFT-8、Unicode
停止词和标点符号对分词的影响
前向后向算法计算概率溢出的解决方案
EM算法和MLE的优劣比较
发现新词和分词效果分析