分享

Why use Keras?

 木俊 2018-06-21

https:///why-use-keras/

There are countless deep learning frameworks available today. Why use Keras rather than any other? Here are some of the areas in which Keras compares favorably to existing alternatives.

今天有无数的深度学习框架。 为什么要使用Keras而不是其他的? 以下是凯拉斯与现有替代品相比的一些区域。


Keras prioritizes developer experience

Keras优先考虑开发人员的经验
  • Keras is an API designed for human beings, not machines. Keras follows best practices for reducing cognitive load: it offers consistent & simple APIs, it minimizes the number of user actions required for common use cases, and it provides clear and actionable feedback upon user error.
  • Keras是为人类设计的API,而不是机器。 Keras遵循减少认知负荷的最佳实践:它提供了一致且简单的API,它将常见用例所需的用户操作数量降至最低,并且在用户错误时提供清晰且可操作的反馈。
  • This makes Keras easy to learn and easy to use. As a Keras user, you are more productive, allowing you to try more ideas than your competition, faster -- which in turn helps you win machine learning competitions.
  • 这使Keras易于学习和易于使用。 作为Keras用户,您的工作效率更高,让您比竞争对手更快地尝试更多创意,从而帮助您赢得机器学习竞赛。
  • This ease of use does not come at the cost of reduced flexibility: because Keras integrates with lower-level deep learning languages (in particular TensorFlow), it enables you to implement anything you could have built in the base language. In particular, as tf.keras, the Keras API integrates seamlessly with your TensorFlow workflows.
  • 这种易用性并不以降低灵活性为代价:因为Keras与较低级的深度学习语言(特别是TensorFlow)集成在一起,所以它使您能够实现任何可以使用基础语言构建的任何东西。 特别是,作为tf.keras,Keras API可以与您的TensorFlow工作流程无缝集成。

Keras has broad adoption in the industry and the research community。

Keras在业界和研究界广泛采用

With over 200,000 individual users as of November 2017, Keras has stronger adoption in both the industry and the research community than any other deep learning framework except TensorFlow itself (and Keras is commonly used in conjunction with TensorFlow).

截至2017年11月,截至2017年11月,Keras拥有超过20万的个人用户,除了TensorFlow本身(和Keras通常与TensorFlow结合使用)之外,Keras在行业和研究团体中的应用都强于其他任何深度学习框架。

You are already constantly interacting with features built with Keras -- it is in use at Netflix, Uber, Yelp, Instacart, Zocdoc, Square, and many others. It is especially popular among startups that place deep learning at the core of their products.

您已经在不断与Keras构建的功能进行交互 - 它正在Netflix,Uber,Yelp,Instacart,Zocdoc,Square等等使用。 它在深度学习成为其核心产品的创业公司中尤其受到欢迎。

Keras is also a favorite among deep learning researchers, coming in #2 in terms of mentions in scientific papers uploaded to the preprint server arXiv.org:

Keras也是深度学习研究人员的最爱,在上载到预印本服务器arXiv.org的科学论文中提及#2:

Keras has also been adopted by researchers at large scientific organizations, in particular CERN and NASA.

Keras也被大型科学组织的研究人员采用,特别是CERN和NASA。


Keras makes it easy to turn models into products

Keras可以轻松将模型转化为产品

Your Keras models can be easily deployed across a greater range of platforms than any other deep learning framework:

与任何其他深度学习框架相比,您的Keras模型可以轻松部署在更广泛的平台上:

  • On iOS, via Apple’s CoreML (Keras support officially provided by Apple). Here's a tutorial.
  • On Android, via the TensorFlow Android runtime. Example: Not Hotdog app.
  • In the browser, via GPU-accelerated JavaScript runtimes such as Keras.js and WebDNN.
  • On Google Cloud, via TensorFlow-Serving.
  • In a Python webapp backend (such as a Flask app).
  • On the JVM, via DL4J model import provided by SkyMind.
  • On Raspberry Pi.
  • 在iOS上,通过苹果公司的CoreML(苹果官方提供的Keras支持)。 这是一个教程。
  • 在Android上,通过TensorFlow Android运行时。 示例:不是热狗应用程序。
  • 在浏览器中,通过GPU加速的JavaScript运行时(如Keras.js和WebDNN)。
  • 在Google Cloud上,通过TensorFlow-Serving。
  • 在Python webapp后端(例如Flask应用程序)中。
  • 在JVM上,通过SkyMind提供的DL4J模型导入。
  • 在树莓派。

Keras supports multiple backend engines and does not lock you into one ecosystem

Keras支持多个后端引擎,并且不会将您锁定到一个生态系统中

Your Keras models can be developed with a range of different deep learning backends. Importantly, any Keras model that only leverages built-in layers will be portable across all these backends: you can train a model with one backend, and load it with another (e.g. for deployment). Available backends include:

您的Keras模型可以开发一系列不同的深度学习后端。 重要的是,任何只利用内置图层的Keras模型都可以在所有这些后端中移植:您可以训练带有一个后端的模型,并使用另一个后端(例如用于部署)加载模型。 可用的后端包括:

  • The TensorFlow backend (from Google)
  • The CNTK backend (from Microsoft)
  • The Theano backend
  • TensorFlow后端(来自Google)
  • CNTK后端(来自微软)
  • Theano后端

Amazon is also currently working on developing a MXNet backend for Keras.

亚马逊目前也在为Keras开发一个MXNet后端。

As such, your Keras model can be trained on a number of different hardware platforms beyond CPUs:

因此,您的Keras模型可以在CPU之外的多种不同硬件平台上进行训练:

  • NVIDIA GPUs
  • Google TPUs, via the TensorFlow backend and Google Cloud
  • OpenCL-enabled GPUs, such as those from AMD, via the PlaidML Keras backend
  • NVIDIA GPU
  • Google TPU,通过TensorFlow后端和Google Cloud
  • 支持OpenCL的GPU,例如来自AMD的GPU,通过PlaidML Keras后端

Keras has strong multi-GPU support and distributed training support

Keras拥有强大的多GPU支持和分布式训练支持

Keras development is backed by key companies in the deep learning ecosystem

凯拉斯的发展得到深度学习生态系统中的关键公司的支持

Keras development is backed primarily by Google, and the Keras API comes packaged in TensorFlow as tf.keras. Additionally, Microsoft maintains the CNTK Keras backend. Amazon AWS is developing MXNet support. Other contributing companies include NVIDIA, Uber, and Apple (with CoreML).

Keras开发主要由Google支持,Keras API以Tf.keras的形式包装在TensorFlow中。 此外,Microsoft维护了CNTK Keras后端。 亚马逊AWS正在开发MXNet支持。 其他贡献公司包括NVIDIA,Uber和Apple(与CoreML)。

   

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多