|
4 | 4 | </div>
|
5 | 5 | </a>
|
6 | 6 |
|
7 |
| -[](https://travis-ci.org/tensorlayer/tensorlayer) |
| 7 | +[](https://app.codacy.com/app/tensorlayer/tensorlayer) |
| 8 | +[](https://github.com/tensorlayer/awesome-tensorlayer) |
| 9 | +[](https://tensorlayer.readthedocs.io/) |
| 10 | +[](https://tensorlayercn.readthedocs.io/) |
| 11 | +[](http://www.broadview.com.cn/book/5059/) |
| 12 | + |
8 | 13 | [](https://pypi.org/project/tensorlayer/)
|
9 | 14 | [](https://github.com/tensorlayer/tensorlayer/compare/1.8.6rc1...master)
|
10 | 15 | [](https://pypi.org/project/tensorlayer/)
|
11 | 16 | [](https://github.com/tensorflow/tensorflow/releases)
|
12 |
| -[](https://app.codacy.com/app/tensorlayer/tensorlayer) |
13 | 17 |
|
| 18 | +[](https://travis-ci.org/tensorlayer/tensorlayer) |
14 | 19 | [](https://circleci.com/gh/tensorlayer/tensorlayer/tree/master)
|
15 |
| -[](https://hub.docker.com/r/tensorlayer/tensorlayer/) |
16 | 20 | [](https://tensorlayer.readthedocs.io/)
|
17 | 21 | [](https://tensorlayercn.readthedocs.io/)
|
18 | 22 | [](https://pyup.io/repos/github/tensorlayer/tensorlayer/)
|
| 23 | +[](https://hub.docker.com/r/tensorlayer/tensorlayer/) |
19 | 24 |
|
20 | 25 | <br/>
|
21 | 26 |
|
|
27 | 32 |
|
28 | 33 | <br/>
|
29 | 34 |
|
30 |
| -[](https://github.com/tensorlayer/awesome-tensorlayer) |
31 |
| -[](https://tensorlayer.readthedocs.io/) |
32 |
| -[](https://tensorlayercn.readthedocs.io/) |
33 |
| -[](http://www.broadview.com.cn/book/5059/) |
34 |
| - |
35 |
| -TensorLayer is a deep learning and reinforcement learning library on top of [TensorFlow](https://www.tensorflow.org). It provides rich neural layers and utility functions to help researchers and engineers build real-world AI applications. TensorLayer is awarded the 2017 Best Open Source Software by the prestigious [ACM Multimedia Society](http://www.acmmm.org/2017/mm-2017-awardees/). |
| 35 | +TensorLayer is a novel TensorFlow-based deep learning and reinforcement learning library designed for researchers and engineers. It provides a large collection of customizable neural layers / functions that are key to build real-world AI applications. TensorLayer is awarded the 2017 Best Open Source Software by the [ACM Multimedia Society](http://www.acmmm.org/2017/mm-2017-awardees/). |
36 | 36 |
|
37 | 37 | # Why another deep learning library: TensorLayer
|
38 | 38 |
|
39 |
| -## Features |
40 |
| - |
41 |
| -As TensorFlow users, we have been looking for a library that can serve for various development |
42 |
| - phases. This library is easy for beginners by providing rich neural network implementations, |
43 |
| -examples and tutorials. Later, its APIs shall naturally allow users to leverage the powerful |
44 |
| -features of TensorFlow, exhibiting best performance in addressing real-world problems. In the |
45 |
| -end, the extra abstraction shall not compromise TensorFlow performance, and thus suit for |
46 |
| -production deployment. TensorLayer is a novel library that aims to satisfy these requirements. |
47 |
| - |
48 |
| -It has three key features: |
49 |
| - |
50 |
| -- ***Simplicity*** : TensorLayer lifts the low-level dataflow abstraction of TensorFlow to *high-level* layers. It also provides users with [rich examples](https://github.com/tensorlayer/awesome-tensorlayer) to minimize learning barrier. |
51 |
| -- ***Flexibility*** : TensorLayer APIs are transparent: it does not mask TensorFlow from users; but leaving massive hooks that support diverse *low-level tuning*. |
52 |
| -- ***Zero-cost Abstraction*** : TensorLayer has negligible overheads and can thus achieve the *full performance* of TensorFlow. |
53 |
| - |
54 |
| -## Negligible overhead |
55 |
| - |
56 |
| -To show the overhead, we train classic deep learning models using TensorLayer and native TensorFlow |
57 |
| -on a Titan X Pascal GPU. |
58 |
| - |
59 |
| -| | CIFAR-10 | PTB LSTM | Word2Vec | |
60 |
| -|------------- |--------------- |--------------- |--------------- | |
61 |
| -| TensorLayer | 2528 images/s | 18063 words/s | 58167 words/s | |
62 |
| -| TensorFlow | 2530 images/s | 18075 words/s | 58181 words/s | |
63 |
| - |
| 39 | +As deep learning practitioners, we have been looking for a library that can address various development |
| 40 | + purposes. This library is easy to adopt by providing diverse examples, tutorials and pre-trained models. |
| 41 | +Also, it allow users to easily fine-tune TensorFlow; while being suitable for production deployment. TensorLayer aims to satisfy all these purposes. It has three key features: |
64 | 42 |
|
65 |
| -## Why using TensorLayer instead of Keras or TFLearn |
| 43 | +- ***Simplicity*** : TensorLayer lifts the low-level dataflow interface of TensorFlow to *high-level* layers / models. It is very easy to learn through the rich [example codes](https://github.com/tensorlayer/awesome-tensorlayer) contributed by a wide community. |
| 44 | +- ***Flexibility*** : TensorLayer APIs are transparent: it does not mask TensorFlow from users; but leaving massive hooks that help *low-level tuning* and *deep customization*. |
| 45 | +- ***Zero-cost Abstraction*** : TensorLayer can achieve the *full power* of TensorFlow. The following table shows the training speeds of classic models using TensorLayer and native TensorFlow on a Titan X Pascal GPU. |
66 | 46 |
|
67 |
| -Similar to TensorLayer, Keras and TFLearn are also popular TensorFlow wrapper libraries. |
68 |
| -These libraries are comfortable to start with. They provide high-level abstractions; |
69 |
| -but mask the underlying engine from users. It is thus hard to customize model behaviors |
70 |
| -and touch the essential features of TensorFlow. |
| 47 | + | | CIFAR-10 | PTB LSTM | Word2Vec | |
| 48 | + |------------- |---------------|---------------|---------------| |
| 49 | + | TensorLayer | 2528 images/s | 18063 words/s | 58167 words/s | |
| 50 | + | TensorFlow | 2530 images/s | 18075 words/s | 58181 words/s | |
71 | 51 |
|
72 |
| -Without compromise in simplicity, TensorLayer APIs are generally more flexible and transparent. |
73 |
| -Users often find it easy to start with the examples and tutorials of TensorLayer, and then dive |
74 |
| -into the TensorFlow low-level APIs only if need. TensorLayer does not create library lock-in. Users can easily import models from Keras, TFSlim and TFLearn into a TensorLayer environment. |
75 | 52 |
|
76 |
| -TensorLayer has a fast growing usage in academic and industry organizations. It is used by researchers from |
77 |
| -Imperial College London, Carnegie Mellon University, Stanford University, |
78 |
| -University of Technology of Compiegne (UTC), Tsinghua University, UCLA, |
79 |
| -and etc., as well as engineers from Google, Microsoft, Alibaba, Tencent, Xiaomi, Penguins Innovate, Bloomberg and many others. |
| 53 | +TensorLayer stands at a unique spot in the library landscape. Other wrapper libraries like Keras and TFLearn also provide high-level abstractions. They, however, often |
| 54 | +hide the underlying engine from users, which make them hard to customize |
| 55 | +and fine-tune. On the contrary, TensorLayer APIs are generally flexible and transparent. |
| 56 | +Users often find it easy to start with the examples and tutorials, and then dive |
| 57 | +into TensorFlow seamlessly. In addition, TensorLayer does not create library lock-in through native supports for importing components from Keras, TFSlim and TFLearn. |
80 | 58 |
|
81 |
| -# Installation |
| 59 | +TensorLayer has a fast growing usage among top researchers and engineers, from universities like |
| 60 | +Imperial College London, UC Berkeley, Carnegie Mellon University, Stanford University, and |
| 61 | +University of Technology of Compiegne (UTC), and companies like Google, Microsoft, Alibaba, Tencent, Xiaomi, and Bloomberg. |
82 | 62 |
|
83 |
| -TensorLayer has pre-requisites including TensorFlow, numpy, matplotlib and nltk (optional). For GPU support, CUDA and cuDNN are required. |
| 63 | +# Install |
84 | 64 |
|
85 |
| -The simplest way to install TensorLayer is to use the Python Package Index (PyPI): |
| 65 | +TensorLayer has pre-requisites including TensorFlow, numpy, matplotlib and nltk (optional). For GPU support, CUDA and cuDNN are required. The simplest way to install TensorLayer is to use the Python Package Index (PyPI): |
86 | 66 |
|
87 | 67 | ```bash
|
88 | 68 | # for last stable version
|
@@ -129,11 +109,11 @@ docker pull tensorlayer/tensorlayer:latest-gpu-py3
|
129 | 109 | nvidia-docker run -it --rm -p 8888:8888 -p 6006:6006 -e PASSWORD=JUPYTER_NB_PASSWORD tensorlayer/tensorlayer:latest-gpu-py3
|
130 | 110 | ```
|
131 | 111 |
|
132 |
| -# Contribute to TensorLayer |
| 112 | +# Contribute |
133 | 113 |
|
134 | 114 | Please read the [Contributor Guideline](https://github.com/tensorlayer/tensorlayer/blob/rearrange-readme/CONTRIBUTING.md) before submitting your PRs.
|
135 | 115 |
|
136 |
| -# Citation |
| 116 | +# Cite |
137 | 117 | If you find this project useful, we would be grateful if you cite the TensorLayer paper:
|
138 | 118 |
|
139 | 119 | ```
|
|
0 commit comments