最全数据科学C/C++机器学习库整理,再也不用百度搜了
C++在数据科学及大数据中到底有多重要?
引言和动机--为什么是C++?C++是动态负载平衡、自适应缓存、开发大型数据框架和库的理想选择 。 谷歌的MapReduce , MunGDB , 下面列出的大多数深度学习库都是用C++实现的 。 以超低延迟和极高吞吐量著称的Scylla , 使用C++作为Apache Casand and Amazon DynDoDB的替代者进行编码 。
C++作为编程语言(包括内存管理、性能特性和系统编程)的一些独特优势 , 绝对是开发快速可扩展的数据科学和大数据库最有效的工具之一 。
此外 , Julia(由麻省理工学院开发的一种编译的交互式语言)正在成为Python在科学计算和数据处理领域的潜在竞争对手 。 其快速处理速度、并行性、静态以及动态键入和用于插入库的 C++ 绑定功能 , 简化了开发人员/数据科学家集成和使用 C++ 作为数据科学和大数据库的工作 。
【最全数据科学C/C++机器学习库整理,再也不用百度搜了】1. 来自谷歌AI的TensorFlow
由 Google 开发的热门深度学习库 , 它拥有自己的工具、库和社区资源生态系统 , 使研究人员和开发人员能够轻松构建和部署 ML 支持的应用程序 。
官方文档:
GitHub:
2. Berkeley(伯克利)的Caffe
伯克利视觉和学习中心开发了用于快速功能嵌入或 Caffe C++卷积架构的深度学习框架 。
GitHub:
3. 微软认知工具包 (CNTK)
微软认知工具包是一个统一的深度学习工具包 , 它通过定向图帮助将神经网络翻译为一系列计算步骤 。
GitHub:
4. mlpack 库
mlpack是一个快速、灵活的机器学习库 , 用 C++编写 , 提供具有 Python 绑定、Julia 绑定和 C++ 类的最先进的机器学习算法 。
GitHub:
5. DyNet
动态神经网络工具包(支持动态计算图形)或 DyNet 是一种用 C++ (在 Python 中具有绑定)编写的高性能神经网络库 , 可以在 CPU 或 GPU 上高效运行 。 它支持自然语言处理、图形结构、强化学习等 。
GitHub:
6. Shogun
Shogun 是一个开源机器学习库 , 它提供广泛的高效和统一的机器学习方法 , 如多种数据表示、算法类和通用工具的组合 , 用于快速原型设计数据管道 。
GitHub:
7. FANN
快速人工神经网络(FANN)是C语言中的多层人工神经网络 , 支持完全连接和稀疏连接的网络 。 它支持固定点和浮点中的跨平台执行 。 此外 , 它还支持基于拓扑的不断发展训练和基于反传播的DL模型培训 。
GitHub:
8. OpenNN
开放神经网络 (OpenNN) 是一个开源 (C/C++) 神经网络高性能库 , 用于高级分析 , 支持分类、回归、预测等 。
GitHub:
9. SHARK库
Shark 是一个快速、模块化、通用的开源机器学习库 (C/C++) , 用于应用和研究 , 支持线性和非线性优化、基于内核的学习算法、神经网络以及各种其他机器学习技术 。
GitHub:
10. Armadillo
Armadillo 是一个线性代数 (C/C++) 库 , 其功能类似于 Matlab 。 该库以快速将研究代码转换为生产环境、模式识别、计算机视觉、信号处理、生物信息学、统计学、计量经济学等而著名 。
文章插图
11. Faisis
faiss:此库(C/C++)用于高效相似性搜索和密集向量聚类 。 它包含以任何大小的向量集进行搜索的算法 , 这些向量可能不适合 RAM 中的矢量集 。 它还支持通过 CUDA 提供的可选 GPU 和可选 Python 接口 。
GitHub:
12.随机森林
XGBoost – 并行优化的通用梯度提升库 。
GitHub:
ThunderGBM – 用于 GPU 上的 GBDTs 和随机森林的快速库 。
GitHub:
LightGBM – 基于决策树算法的快速、分布式、高性能梯度提升(GBDT、GBRT、GBM 或 MART)框架 , 用于排名、分类和许多其他机器学习任务 。
GitHub:
CatBoost – 决策树库上的通用梯度提升 , 具有开箱即用的分类功能支持 。 它易于安装 , 包含快速推理实现 , 并支持 CPU 和 GPU(甚至多 GPU)计算 。
GitHub:
14. 推荐系统
Recommender(推荐) – 一个 C 语言库 , 使用协作过滤(CF)进行产品推荐/建议 。
GitHub:
混合推荐系统 – 基于scikit学习算法的混合推荐系统 。
GitHub:
15. 自然语言处理
BLLIP 解析器 -- BLLIP 自然语言解析器(也称为查尼亚克 -约翰逊解析器) 。
GitHub:
colibri-core -- C++库、命令行工具和 Python 绑定 , 用于快速、高效记忆地提取和处理基本语言结构(如 n-gram 和 skiagram) 。
- 查询|数据太多容易搞混?掌握这几个Excel小技巧,办公思路更清晰
- 黑莓(BB.US)盘前涨逾32%,将与亚马逊开发智能汽车数据平台|美股异动 | US
- 健身房|乐刻韩伟:产业互联网中只做单环节很难让数据发挥大作用
- V2X|V2X:确保未来道路交通数据交换的安全性
- 短视频平台|大数据佐证,抖音带动三千万就业,视频手机将成生产力工具?
- 权属|从数据悖论到权属确认,数据共享进路所在
- 统计|多久才能换一次手机?统计机构数据有点意外
- 发展|大数据解读世界互联网大会·互联网发展论坛!
- 网购|黑色星期五及网购星期一大数据出炉 全球第三方卖家销售额超48亿美元
- Veeam|Veeam让企业数据拥有“第二次生命”