C++在统计数据自然科学及大统计数据中究竟有多关键?
结语和意图–为什么是C++?
C++是动态用户端、自适应缓存、合作开发小型统计数据构架和库的平庸选择。Google的MapReduce,MunGDB,上面列举的绝大多数广度自学库都是用C++实现的。以超长延后和很高客运量闻名的Scylla,采用C++做为Apache Casand and Amazon DynDoDB的继任者进行代码。
C++做为C词汇(包括缓存管理、操控性特性和系统程式设计)的一些独有竞争优势,当然是合作开发加速可扩充的统计数据自然科学和大统计资料库最有效率的辅助工具之一。
此外,Julia(由斯坦福大学合作开发的一种校对的互动式词汇)正在成为Python在自然系统分析和统计信息处理应用领域的潜在性竞争对手。其加速反应速度、并行处理、动态以及动态点选和用作填入库的 C++ 存取机能,精简了合作开发者/统计数据自然生物学家软件系统和采用 C++ 做为统计数据自然科学和大统计资料库的工作。
1. 源自GoogleAI的TensorFlow
由 Google 合作开发的炙手可热广度自学库,它保有自己的辅助工具、库和店庄生态系,使研究相关人员和合作开发者能够随心所欲构筑和布署 ML 支持的插件。
非官方文件格式:https://www.tensorflow.org/lite/microcontrollers/library
GitHub:https://github.com/tensorflow/serving
2. Berkeley(康奈尔大学)的Caffe
康奈尔大学听觉和自学中心合作开发了用作加速机能内嵌或 Caffe C++传递函数构架的广度自学构架。
GitHub:https://github.com/intel/caffe
3. Google知觉软件包 (CNTK)
Google知觉工具包是一个标准化的广度自学软件包,它通过或非图协助将数学模型译者为一连串排序关键步骤。
GitHub:microsoft/CNTK
4. mlpack 库
mlpack是一个加速、灵活的机器自学库,用 C++编写,提供具有 Python 存取、Julia 存取和 C++ 类的最先进的机器自学算法。
GitHub:mlpack/mlpack
5. DyNet
动态数学模型软件包(支持动态排序图形)或 DyNet 是一种用 C++ (在 Python 中具有存取)编写的高操控性数学模型库,可以在 CPU 或 GPU 上高效运行。它支持自然词汇处理、图形结构、强化自学等。
GitHub:https://github.com/clab/dynet
6. Shogun
Shogun 是一个开源机器自学库,它提供广泛的高效和标准化的机器自学方法,如多种统计数据表示、算法类和通用辅助工具的组合,用作加速原型设计统计数据管道。
GitHub:shogun-toolbox/shogun
7. FANN
加速人工数学模型(FANN)是C词汇中的多层人工数学模型,支持完全连接和稀疏连接的网络。它支持固定点和浮点中的跨平台执行。此外,它还支持基于拓扑的不断发展训练和基于反传播的DL模型培训。
GitHub:libfann/fann
8. OpenNN
开放数学模型 (OpenNN) 是一个开源 (C/C++) 数学模型高操控性库,用作高级分析,支持分类、回归、预测等。
GitHub:Artelnics/opennn
9. SHARK库
Shark 是一个加速、模块化、通用的开源机器自学库 (C/C++),用作应用和研究,支持线性和非线性优化、基于内核的自学算法、数学模型以及各种其他机器自学技术。
GitHub:Shark-ML/Shark
10. Armadillo
Armadillo 是一个线性代数 (C/C++) 库,其机能类似于 Matlab。该库以加速将研究代码转换为生产环境、模式识别、排序机听觉、信号处理、生物信息学、统计学、计量经济学等而著名。
11. Faisis
faiss:此库(C/C++)用作高效相似性搜索和密集向量聚类。它包含以任何大小的向量集进行搜索的算法,这些向量可能不适合 RAM 中的矢量集。它还支持通过 CUDA 提供的可选 GPU 和可选 Python 接口。
GitHub:facebookresearch/faiss
12.随机森林
https://github.com/zhufangzhou/RandomForesthttps://github.com/bjoern-andres/random-forest13. Boosting
XGBoost – 并行优化的通用梯度提升库。
ThunderGBM – 用作 GPU 上的 GBDTs 和随机森林的加速库。
LightGBM– 基于决策树算法的加速、分布式、高操控性梯度提升(GBDT、GBRT、GBM 或 MART)构架,用作排名、分类和许多其他机器自学任务。
CatBoost– 决策树库上的通用梯度提升,具有开箱即用的分类机能支持。它易于安装,包含加速推理实现,并支持 CPU 和 GPU(甚至多 GPU)排序。
14. 推荐系统
Recommender(推荐) – 一个 C 词汇库,采用协作过滤(CF)进行产品推荐/建议。
混合推荐系统 – 基于scikit自学算法的混合推荐系统。
15. 自然词汇处理
BLLIP 解析器 — BLLIP 自然词汇解析器(也称为查尼亚克 -约翰逊解析器)。
colibri-core— C++库、命令行辅助工具和 Python 存取,用作加速、高效记忆地提取和处理基本词汇结构(如 n-gram 和 skiagram)。
CRF++ — 用作分段/标记顺序统计数据的条件随机字段 (CLF) 的开源实现和其他自然词汇处理任务。[已弃用]
CRFsuite— CRFifsuite 是用作标记顺序统计数据的条件随机字段 (CLF) 的实现。[已弃用]
CRF 模型— 基于不同广度自学的 CRF模型。frog –为荷兰语合作开发的基于缓存的NLP套件:PoS 标记器、lemmatizer、依赖分析器、NER、浅层解析器、形态分析仪。
MeTA— ModErn 文本分析是一个 C++ 统计数据自然科学软件包,有助于挖掘大文本统计数据,包括文本标记化,包括解析树、主题模型、分类算法、图形算法、词汇模型、多线程算法等深层语义机能。
MIT信息提取软件包 — C、C++ 和 Python 辅助工具,用作命名实体识别和关系提取
ucto— 用作各种词汇的 Unicode 感知正则表达式标记器、辅助工具和C++库,支持 FoLiA 格式。
16. 统计数据流挖掘
StreamDM: 适用作挖掘支持以下算法的大统计数据流。
SGD 自学者和感知器:
朴素贝叶斯CluStreamHoeffding决策树Bagging流KM ++统计数据产生器:
HyperplaneGeneratorRandomTreeGeneratorRandomRBFGeneratorRandomRBFEventsGenerator17. 统计数据结构/图形/动态程式设排序法
https://github.com/TheAlgorithms/C-Plus-Plus
18. 通用机器自学
Darknet— Darknet是一个开源数学模型构架,用 C 和 CUDA 编写,支持 CPU 和 GPU 排序。
cONNXr— ONNX 运行时以纯 C (99) 编写,零依赖关系集中在小型内嵌式设备上。对机器自学模型进行推理,无论您采用哪个构架进行训练。易于安装和校对无处不在,即使在非常旧的设备。
BanditLib — 一个简单的多臂Bandit库。[已弃用]
CUDA — 这是一个加速 C++/CUDA 实现传递函数广度自学
DeepDetect— 一个用 C++ 11编写的机器自学API和服务器。它使最先进的机器自学易于采用并软件系统到现有插件中。
分布式机器自学软件包 (DMTK)— Google的分布式机器自学(参数服务器)构架。在多台机器上启用小型统计数据集的训练模型。与它捆绑的当前软件包括:LightLDA 和分布式(多感)字内嵌。
DLib — 一套 ML 辅助工具,设计为易于在其他应用中安装。
DSSTNE— 由亚马逊创建的软件库,用作采用 GPU 训练和布署广度数学模型,该软件库强调速度和扩充性,而不是实验灵活性。
DyNet — 动态数学模型库与具有动态结构的网络很好地工作,这些网络可对每个训练实例进行更改,用Python中的存取编写C++。
Fido — 用作内嵌式电子和机器人技术的高度模块化 C++ 机器自学库。
igraph — 通用图形库。
英特尔DAAL— 由英特尔合作开发并针对英特尔构架进行优化的高操控性软件库。库为统计数据分析的所有阶段提供了算法构筑块,并允许以批处理,联机和分布式模式处理统计数据。
libfm — 一种通用方法,可以通过特征工程模拟绝大多数分解模型。
MLDB— 机器自学统计资料库是为机器自学而设计的统计资料库。通过RESTful API发送命令以存储统计数据,采用SQL探索统计数据,然后训练机器自学模型,并将其公开为API。
mlpack — 可扩充的C ++机器自学库。
MXNet— 具有动态,可感知突变的Dataflow Dep Scheduler的轻量,便携式,灵活的分布式/移动广度自学;适用作Python,R,Julia,Go,Javascript等。
proNet-core— 通用网络内嵌构架:成对表示优化Network Edit。
PyCUDA — CUDA的Python接口
ROOT — 模块化的自然科学软件构架。它提供了处理大统计信息处理,统计分析,可视化和存储所需的所有机能。
shark— 一个加速、模块化、机能丰富的开源 C++ 机器自学库。
Shogun — 机器自学辅助工具箱。
sofia-ml — 加速增量算法套件。
Stan — 一种概率C词汇,利用汉密尔顿蒙特卡洛采样实现完整的贝叶斯统计推断。
Timbl— 一种软件包/ C ++库,实现了几种基于缓存的自学算法,其中IB1-IG是k最近邻分类的实现,而IGTree是IB1-IG的决策树近似,常用作NLP。
Vowpal Wabbit(VW)— 一个加速的核心自学系统。
Warp-CTC — 在CPU和GPU上加速并行地实现连接主义时间分类(CTC)。
ThunderSVM — 在GPU和CPU上的加速SVM库。
LKYDeepNN— 仅标头的 C++11 数学模型库。低依赖性,本地繁体中文文件格式。
xLearn— 高操控性,易于采用且可扩充的机器自学套件,可用作解决大规模的机器自学问题。 xLearn对于解决大规模稀疏统计数据上的机器自学问题特别有用,这在Internet服务(例如在线广告和推荐系统)中非常常见。
Featuretools –一个用作自动特征工程的库。它擅长采用可重复采用的特征工程“基元”将事务和关系统计数据集转换为用作机器自学的特征矩阵。
skynet— 用作自学数学模型的库,具有C接口,在JSON中设置了网。用C ++编写,并采用Python,C ++和C#进行存取。
Feast— 用作管理,发现和访问机器自学机能的机能存储。 Feast可为模型训练和模型服务提供一致的特征统计数据视图。
Hopsworks— 具有AI的统计数据密集型平台,具有业界首个开源机能存储。 Hopsworks Feature Store既提供了用作基于Apache Hive进行培训和批处理的机能库,又为在线插件提供了基于MySQL Cluster的机能服务统计资料库。
Polyaxon — 一个可重现和可扩充的机器自学和广度自学的平台。
sara— C ++排序机听觉库,具有易于理解且高效的排序机听觉算法实现。 [Mozilla Public License版本2.0]
ANNetGPGPU — 基于GPU(CUDA)的人工数学模型库。 [LGPL]
btsk— 游戏行为树入门套件。 [zlib]
Evolving Objects — 基于模板的ANSI-C++演化排序库,可协助您加速地编写自己的随机优化算法。 [LGPL]
frugally-deep— 只采用C++中的 KARAS 模型的头文件库。[MIT]
Genann — C中的简单数学模型库。[zlib]
MXNet— 具有动态,可感知突变的Dataflow Dep Scheduler的轻量,便携式,灵活的分布式/移动广度自学;适用作Python,R,Julia,Scala,Go,Javascript等。
PyTorch — 具有强大GPU加速机能的Python中的张量和动态数学模型。
Recast / Detour –(3D)导航网格生成器和探路器,主要用作游戏。 [zlib]
tiny-dnn — 在C++11中仅有标头,无依赖项的广度自学构架。 [BSD]
Veles— 用作加速广度自学插件合作开发的分布式平台。 [Apache]
Kaldi — 语音识别软件包。 [Apache]
19. 排序机听觉
CCV — 基于 C/缓存/核心排序机听觉库,一个现代排序机听觉库。
VLFeat— VLFeat 是一个开放和便携式的排序机听觉算法库,它具有 Matlab 辅助工具箱。
DLib — DLib有C++和Python接口,用作人脸检测和训练一般对象检测器。
EBLearn— Eblearn 是一个面向对象的 C++库,实现各种机器自学模型 [弃用]
OpenCV— OpenCV 具有C++、C、Python、Java 和 MATLAB 接口,并支持 Windows、Linux、Android 和 Mac 操作系统。
VIGRA — VIGRA 是一种通用的C++排序机听觉和机器自学库,用作采用 Python 存取实现任意维数。
Openpose— 一个实时多人关键点检测库,用作身体、面部、手和脚的评估。
20. Facebook 研究的FlashLight
FlashLight是一个加速、灵活的机器自学库,完全由Facebook AI Research Speech团队以及Torch和Deep Speech的创建者以C++编写而成。
GitHub:facebookresearch/flashlight
21. 阿里巴巴的MNN(移动数学模型)
MNN 是一个高效、轻量级的广度自学构架。它支持广度自学模型的推理和培训,具有业界领先的设备推理和训练操控性。
Gitee:Gitee 极速下载/mnn
22. Facebook 研究的Habitat-SIM
Habitat-SIM (C++) 库允许在高度逼真的和高效的 3D 模拟器中培训体现的 AI 代理 (虚拟机器人), 然后再将学到的技能转移到现实中。它采用动态统计数据集(例如 ImageNet、COCO、VQA)与 AI,其中代理通过从中自学在现实环境中工作。
GitHub:facebookresearch/habitat-sim
–END–
这应该是遍布世界各地的统计数据自然科学C++机器自学库汇整了
如果大家觉得有用,提过点赞同、珍藏哈~