史上最强:numpy实现全部机器学习算法
点击上方“小白学视觉”,选择加"星标"或“置顶”
重磅干货,第一时间送达
来自于加州伯克利大学的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+ 优先扫描
9. 非参数模型
Nadaraya-Watson 核回归
k 最近邻分类与回归
10. 预处理
离散傅立叶变换 (1D 信号)
双线性插值 (2D 信号)
最近邻插值 (1D 和 2D 信号)
自相关 (1D 信号)
信号窗口
文本分词
特征哈希
特征标准化
One-hot 编码/解码
Huffman 编码/解码
词频逆文档频率编码
11. 工具
相似度核
距离度量
优先级队列
Ball tree 数据结构
传送门:https://github.com/ddbourgin/numpy-ml
下载1:OpenCV-Contrib扩展模块中文版教程
在「小白学视觉」公众号后台回复:扩展模块中文教程,即可下载全网第一份OpenCV扩展模块教程中文版,涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。
下载2:Python视觉实战项目52讲
在「小白学视觉」公众号后台回复:Python视觉实战项目,即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目,助力快速学校计算机视觉。
下载3:OpenCV实战项目20讲
在「小白学视觉」公众号后台回复:OpenCV实战项目20讲,即可下载含有20个基于OpenCV实现20个实战项目,实现OpenCV学习进阶。
交流群
欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器、自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN、算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~
史上最强:numpy实现全部机器学习算法相关推荐
- 英伟达发布史上最强GPU,却叫停了自动驾驶车路测
作者 | DavidZh 出品 | AI科技大本营(公众号ID:rgznai100) 当地时间 3 月 27 日,英伟达在美国圣克拉的 GTC 大会上推出多款产品. ▌显卡扩容,史上最强的 DGX-2 ...
- 苹果史上最强芯片竟然是个“组装货”!iPhone SE涨价,13系列是真绿了
金磊 明敏 博雯 发自 凹非寺 量子位 | 公众号 QbitAI 今年的苹果春季发布会,库克依旧线上"高能传送". 而在此前一波火热的"发布M2芯片"预测声中, ...
- 苹果:两个 M1 Max 拼一块儿,“史上最强 PC 芯片”M1 Ultra 就出来了!
苹果打造最强 PC 芯片教程:拿两个 M1 Max 拼一块,最强的 M1 Ultra 就诞生了! 整理 | 郑丽媛 出品 | CSDN(ID:CSDNnews) 今日凌晨,苹果春季发布会如期而至.由于 ...
- 刚刚,史上最强Apollo3.5在CES发布!暗藏百度无人驾驶7大黑科技武器
雷刚 发自 凹非寺 量子位 报道 | 公众号 QbitAI Wow,wow,wow~ 2019CES大展已开幕,1月8日的Westgate酒店宴会厅现场,感叹声此起彼伏. 这是在百度Apollo C ...
- 史上最强GAN:训练费10万起,现在免费体验,画风鬼畜又逼真
夏乙 郭一璞 安妮 晓查 发自 亚龙湾 量子位 报道 | 公众号 QbitAI ?好消息!好消息! 9月底轰动业界的史上最强GAN,也就是最高动用512个TPU训练的BigGAN,Demo已经正式放 ...
- 史上最强吃鸡电脑配件更新!这张显卡都能买一套房子了
玩<绝地求生>的玩家都知道,没有一台好的电脑是吃不了鸡的,所以一台 高端的吃鸡电脑是非常重要的.而这里面最重要的就是显卡,1060级别的显卡是标配,3G的显然不行,得要6G才完全施展的开, ...
- 谷歌发布史上“最强大脑”——可以控制和操作机器人的AI模型
谷歌发布了一款被誉为史上"最强大脑"的人工智能模型PaLM-E (Parameter-efficient Language Model with Explicit Memory) ...
- 遗传算法matlab_史上最强的MATLAB自学网站,你收藏了吗???
各位小伙伴可点击此处,即可进入到优化算法交流地官方账号主页(推荐),谨防上当受骗. hello,大家好!这几天是全国大学生数学建模竞赛的比赛时间,首先预祝各位参赛的同学能够取得好成绩.今天,网上浏览到 ...
- 苹果史上最强的ARM芯片来了!这次的MacBook是真香了!!!
点击上方"程序员News",选"星标"公众号重磅干货,第一时间到达 一年一度的双十一来了,全民都是在买买买,线上线下都是打折活动,吃的喝的穿的样样都有折扣.但是 ...
- “史上最强春节档”来袭!数据告诉你这几部影片最值得看
导读:随着春节脚步的临近,想必各位读者都已经开始规划幸福的春节长假该如何度过.阖家团聚,探亲访友,与好久没见的好基友一起谈天说地,怼天怼地,想想都是让人感到幸福. 除此之外,每年的春节档电影都会如约而 ...
最新文章
- tensor和模型 保存与加载 PyTorch
- C和指针之函数之归以字符形式按顺序打印数字的每位数字(递归和非递归)
- 1.13编程基础之综合应用_14求满足条件的3位数
- TX2开发板Ubuntu16.04安装中文输入法
- 设计模式之观察者Observer
- 基于韦尔奇·鲍威尔法对图着色 含c++代码
- JetBrains 提供面向开发人员的免费开源字体 Mono
- 大淘客cms源码修改二次开发实现淘京拼三合一功能
- 禁止Unity3D中的物体碰撞后旋转
- mysql建表测试_测试必备mysql技能2:mysql建表
- 四、Echart图表 之 颜色color配置项大全
- python用for循环求和1到100_python使用for循环计算0-100的整数的和方法
- 浮点型数据规范以及规格化与非规格化数据(更新:原文疑问已解)
- html怎么修改td 的宽度,互联网常识:htmltd怎么设置宽度
- 开启和关闭远程Windows系统3389端口
- 我相信希望,我相信明天~~
- Word 批量转 PDF 方法, 杜绝耍手段的交费软件!
- JD面试Pass的挫败感
- Python 实现三维姿态估计遮挡匹配预测
- 字节跳动应用性能监控帮助客户Java OOM崩溃率下降80%