专栏名称: 大数据与机器学习文摘
分享大数据技术相关文章和资源
目录
相关文章推荐
CDA数据分析师  ·  【干货】2步学会构成分析,找到业务增长关键 ·  昨天  
大数据分析和人工智能  ·  人到中年才懂:能上班是福气 ·  4 天前  
天池大数据科研平台  ·  谷歌反击,最强Gemini ... ·  2 天前  
51好读  ›  专栏  ›  大数据与机器学习文摘

史上最强:numpy 实现全部机器学习算法

大数据与机器学习文摘  · 公众号  · 大数据  · 2021-01-14 21:25

正文

(点击 上方公众号 ,可快速关注)

来源:SOTOM数据科学


来自于加州伯克利大学的David Bourgin 使用Numpy实现了几乎全部的机器学习算法,真正实现了手撸ML的愿景。多少“调包侠”的愿望都被这位小哥实现了!


该项目超过3万行代码,除了算法本身,还有很多的数据预处理代码!


地址:https://github.com/ddbourgin/numpy-ml



手撸算法的目的在于能够更好的学习和深入理解算法,而不是要替代已有的框架,毕竟成熟的框架在效率和精准度上都已经得到验证。


我们来看下已经实现的算法:


1. 高斯混合模型


  • EM 训练


2. 隐马尔可夫模型


  • 维特比解码

  • 似然计算

  • 通过 Baum-Welch/forward-backward 算法进行 MLE 参数估计


3. 隐狄利克雷分配模型(主题模型)


  • 用变分 EM 进行 MLE 参数估计的标准模型

  • 用 MCMC 进行 MAP 参数估计的平滑模型


4. 神经网络


4.1 层/层级运算


  • Add

  • Flatten

  • Multiply

  • Softmax

  • 全连接/Dense

  • 稀疏进化连接

  • LSTM

  • Elman 风格的 RNN

  • 最大+平均池化

  • 点积注意力

  • 受限玻尔兹曼机 (w. CD-n training)

  • 2D 转置卷积 (w. padding 和 stride)

  • 2D 卷积 (w. padding、dilation 和 stride)

  • 1D 卷积 (w. padding、dilation、stride 和 causality)


4.2 模块


  • 双向 LSTM

  • ResNet 风格的残差块(恒等变换和卷积)

  • WaveNet 风格的残差块(带有扩张因果卷积)

  • Transformer 风格的多头缩放点积注意力


4.3 正则化项


  • Dropout

  • 归一化

  • 批归一化(时间上和空间上)

  • 层归一化(时间上和空间上)


4.4 优化器


  • SGD w/ 动量

  • AdaGrad

  • RMSProp

  • Adam


4.5 学习率调度器


  • 常数

  • 指数

  • Noam/Transformer

  • Dlib 调度器


4.6 权重初始化器


  • Glorot/Xavier uniform 和 normal

  • He/Kaiming uniform 和 normal

  • 标准和截断正态分布初始化


4.7 损失


  • 交叉熵

  • 平方差

  • Bernoulli VAE 损失

  • 带有梯度惩罚的 Wasserstein 损失


4.8 激活函数


  • ReLU

  • Tanh

  • Affine

  • Sigmoid

  • Leaky ReLU


4.9 模型


  • Bernoulli 变分自编码器

  • 带有梯度惩罚的 Wasserstein GAN


4.10 神经网络工具


  • col2im (MATLAB 端口)

  • im2col (MATLAB 端口)

  • conv1D

  • conv2D

  • deconv2D

  • minibatch


5. 基于树的模型


  • 决策树 (CART)

  • [Bagging] 随机森林

  • [Boosting] 梯度提升决策树


6. 线性模型


  • 岭回归

  • Logistic 回归

  • 最小二乘法

  • 贝叶斯线性回归 w/共轭先验


7.n 元序列模型


  • 最大似然得分

  • Additive/Lidstone 平滑

  • 简单 Good-Turing 平滑


8. 强化学习模型


  • 使用交叉熵方法的智能体

  • 首次访问 on-policy 蒙特卡罗智能体

  • 加权增量重要采样蒙特卡罗智能体

  • Expected SARSA 智能体

  • TD-0 Q-learning 智能体

  • Dyna-Q / Dyna-Q+ 优先扫描







请到「今天看啥」查看全文