Jump to content

Keras

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Mehdiabbasi (talk | contribs) at 17:22, 30 July 2020 (editing release date). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Keras
Original author(s)François Chollet
Developer(s)various
Initial release27 March 2015; 9 years ago (2015-03-27)
Stable release
2.4.0[1] / 17 June 2020; 4 years ago (2020-06-17)
Repository
Written inPython
PlatformCross-platform
TypeNeural networks
LicenseMIT
Websitekeras.io

Keras is an open-source neural-network library written in Python. It is capable of running on top of TensorFlow, Microsoft Cognitive Toolkit, R, Theano, or PlaidML.[2][3][4] Designed to enable fast experimentation with deep neural networks, it focuses on being user-friendly, modular, and extensible. It was developed as part of the research effort of project ONEIROS (Open-ended Neuro-Electronic Intelligent Robot Operating System),[5] and its primary author and maintainer is François Chollet, a Google engineer. Chollet also is the author of the XCeption deep neural network model.[6]

In 2017, Google's TensorFlow team decided to support Keras in TensorFlow's core library.[7] Chollet explained that Keras was conceived to be an interface rather than a standalone machine learning framework. It offers a higher-level, more intuitive set of abstractions that make it easy to develop deep learning models regardless of the computational backend used.[8] Microsoft added a CNTK backend to Keras as well, available as of CNTK v2.0.[9][10]

Features

Keras contains numerous implementations of commonly used neural-network building blocks such as layers, objectives, activation functions, optimizers, and a host of tools to make working with image and text data easier to simplify the coding necessary for writing deep neural network code. The code is hosted on GitHub, and community support forums include the GitHub issues page, and a Slack channel.

In addition to standard neural networks, Keras has support for convolutional and recurrent neural networks. It supports other common utility layers like dropout, batch normalization, and pooling.[11]

Keras allows users to productize deep models on smartphones (iOS and Android), on the web, or on the Java Virtual Machine.[3] It also allows use of distributed training of deep-learning models on clusters of Graphics processing units (GPU) and tensor processing units (TPU) principally in conjunction with CUDA.[12]

Traction

Keras claims over 250,000 individual users as of mid-2018.[3] Keras was the 10th most cited tool in the KDnuggets 2018 software poll and registered a 22% usage.[13]

See also

References

  1. ^ GitHub release, retrieved 2020-06-17
  2. ^ "Keras backends". keras.io. Retrieved 2018-02-23.
  3. ^ a b c "Why use Keras?". keras.io. Retrieved 2020-03-22.
  4. ^ "R interface to Keras". keras.rstudio.com. Retrieved 2020-03-22.
  5. ^ "Keras Documentation". keras.io. Retrieved 2016-09-18.
  6. ^ Chollet, François (2016). "Xception: Deep Learning with Depthwise Separable Convolutions". arXiv:1610.02357.
  7. ^ "Module: tf.keras | TensorFlow". TensorFlow. Retrieved 2018-11-14.
  8. ^ Chollet GitHub Comment
  9. ^ CNTK Keras GitHub Issue
  10. ^ alexeyo. "CNTK_2_0_Release_Notes". docs.microsoft.com. Retrieved 2017-06-14.
  11. ^ "Core - Keras Documentation". keras.io. Retrieved 2018-11-14.
  12. ^ "Using TPUs | TensorFlow". TensorFlow. Retrieved 2018-11-14.
  13. ^ Piatetsky, Gregory. "Python eats away at R: Top Software for Analytics, Data Science, Machine Learning in 2018: Trends and Analysis". KDnuggets. KDnuggets. Retrieved 30 May 2018.

Further reading