除了 Python ,这些语言写的机器学习项目也很牛

Python 由于本身的易用优势和强大的工具库储备,成为了在人工智能及其它相关科学领域中最常用的语言之一。尤其是在机器学习,已然是各大项目最偏爱的语言。

其实除了 Python ,也不乏有开发者用其他语言写出优秀的机器学习项目。在此,列出其中一些个人认为值得关注的开源机器学习项目,比如C、C++、Go、Java、Javascript、PHP、Ruby、Objective C、Swift、Scala等等,看看人工智能的语言适配性吧~~~

➤ 1、C

Darknet —— 神经网络框架

https://github.com/pjreddie/darknet

Darknet 是一个用 C 和 CUDA 编写的开源神经网络框架。它快速,易于安装,并支持 CPU 和 GPU 计算。

CCV —— 计算机视觉库

https://github.com/liuliu/ccv

CCV 是 C-based/Cached/Core Computer Vision Library 的简称, 它是一个现代的计算机视觉库。

CCV 是一种以应用驱动的算法库,比如对静态物体(如人脸)的快速检测算法、对某些不容易定位物体(如猫)的准确检测算法、艺术文本的检测算法、长期目标的跟踪算法和特征点检测算法。

➤ 2、C++

CNTK —— 深度学习工具包

https://github.com/Microsoft/CNTK

微软出品的开源深度学习工具包,它把神经网络描述成一个有向图的结构,叶子节点代表输入或者网络参数,其他节点计算步骤。

CNTK 不仅使深度神经网络(DNN)、卷积神经网络(CNN)、循环神经网络(RNN)和长短时记忆单元(LSTM)的实现变得非常容易,还支持多个 GPU 组合、服务器自动分化和并行的随机梯度下降(SGD)学习。

Caffe —— 深度学习框架

https://github.com/BVLC/caffe

Caffe 是一个清晰而又高效的深度学习框架,模型与相应优化都是以文本形式而非代码形式给出,并给出了模型的定义、最优化设置以及预训练的权重,方便立即上手。同时,它能够运行最棒的模型与海量的数据,也能很方便扩展到新的任务和设置上。

Kaldi —— 语音识别工具包

https://github.com/kaldi-asr/kaldi

Kaldi 是用 C ++ 编写的语言识别工具包,旨在供语音识别研究人员使用,且易于修改和扩展。它在设计之初就尽可能地以最通用的形式提供的算法,以保证其可扩展性。

➤ 3、Go

CloudForest —— 决策树组合算法

https://github.com/ryanbressler/CloudForest

纯 Go 编写的快速、灵活、多线程的决策树,允许一些相关的算法用于具有缺失值的异构数据的分类、回归、特征选择和结构分析。它可以实现更快的训练时间,非常适合现代处理器来学习二进制。

➤ 4、Java

CoreNLP —— 自然语言处理工具

https://github.com/stanfordnlp/CoreNLP

coreNLP 是斯坦福大学开发的一套关于自然语言处理的工具,使用简单功能强大。它可以通过输入原始文本,给出单词的基本形式,它们的词性、公司、人员的名称、解释日期、时间和数量等等。它最初针对英语开发,但现在也已支持中文。

H2O —— 机器学习和预测分析框架

https://github.com/h2oai/h2o-3

H2O 是一个分布式的、基于内存的、可扩展的机器学习和预测分析框架,适合在企业环境中构建大规模机器学习模型。它使用开发者熟悉的界面,可与 Hadoop 和 Spark 等大型数据技术无缝工作。它也提供许多流行算法的实现,例如 GBM、Random Forest、Deep Neural Networks、Word2Vec 等。

Deeplearning4J —— 分布式神经网络库

https://github.com/deeplearning4j/deeplearning4j

Deeplearning4J 是一个使用 Java 和 Scala 编写的分布式神经网络库,集成了 Hadoop 和 Spark ,设计用于运行在分布式 GPU 和 CPU 上的商业环境。它即插即用,方便开发者在 APP 中快速集成深度学习功能。

Deeplearning4j 包括了分布式、多线程的深度学习框架,以及普通的单线程深度学习框架。

➤ 5、Javascript

Natural —— 自然语言处理工具

https://github.com/NaturalNode/natural

node.js 下用的自然语言处理工具,支持词法分析、词干分析、分类、语音、反比文档频数权重评价、WordNet、字符串相似度等处理。

ConvNetJS —— 深度学习库

https://github.com/karpathy/convnetjs

ConvNetJS 是一个基于 JavaScript 的深度学习库,可以让你在浏览器中训练深度网络。它可以帮助深度学习初学者更快、更直观的理解算法通,过一些简单的 Demo 给用户最直观的解释。

➤ 6、PHP

PHP-ML —— 机器学习库

https://github.com/php-ai/php-ml

PHP-ML 是 PHP 的机器学习库,同时包含算法、交叉验证、神经网络、预处理、特征提取等多种特性。要求 PHP 版本 > = 7.0 。

PHP-ML 提供的机器学习算法包括:关联规则学习(Apriori 算法)、分类器(SVC、KNN、贝叶斯)、回归(最小二乘线性回归、支持向量回归)、聚类(KMeans、基于密度的聚类算法)、矩阵运算相关(准确率、混肴矩阵、与分类相关的结论如精确度、召回率、F1 值、支持率)、模型运算管道(Pipeline)、神经网络(多层感知机)等。

➤ 7、Ruby

Treat ——自然语言处理框架

https://github.com/louismullie/treat

Treat 是一个自然语言处理和计算语言学的工具包。Treat 项目旨在为 Ruby 构建一个语言和算法均不可知的 NLP 框架,支持文档检索、文本分块、分段和标记化等任务,自然语言解析,词性标注,关键字提取和命名实体识别。

Classifier —— 通用分类器模块

https://github.com/cardmagic/classifier

Classifier 是可用贝叶斯算法及其他分类法的通用分类器模块。贝叶斯分类器的分类原理是通过某对象的先验概率,利用贝叶斯公式计算出其后验概率,即该对象属于某一类的概率,选择具有最大后验概率的类作为该对象所属的类,具有准确、快速、内存要求适当等特点。

➤ 8、Objective C

MLPNeuralNet —— 多层感知器

https://github.com/nikolaypavlov/MLPNeuralNet

MLPNeuralNet 是适用于 iOS 和 Mac OS X 的快速多层感知器神经网络库。它使用矢量操作和硬件加速(如果可用)构建在苹果加速框架之上,通过训练有素的神经网络预测新的示例。

➤ 9、Swift

Bender —— 机器学习框架

https://github.com/xmartlabs/Bender

Bender 是 MetalPerformanceShaders 之上的一个抽象层(abstraction layer),可用于操作神经网络,旨在更轻松地在 iOS 上运行预训练的网络。它可以让你轻松使用卷积、池化、全连接和一些规范化等最常见的层,从而轻松地定义和运行神经网络。

目前 Bender 有一个用于 TensorFlow 的适配器(adapter),其可以加载带有变量的图(graph),并将其「翻译」成 Bender 的层(layer)。

Swift AI —— 深度学习库

https://github.com/Swift-AI/Swift-AI

Swift AI 是一个完全由 Swift 编写的高性能 AI 和机器学习库,包含用于人工智能和科学应用的常用工具集,支持卷积神经网络、循环神经网络、遗传算法库、快速线性代数库、信号处理库等。这些工具采用先进的并行处理技术,专门针对 iOS 和 OS X 硬件进行了优化,目前支持所有的 Apple 平台,并计划推出 Linux 版本支持。

➤ 10、Scala

Breeze —— 数值处理库

https://github.com/scalanlp/breeze

Breeze 是一个数值处理库,是 ScalaNLP 的核心库,包括线性代数、数值计算和优化,目标是实现通用、干净、强大,且不牺牲性能(高效)的机器学习方法。

ScalaNLP 包含 Breeze 和 Epic(一个高性能的统计解析器和结构化预测库)。

BIDMach —— 机器学习库

https://github.com/BIDData/BIDMach

BIDMach 是一个速度非常快的机器学习库,支持逻辑回归、K-means、矩阵分解、随机森林、LDA 等。它是BIDMat 的一个姊妹项目,BIDMat 是一个矩阵库。

BIDMach 在一些评测中甚至跑出了比 Spark 还好的结果。

➤ 11、.NET

numl —— 机器学习框架

http://numl.net/index.html

numl 是一个小巧的,包含比较多的机器学习算法类库,支持监督式和非监督式学习。支持很多常见的机器学习算法,包括 Cluster、KMeans、PCA、DecisionTree、KNN、NaiveBayes、NeuralNetwork 等学习算法,功能强大,同时也包括一些数值计算的实现。

Accord.NET —— 机器学习框架

https://github.com/accord-net/framework/

Accord.NET 为 .NET 提供机器学习、统计、人工智能、计算机视觉和图像处理方法。它可以在 Microsoft Windows、Xamarin、Unity3D、Windows Store 应用,Linux 和移动设备上使用。

在与 AForge.NET 项目合并之后,该框架现在提供了一个用于学习/训练机器学习模型的统一 API ,其易于使用和可扩展。

以上就是小编总结的部分语言的开源项目,如果你有好的资源,欢迎分享给大家。

原文地址

https://my.oschina.net/editorial-story/blog/995524

原文发布于微信公众号 - AI科技大本营(rgznai100)

原文发表时间:2017-07-01

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏AI科技大本营的专栏

NLP通用模型诞生?一个模型搞定十大自然语言常见任务

AI科技大本营按:目前的NLP领域有一个问题:即使是再厉害的算法也只能针对特定的任务,比如适用于机器翻译的模型不一定可以拿来做情感分析或摘要。

12620
来自专栏机器学习算法与Python学习

超参数优化,这些策略了解一下!

当然,并非所有变量对模型的学习过程都一样重要,但是,鉴于这种额外的复杂性,在这样一个高维空间中找到这些变量的最佳配置显然是一个不小的挑战。

71530
来自专栏李春晓的专栏

机器学习:从入门到第一个模型

从入门到第一个模型”差点就成了“从入门到放弃”。本文是机器学习在运维场景下的一次尝试,用一个模型实现了业务规律挖掘和异常检测。这只是一次尝试,能否上线运转还有待...

2.6K20
来自专栏AI研习社

只需连接电脑摄像头,就能用深度学习进行实时对象检测

实时对象检测是一个非常有趣的话题。 我们应如何可靠地检测视频输入中的人和其他现实生活中的物体? 最近我设法构建了一个非常简单的应用程序,只需连接到用户的电脑网络...

19220
来自专栏一名叫大蕉的程序员

大数据计数原理1+0=1这你都不会算(九)No.64

大数据计数原理1+0=1这你都不会算(一)No.47 <- HashSet 大数据计数原理1+0=1这你都不会算(二)No.50 ...

22260
来自专栏人工智能头条

可能是史上最全的Tensorflow学习资源汇总

在之前的Tensorflow系列文章中,我们教大家学习了Tensorflow的安装、Tensorflow的语法、基本操作、CNN的一些原理和项目实战等。本篇文章...

13430
来自专栏CreateAMind

OpenAI Baselines: ACKTR &amp; A2C

原文地址:https://blog.openai.com/baselines-acktr-a2c/

17150
来自专栏PPV课数据科学社区

【学习】详解数据挖掘十大经典算法!

国际权威的学术组织the IEEE International Conference on Data Mining (ICDM) 2006年12月评选出了数据挖...

47370
来自专栏玉树芝兰

如何用Python和深度神经网络发现即将流失的客户?

想不想了解如何用Python快速搭建深度神经网络,完成数据分类任务?本文一步步为你展示这一过程,让你初步领略深度学习模型的强大和易用。

27230
来自专栏美团技术团队

【AI in 美团】深度学习在美团搜索广告排序的应用实践

AI(人工智能)技术已经广泛应用于美团的众多业务,从美团App到大众点评App,从外卖到打车出行,从旅游到婚庆亲子,美团数百名最优秀的算法工程师正致力于将AI技...

19830

扫码关注云+社区

领取腾讯云代金券