最牛逼的开源机器学习框架,你知道几个

最牛逼的开源机器学习框架,你知道几个

机器学习毫无疑问是当今最热的话题,它已经渗透到生活的方方面面,在移动互联网中混不懂点机器学习都不好意思,说几个能看的到的,经常用邮箱吧,是不是感觉垃圾邮件比N年前变少了,无聊了和siri聊过天不,想坐一下无人驾驶汽车吗,手累了用脸解个锁,智能化产品推荐是不是让你更懒了。看不到的就更多了:信用卡欺诈监测保证你的交易安全,股票交易/量化投资(知道你的高收益理财怎么来的吗?),手势识别(用过海豚浏览器的手势吗),还有医学分析等等,巨头们为了在未来占领先机,前仆后继的开源他们的机器学习框架,加速了人类进入智能时代的步伐(说什么,机器人?)

Facebook:用于Torch的模块库fbcunn (2015-01-17 开源)

fbcunn可以替代Torch的默认模块,它们构建在Nvidia的cuFFT库(一个基于CUDA的库,用于深度神经网络)之上,可以在更短的时间内训练更大规模的神经网络模型,它对NVIDIA的GPU进行了优化。一部分可以用来训练大型计算机视觉系统。部分模块也可以用来训练处理不同类型数据的模型。既可以进行文本识别、图像识别,也能用于语言模型的训练。部分模块将大型卷积神经网络模型的训练速度提升了23.5倍。

fbcunn基于Fast Training of Convolutional Networks through FFTs这篇论文中的想法构建了这些模块,FAIR(Facebook人工智能实验室)的主任Yann LeCun是论文的合著者之一。与cuDNN相比,在卷积核较小的情况下(3×3),fbcunn的速度提升可达1.84倍;而在卷积核较大的情况下(5×5),速度提升可达23.5倍。

Torch和fbcunn的最早的用途之一:图片分类,它分类过ImageNet的120万张图片,可以参考这个地址:https://github.com/soumith/imagenet-multiGPU.torch

参考: >

https://github.com/torch/

https://github.com/facebook/fbcunn

https://research.facebook.com/blog/879898285375829/fair-open-sources-deep-learning-modules-for-torch/

微软:DMTK(2015-11-16 开源)

DMTK由参数服务器和客户端SDK两部分构成。参数服务器支持存储混合数据结构模型、接受并聚合工作节点服务器的数据模型更新、控制模型同步逻辑;客户端SDK负责维护节点模型缓存(与全局模型服务器同步)、本地训练和模型通讯之间的流水线控制以及片状调度大模型训练。它包含DMTK框架、LightLDA和分布式词向量(Word Embedding)三个组件。

DMTK采用了传统的客户端/服务器架构,有多个服务器实例运行在多台机器上负责维护全局模型参数,而训练例程(routines)则使用客户端API访问并更新这些参数。为了适应不同的集群环境,DMTK框架支持两种进程间的通信机制:MPI和ZMQ。应用程序端不需要修改任何代码就能够在这两种方式之间切换。DMTK支持Windows和Linux两种操作系统。

DMTK则是使用C++编写的,提供了一个客户端API和SDK。 DMTK的官网 对DMTK框架、LightLDA、分布式词向量的应用场景、下载、安装、配置、运行以及性能等方面都做了详尽的介绍(见参考部分)。

DMTK主要用于自然语言处理方面,比如:文本分类与聚类、话题识别以及情感分析等

参考:

http://www.dmtk.io

https://github.com/Microsoft/DMTK

Google:TensorFlow(2015-11-10 开源)

TensorFlow 是一个用来编写和执行机器学习算法的工具。计算在数据流图中完成,图中的节点进行数学运算,边界是在各个节点中交换的张量(Tensors–多维数组)。TensorFlow负责在不同的设备、内核以及线程上异步地执行代码,目前支持CNN、RNN和LSTM等图像、语音和自然语言处理(NLP)领域最流行的深度神经网络模型。

Google已将TensorFlow用于GMail(SmartReply)、搜索(RankBrain)、图片(生成图像分类模型–Inception Image Classification Model)、翻译器(字符识别)等产品。

TensorFlow能够在台式机、服务器或者移动设备的CPU和GPU上运行,也可以使用Docker容器部署到云环境中。在处理图像识别、语音识别和语言翻译等任务时,TensorFlow依赖于配备图像处理单元(GPU)的机器和被用于渲染游戏图像的芯片,它对这些芯片依赖度比想象中的高。当前开源的版本能够运行在单机上,暂不支持集群。操作系统方面,TensorFlow能够运行在Linux和MacOS上。

TensorFlow的核心是使用C++编写的,有完整的Python API和C++接口,同时还有一个基于C的客户端API。

参考:

https://www.tensorflow.org

https://github.com/tensorflow/tensorflow

IBM:SystemML (2015-06 开源)

SystemML是灵活的,可伸缩机器学习(ML) 语言,使用Java编写。可实现 可定制算法(述性分析、分类、聚类、回归、矩阵分解及生存分析等), 多个执行模式(单独运行、Hadoop 和 Spark ), 自动优化。它由 IBM 的 Almaden 实验室花了近 10年开发而成的机器学习技术。

SystemML语言,声明式机器学习 (DML)。SystemML 包含线性代数原语,统计功能和 ML 指定结构,可以更容易也更原生的表达 ML 算法。算法通过 R 类型或者 Python 类型的语法进行表达。DML 通过提供灵活的定制分析表达和独立于底层输入格式和物理数据表示的数据显著提升数据科学的生产力。

SystemML 运行环境支持 Windows、Linux 及 MacOS,可支持单机和分布式部署。单机部署显然有利于本地开发的工作,而分布式部署则可以真正发挥机器学习的威力,支持的框架包括 Hadoop 和 Spark

众所周知的IBM AIWaston融入了不少SystemML技术(不了解的同学可以看下《Jeopardy!》节目,来领教到沃森的威力)

参考:

http://systemml.apache.org

https://github.com/apache/incubator-systemml

三星:VELES

VELES 是分布式深度学习应用系统,号称:用户只需要提供参数,剩下的我来搞,VELES使用 Python 编写,使用OpenCL 或者 CUDA,利用基于Flow 的编程方式。

参考:

https://velesnet.ml

https://github.com/Samsung/veles

百度:期待ING。。。

巨头之所以开源自己耗时多年打造的机器学习框架,是希望能够加速在人工智能方面的部署,在人工智能日益重要的未来抢占更多的主导权。而对于机器人创业公司来说,当这么多巨头将机器学习平台开源后,还有什么理由做不好机器人。

End.

时间: 2024-08-02 02:49:47

最牛逼的开源机器学习框架,你知道几个的相关文章

【腾讯Bugly干货】深入浅出 Retrofit,这么牛逼的框架你们还不来看看?

Android 开发中,从原生的 HttpUrlConnection 到经典的 Apache 的 HttpClient,再到对前面这些网络基础框架的封装,比如 Volley.Async Http Client,Http 相关开源框架的选择还是很多的,其中由著名的 Square 公司开源的 Retrofit 更是以其简易的接口配置.强大的扩展支持.优雅的代码结构受到大家的追捧.也正是由于 Square 家的框架一如既往的简洁优雅,所以我一直在想,Square 公司是不是只招处女座的程序员? 1.初

阿里内部史上最牛逼的带闪电的java诊断工具开源码

在阿里巴巴内部,有很多自研工具供开发者使用,其中有一款工具,是几乎每个Java开发都使用过的工具,那就是Arthas,这是一款Java诊断工具,是一款牛逼带闪电的工具.该工具已于2018年9月份开源. 在日常开发中,你是否遇到过以下问题: 这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception? 我改的代码为什么没有执行到?难道是我没 commit?分支搞错了? 遇到问题无法在线上 debug,难道只能通过加日志再重新发布吗? 线上遇到某个用户的数据处理有问题,但线上同样无法

Android Bitmap 开源图片框架分析(精华三)

主要介绍这三个框架,都挺有名的,其他的框架估计也差不多了 Android-Universal-Image-Loaderhttps://github.com/nostra13/Android-Universal-Image-Loader ImageLoaderhttps://github.com/novoda/ImageLoader Volley(综合框架,包含图片部分)https://github.com/mcxiaoke/android-volley 扯淡时间,可以跳过这段这些开源框架的源码还

十个能让你成为牛逼前端程序猿的特征

如果能够做一些炫酷的网站, 并且能够写一手的好html/css/javascript的话,你是不是就觉得你是牛逼的前端程序猿了?  如果不确认的话,请看看如下几个能够被称作牛逼程序猿的特征吧: 精通一个成熟前端框架 虽然也许尝试开发过前端框架,但是对于重复造轮子这件事来说,其实意义不大,使用现成的成熟框架好处在于拥有更多的开发者支持,你能快速的帮助别人或者请求别人来帮助你解决深层次的技术问题.一个好的框架能够帮助你显著的降低代码书写量,及其高效管理代码模块,并且让你可以清楚的了解一些代码书写的最

我喜欢ASP.NET的MVC因为它牛逼的9大理由(转载)

我很早就关注ASP.NET的mvc的,因为最开始是学了Java的MVC,由于工作的原因一直在做.Net开发,最近的几个新项目我采用了MVC做了,我个一直都非常喜欢.Net的MVC.我们为什么使用MVC而不是用WebForm呢?下面就来说说MVC的亮点.由于我最近使用都是MVC5.0和EF6.1,所以下面的所有实例都是基于这两个版本的. 1.创建项目内置了Bootsrap Bootsrap是一个响应式的UI界面库,能快速的搭建响应式界面,如果没有美工,对界面要求不是很高的话完全可以直接作用,很方便

为什么我会认为SAP是世界上最好用最牛逼的ERP系统,没有之一?

为什么我认为SAP是世界上最好用最牛逼的ERP系统,没有之一?玩过QAD.Tiptop.用友等产品,深深觉得SAP是贵的有道理! 一套好的ERP系统,不仅能够最大程度承接适配企业的管理和业务流程,在技术上面也能够做到快速部署和挑战.而对用户而言,好用且逻辑性强,体验好.便利可掌控才是能够抓住用户的需求点.很可惜的是,纵观世界上这么多的ERP系统,真正能够为用户考虑而且有自己的核心竞争力的并不多. 我认为一套好的ERP系统,不仅仅是一套软件,更是一个管理思想.选型ERP,要从以下几方面考虑: 一.

28款GitHub最流行的开源机器学习项目

http://ml.ailab.cn/article-76485.html 现在机器学习逐渐成为行业热门,经过二十几年的发展,机器学习目前也有了十分广泛的应用,如:数据挖掘.计算机视觉.自然语言处理.生物特征识别.搜索引擎.医学诊断.DNA序列测序.语音和手写识别.战略游戏和机器人等方面. 云栖社区特意翻译整理了目前GitHub上最受欢迎的28款开源的机器学习项目,以供开发者参考使用. 1. TensorFlow TensorFlow 是谷歌发布的第二代机器学习系统.据谷歌宣称,在部分基准测试中

程序员别迷茫,通往牛逼的道路有很多

有个网友给我留言,说看了我的上篇文章<三个月不工作,我才转行成了程序员>,感触很深,自己和奶爸的经历类似,也是从其它行业,转到IT圈做了一名程序员.如今已有2年时间,大大小小也参与了一些系统开发项目,可如今感觉机械化的重复写程序很没有意思,再转一次行成本太大,如今年龄也不小了,不想再折腾.不知道下一步该怎么办? 看到他的困惑,如同看到了当年奶爸自己,自己也是摸着石头过河,才一步步走上岸来.我想对有类似困惑的朋友说,不要完全怀疑自己当初的选择,因为IT这条路很宽,一条路走不通,试试其它的,通往牛

史上最牛逼的菜刀

6月17号,某牛在朋友圈发了消息: 史上最牛逼的中国菜刀即将发布,过市面上所有的 waf,而且把 webshell 玩到让你瞠目结舌的境界 当时有消息称 6 月底将会发布新版菜刀. 果不其然,在 6 月 20 日,原本已经关闭的 maicaidao.com 又开放了,而且下载量瞬间就到了 660 +. 话不多说,赶紧去下载一个体验一波到底有多牛逼. 文章发布时站点又关闭了,具体原因不得而知.(脉搏SP小编注:应该是被DDoS了) 脉搏小编看了一下whois变更,认为应该还是老兵作品.相关阅读<红