zoukankan      html  css  js  c++  java
  • 机器学习的主要编程框架

    来源:《暗知识-机器认知如何颠覆商业和社会》

      TensorFlow是由谷歌大脑团队开发的,主要用于机器学习和深度神经网络的研究。2016年5月,谷歌从Torch(一种编程框架)转移到TensorFlow,这对其他编程框架造成了打击,特别是torch和theanoo许多人将TensorFlow描述成一个比theano更现代化的版本,吸取了这些年在新领域/技术的许多重要的经验教训。
      TensorFlow以智能、灵活的方式而闻名,是一种高度可扩展的机器学习系统,使其更容易适应不同的新旧产品和研究,并且比较容易安装,还针对初学者提供了教程,涵盖神经网络的理论基础和实际应用。TensorFlow比theano和torch慢,但谷歌和开源社区正在解决这个问题。TensorBoard是TensorFlow的可视化模块,它提供了一个计算路径的直观视图。深度学习库Keras被移植到TensorFlow上运行,这意味着任何用Keras编写的模型现在都可以运行在TensorFlow上。最后,值得一提的是TensorFlow可以在各种硬件上运行,其特点如下:
    (1)GPU加速:支持
    (2)语言/界面:Python、Numpy、C++
    (3)平台:跨平台
    (4)维护者:谷歌

      theano起源于2007年在蒙特利尔大学的知名MILA(学习算法研究所),是用Python编写的CPU/GPU符号表达式的深度学习编译器。theano功能强大,速度极快,并且灵活,但通常被认为是一个底层框架。因此,原生theano更像是一个研究平台和生态系统,而非深度学习库,它经常被用作高级程序库的底层平台,而这些高级库给用户提供简单的API提供一些比较受欢迎的库包括Keras、Lasagne和Blocks。theano的缺点之一是仍然需要一个支持多GPU的方案。theano的特点下:
    (1)GPU加速:支持
    (2)语言/界面:Python,NumPYo
    (3)平台:LinuxvMacosx和
    (4)维护者:蒙特利尔大学MILA实验室

      在所有常见的框架中,torch可能是最容易启动和运行的,特别是在使用Ubuntu(一种开源电脑操作系统)的情况下它允许基于神经网络的算法在GPU硬件上运行,而不需要在硬件级别进行编码。torch在2002年由纽约大学开发,被Facebook和Twitter等大型科技公司广泛使用,并得到英伟达的支持。Torch是用一种叫作的脚本语言编写的,这种语言很容易阅读,但并不像Python那样通用。有用的错误提示消息、大量的示例代码/教程以及Lua的简单性让torch很容易上手。其特点如下:
    (1)GPU加速:支持
    (2)语言/界面:Lua
    (3)平台:Linux、Android、Mac OS X、iOS和Windows
    (4)维护者:Ronan、Clément、Koray和Soumith

      Caffe被开发用于利用卷积神经网络的图像分类/机器视觉,由1000多名开发人员推动其发展。Caffe最出名的可能是Mode1Zoo模型,开发者无须编写任何代码就可以直接使用。
      Caffe主要针对工业应用,而torch和theano是为研究量身打造的。Caffe不适用于非计算机视觉深度学习应用,如文本、声音或时间序列数据。Caffe可以在各种硬件上运行,并且CPU和GPU之间的切换可以通过设置单个标志来完成。Caffe的运行速度比theano和torch要慢。其特点如下:
    (1)GPU加速:支持
    (2)语言/界面:C、C++、Python、MATLAB、CLI
    (3)平台:Ubuntu、MacOSX、windows实验版
    (4)维护者:伯克利视觉和学习中心(BVLC)

      CNTK是微软深度学习工具包,是微软的开源深度学习框架。CNTK在语音社区中比在一般深度学习社区中更为著名,可以用于图像和文本训练。CNTK支持多种算法,例如Feed Forward、CNN、RNN、LSTM和Sequence-to-Sequence。它可以运行在许多不同的硬件类型上,包括多个GPU。其特点如下:
    (1)GPU加速:支持-[
    (2)语言/界面:Python、C++、C#和CLI
    (3)平台:Windows、Linux
    (4)维护者:微软研究院

      H20也称为H20.ai,是世界上使用最广泛的开源深度学习平台之一。它被全球超过8万名数据科学家和研究人员以及超过9000家企业和组织所用,包括为全球最有影响力的一些公司开发关键任务数据产品。H20提供基于的用户界面,同时可以访问机器学习软件库,并开启机器学习的过程。

    维基百科中有一张表详细列出了各主要编程框架的参数和特点,链接如下:https://en.wikipedia.org/wiki/Comparison_of_deep_learning_software。

  • 相关阅读:
    ReaHat7.6/7.7 最小化安装更新yum源
    Navicat Premium For Mac 12.0.2x 破解教程
    java程序员经常使用的Intellij Idea插件
    NDK版本 下载地址
    在Intellij IDEA下用X-debug调试PHP
    DMSFrame 之查询表达式用法(一)
    Wise 打包细节
    将Centos的yum源更换为国内的阿里云(163)源
    Centos下安装 .net Core运行程序
    使用 Docker 一步搞定 ZooKeeper 集群的搭建
  • 原文地址:https://www.cnblogs.com/rockyching2009/p/11407418.html
Copyright © 2011-2022 走看看