关于机器学习的三个阶段
931
2022-05-30
本文介绍机器学习的框架指南,基本是免费和开源的。
包括:通用机器学习、自动化机器学习、集成方法、不平衡的数据集、随机森林、极限学习机、内核方法、梯度提升等。
文章结构分为“目录版”和“简介版”。
目录版
1 通用机器学习
scikit-learn - Python 中的机器学习
Shogun - 机器学习工具箱
xLearn - 高性能、易于使用且可扩展的机器学习包
可重复实验平台 (REP) - 人类机器学习工具箱
modAL - Python3的模块化主动学习框架
Sparkit-learn - PySpark + Scikit-learn = Sparkit-learn
mlpack - 一个可扩展的 C++ 机器学习库(Python 绑定)
dlib - 用于在 C++(Python 绑定)中制作真实世界机器学习和数据分析应用程序的工具包
MLxtend - Python 数据分析和机器学习库的扩展和帮助模块
tick - 统计学习模块,特别强调时间相关建模
sklearn-extensions - scikit-learn 小扩展的综合包
civisml-extensions - 来自 Civis Analytics 的 scikit-learn 兼容估计器
scikit-multilearn - python 的多标签分类
tslearn - 专用于时间序列数据的机器学习工具包
seqlearn - seqlearn 是 Python 的序列分类工具包
pystruct - 简单的 Python 结构化学习框架
sklearn-expertsys - 用于 scikit 学习的高度可解释的分类器,生成易于理解的决策规则而不是黑盒模型
skutil - 一组 scikit-learn 和 h2o 扩展类(以及 Python 的插入符类)
sklearn-crfsuite - 受 scikit-learn 启发的 CRFsuite API
RuleFit -规则拟合的实现
metric-learn - Python 中的度量学习算法
pyGAM - Python 中的广义加性模型
luminol - 异常检测和关联库
2 自动化机器学习
TPOT - 自动机器学习工具,使用遗传编程优化机器学习管道
auto-sklearn - 是一个自动化机器学习工具包,是 scikit-learn 估算器的替代品
MLBox - 一个强大的自动化机器学习 python 库。
3 集成方法
ML-Ensemble - 高性能集成学习
brew - Python 集成学习 API
Stacking - 用 Python 编写的简单而有用的堆栈库。
stacked_generalization - 用于机器学习堆叠泛化的库。
vecstack - 用于堆叠的 Python 包(机器学习技术)
4 不平衡的数据集
不平衡学习- 使用各种技术执行欠采样和过采样的模块
不平衡算法- 基于 Python 的算法实现,用于学习不平衡数据。
5 随机森林
rpforest - 随机投影树的森林
随机森林聚类- 使用随机森林的无监督聚类
sklearn-random-bits-forest - 由 (Wang et al., 2016) 编写的随机位森林程序的包装器
rgf_python - 正则化贪婪森林的 Python 包装器
6 极限学习机
Python-ELM - Python 中的极限学习机实现
Python 极限学习机 (ELM) - 一种用于分类/回归任务的机器学习技术
hpelm ![alt text][gpu] - 极限学习机(快速随机神经网络)的高性能实现。
7 内核方法
pyFM - python 中的分解机
fastFM - 分解机库
tffm - 任意阶分解机的 TensorFlow 实现
LiquidSVM - SVM 的实现
scikit-rvm - 使用 scikit-learn API 的相关向量机实现
8 梯度提升
XGBoost ![alt text][gpu] - 可扩展、便携和分布式梯度提升
LightGBM ![alt text][gpu] - 一种快速、分布式、高性能的微软梯度提升
CatBoost ![alt text][gpu] - Yandex 的决策树库上的开源梯度提升
InfiniteBoost - 使用梯度下降构建无限集成
TGBoost - 微小的梯度提升树
简介版
1 通用机器学习
scikit-learn - Python 中的机器学习
一个简单高效的预测数据分析工具;基于 NumPy、SciPy 和 matplotlib 构建 ;开源,可商用 - BSD 许可。
Shogun - 机器学习工具箱
Shogun 是一个开源机器学习库,提供了广泛的高效统一的机器学习方法。
支持多种语言(Python、Octave、R、Java/Scala、Lua、C#、Ruby 等)和平台(Linux/Unix、MacOS 和 Windows)并与其科学计算环境集成。
通过浏览器在云端试用 Shogun 。
高效的实现(从标准到尖端算法),C++ 中的现代软件架构。
多种数据表示、算法类和通用工具的轻松组合,用于数据管道的快速原型设计。
免费软件、基于社区的开发和机器学习教育。
GPLv3 许可证并致力于 BSD 兼容性。
xLearn - 高性能、易于使用且可扩展的机器学习包
xLearn 是一个高性能、易于使用、可扩展的机器学习包,包含线性模型 (LR)、分解机 (FM) 和场感知分解机 (FFM),所有这些都可以用于解决大型- 规模机器学习问题。xLearn 对于解决大规模稀疏数据的机器学习问题特别有用。许多现实世界的数据集处理高维稀疏特征向量,如推荐系统,其中类别和用户的数量在数百万的数量级。
可重复实验平台 (REP) - 人类机器学习工具箱
REP是基于 ipython 的环境,用于以一致和可重复的方式进行数据驱动的研究。
modAL - Python3的模块化主动学习框架
modAL 是 Python3 的主动学习框架,设计时考虑了模块化、灵活性和可扩展性。它建立在 scikit-learn 之上,让我们可以几乎完全自由地快速创建主动学习工作流程。此外,我们可以使用定制的解决方案轻松更换零件,从而轻松设计新颖的算法。
Sparkit-learn - PySpark + Scikit-learn = Sparkit-learn
Sparkit-learn 旨在在 PySpark 上提供 scikit-learn 功能和 API。该库的主要目标是创建一个接近 sklearn 的 API。
mlpack - 一个可扩展的 C++ 机器学习库(Python 绑定)
mlpack是一个直观、快速且灵活的 C++ 机器学习库,可以绑定到其他语言。它旨在成为 LAPACK 的机器学习类比,旨在实现广泛的机器学习方法和功能,作为机器学习研究人员的“瑞士军刀”。除了强大的 C++ 接口,mlpack 还提供命令行程序、Python 绑定、Julia 绑定、Go 绑定和 R 绑定。
dlib - 用于在 C++(Python 绑定)中制作真实世界机器学习和数据分析应用程序的工具包
Dlib 是一个现代 C++ 工具包,包含机器学习算法和工具,用于在 C++ 中创建复杂的软件以解决现实世界的问题。
MLxtend - Python 数据分析和机器学习库的扩展和帮助模块
Mlxtend(机器学习扩展)是一个 Python 库,包含用于日常数据科学任务的有用工具。
tick - 统计学习模块,特别强调时间相关建模
tick是一个用于统计学习的 Python 3 模块,特别强调与时间相关的建模。它是在 3-Clause BSD 许可下分发的。
sklearn-extensions - scikit-learn 小扩展的综合包
Scikit-Learn 扩展 (sklearn_extensions) 是scikit-learn扩展的单一源存储库。它旨在补充 scikit-learn 在添加新预测器和模块方面较慢、更谨慎的方法,并为可能不符合这些标准的 sklearn 兼容模块提供单独的 pip 可安装源。
civisml-extensions - 来自 Civis Analytics 的 scikit-learn 兼容估计器
scikit-multilearn - python 的多标签分类
tslearn - 专用于时间序列数据的机器学习工具包
seqlearn - seqlearn 是 Python 的序列分类工具包
pystruct - 简单的 Python 结构化学习框架
sklearn-expertsys - 用于 scikit 学习的高度可解释的分类器,生成易于理解的决策规则而不是黑盒模型
skutil - 一组 scikit-learn 和 h2o 扩展类(以及 Python 的插入符类)
sklearn-crfsuite - 受 scikit-learn 启发的 CRFsuite API
RuleFit -规则拟合的实现
metric-learn - Python 中的度量学习算法
pyGAM - Python 中的广义加性模型
luminol - 异常检测和关联库
2 自动化机器学习
TPOT - 自动机器学习工具,使用遗传编程优化机器学习管道
TPOT 将通过智能探索数以千计的可能管道来为您的数据找到最佳管道,从而自动化机器学习中最乏味的部分。
auto-sklearn - 是一个自动化机器学习工具包,是 scikit-learn 估算器的替代品
MLBox - 一个强大的自动化机器学习 python 库。
MLBox 是一个强大的自动化机器学习 python 库。它提供以下功能:
快速读取和分布式数据预处理/清理/格式化
高度稳健的特征选择和泄漏检测
高维空间中精确的超参数优化
最先进的分类和回归预测模型(深度学习、堆叠、LightGBM 等)
带有模型解释的预测
详情请参考官方文档
3 集成方法
ML-Ensemble - 高性能集成学习
brew - Python 集成学习 API
Stacking - 用 Python 编写的简单而有用的堆栈库。
stacked_generalization - 用于机器学习堆叠泛化的库。
vecstack - 用于堆叠的 Python 包(机器学习技术)
4 不平衡的数据集
不平衡学习- 使用各种技术执行欠采样和过采样的模块
不平衡算法- 基于 Python 的算法实现,用于学习不平衡数据。
5 随机森林
rpforest - 随机投影树的森林
随机森林聚类- 使用随机森林的无监督聚类
sklearn-random-bits-forest - 由 (Wang et al., 2016) 编写的随机位森林程序的包装器
rgf_python - 正则化贪婪森林的 Python 包装器
6 极限学习机
Python-ELM - Python 中的极限学习机实现
Python 极限学习机 (ELM) - 一种用于分类/回归任务的机器学习技术
hpelm ![alt text][gpu] - 极限学习机(快速随机神经网络)的高性能实现。
7 内核方法
pyFM - python 中的分解机
fastFM - 分解机库
tffm - 任意阶分解机的 TensorFlow 实现
LiquidSVM - SVM 的实现
scikit-rvm - 使用 scikit-learn API 的相关向量机实现
8 梯度提升
XGBoost ![alt text][gpu] - 可扩展、便携和分布式梯度提升
LightGBM ![alt text][gpu] - 一种快速、分布式、高性能的微软梯度提升
CatBoost ![alt text][gpu] - Yandex 的决策树库上的开源梯度提升
InfiniteBoost - 使用梯度下降构建无限集成
TGBoost - 微小的梯度提升树
AI Python 机器学习
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。