From 1dcc630384f8a16f2a7c1025237cbb6c57184912 Mon Sep 17 00:00:00 2001 From: Luo Mai Date: Mon, 4 Jun 2018 11:46:06 +0800 Subject: [PATCH 01/16] Update README.md --- README.md | 55 ++++++++++++++++++++----------------------------------- 1 file changed, 20 insertions(+), 35 deletions(-) diff --git a/README.md b/README.md index 22a085c2a..eb95f43bf 100644 --- a/README.md +++ b/README.md @@ -4,13 +4,17 @@ +[![Mentioned in Awesome TensorLayer](https://awesome.re/mentioned-badge.svg)](https://github.com/tensorlayer/awesome-tensorlayer) +[![English Documentation](https://img.shields.io/badge/documentation-english-blue.svg)](https://tensorlayer.readthedocs.io/) +[![Chinese Documentation](https://img.shields.io/badge/documentation-中文-blue.svg)](https://tensorlayercn.readthedocs.io/) +[![Chinese Book](https://img.shields.io/badge/book-中文-blue.svg)](http://www.broadview.com.cn/book/5059/) + [![Build Status](https://img.shields.io/travis/tensorlayer/tensorlayer.svg?label=Travis&branch=master)](https://travis-ci.org/tensorlayer/tensorlayer) [![PyPI version](https://badge.fury.io/py/tensorlayer.svg)](https://pypi.org/project/tensorlayer/) [![Github commits (since latest release)](https://img.shields.io/github/commits-since/tensorlayer/tensorlayer/latest.svg)](https://github.com/tensorlayer/tensorlayer/compare/1.8.6rc1...master) [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/tensorlayer.svg)](https://pypi.org/project/tensorlayer/) [![Supported TF Version](https://img.shields.io/badge/tensorflow-1.6.0+-blue.svg)](https://github.com/tensorflow/tensorflow/releases) [![Codacy Badge](https://api.codacy.com/project/badge/Grade/ca2a29ddcf7445588beff50bee5406d9)](https://app.codacy.com/app/tensorlayer/tensorlayer) - [![CircleCI](https://img.shields.io/circleci/project/github/tensorlayer/tensorlayer.svg?label=Docker%20Build&branch=master)](https://circleci.com/gh/tensorlayer/tensorlayer/tree/master) [![Docker Pulls](https://img.shields.io/docker/pulls/tensorlayer/tensorlayer.svg?maxAge=604800)](https://hub.docker.com/r/tensorlayer/tensorlayer/) [![Documentation Status](https://img.shields.io/readthedocs/tensorlayer/latest.svg?label=ReadTheDocs-EN)](https://tensorlayer.readthedocs.io/) @@ -21,40 +25,27 @@
- +

-[![Mentioned in Awesome TensorLayer](https://awesome.re/mentioned-badge.svg)](https://github.com/tensorlayer/awesome-tensorlayer) -[![English Documentation](https://img.shields.io/badge/documentation-english-blue.svg)](https://tensorlayer.readthedocs.io/) -[![Chinese Documentation](https://img.shields.io/badge/documentation-中文-blue.svg)](https://tensorlayercn.readthedocs.io/) -[![Chinese Book](https://img.shields.io/badge/book-中文-blue.svg)](http://www.broadview.com.cn/book/5059/) - -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/). +TensorLayer is a novel deep learning and reinforcement learning library based on [TensorFlow](https://www.tensorflow.org). It provides a large collection of customizable neural layers / functions to help researchers and engineers build complex AI applications. TensorLayer is awarded the 2017 Best Open Source Software by the [ACM Multimedia Society](http://www.acmmm.org/2017/mm-2017-awardees/). # Why another deep learning library: TensorLayer -## Features - -As TensorFlow users, we have been looking for a library that can serve for various development - phases. This library is easy for beginners by providing rich neural network implementations, -examples and tutorials. Later, its APIs shall naturally allow users to leverage the powerful -features of TensorFlow, exhibiting best performance in addressing real-world problems. In the -end, the extra abstraction shall not compromise TensorFlow performance, and thus suit for -production deployment. TensorLayer is a novel library that aims to satisfy these requirements. +## Motivation +As TensorFlow users, we have been long looking for a library that can address various development + purposes. This library is easy to adopt by providing diverse examples, tutorials and pre-trained models. +Later, it allow users to easily fine-tune the low-level features of TensorFlow. In the +end, this library is suitable for production deployment. TensorLayer aims to satisfy all these purposes. It has three key features: -- ***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. -- ***Flexibility*** : TensorLayer APIs are transparent: it does not mask TensorFlow from users; but leaving massive hooks that support diverse *low-level tuning*. -- ***Zero-cost Abstraction*** : TensorLayer has negligible overheads and can thus achieve the *full performance* of TensorFlow. - -## Negligible overhead - -To show the overhead, we train classic deep learning models using TensorLayer and native TensorFlow -on a Titan X Pascal GPU. +- ***Simplicity*** : TensorLayer lifts the low-level dataflow abstraction of TensorFlow to *high-level* layers, and provides rich [example codes](https://github.com/tensorlayer/awesome-tensorlayer). +- ***Flexibility*** : TensorLayer APIs are transparent: it does not mask TensorFlow from users; but leaving massive hooks that help *low-level tuning*. +- ***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. | | CIFAR-10 | PTB LSTM | Word2Vec | |------------- |--------------- |--------------- |--------------- | @@ -67,22 +58,16 @@ on a Titan X Pascal GPU. Similar to TensorLayer, Keras and TFLearn are also popular TensorFlow wrapper libraries. These libraries are comfortable to start with. They provide high-level abstractions; but mask the underlying engine from users. It is thus hard to customize model behaviors -and touch the essential features of TensorFlow. - -Without compromise in simplicity, TensorLayer APIs are generally more flexible and transparent. -Users often find it easy to start with the examples and tutorials of TensorLayer, and then dive +and touch the essential features of TensorFlow. Without compromise in simplicity, TensorLayer APIs are generally more flexible and transparent. Users often find it easy to start with the examples and tutorials of TensorLayer, and then dive 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. -TensorLayer has a fast growing usage in academic and industry organizations. It is used by researchers from +TensorLayer has a fast growing usage in academic and industry. It is widely used by researchers from Imperial College London, Carnegie Mellon University, Stanford University, -University of Technology of Compiegne (UTC), Tsinghua University, UCLA, -and etc., as well as engineers from Google, Microsoft, Alibaba, Tencent, Xiaomi, Penguins Innovate, Bloomberg and many others. - -# Installation +University of Technology of Compiegne (UTC), and etc., as well as engineers from Google, Microsoft, Alibaba, Tencent, Xiaomi, Bloomberg and many others. -TensorLayer has pre-requisites including TensorFlow, numpy, matplotlib and nltk (optional). For GPU support, CUDA and cuDNN are required. +# Install -The simplest way to install TensorLayer is to use the Python Package Index (PyPI): +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): ```bash # for last stable version From a5eb6fc8b33aa84881bb8bd00e9204a741d5e186 Mon Sep 17 00:00:00 2001 From: Luo Mai Date: Mon, 4 Jun 2018 11:57:49 +0800 Subject: [PATCH 02/16] Update README.md --- README.md | 34 ++++++++++++++++------------------ 1 file changed, 16 insertions(+), 18 deletions(-) diff --git a/README.md b/README.md index eb95f43bf..bb3f7c07f 100644 --- a/README.md +++ b/README.md @@ -4,17 +4,18 @@ +[![Codacy Badge](https://api.codacy.com/project/badge/Grade/ca2a29ddcf7445588beff50bee5406d9)](https://app.codacy.com/app/tensorlayer/tensorlayer) [![Mentioned in Awesome TensorLayer](https://awesome.re/mentioned-badge.svg)](https://github.com/tensorlayer/awesome-tensorlayer) [![English Documentation](https://img.shields.io/badge/documentation-english-blue.svg)](https://tensorlayer.readthedocs.io/) [![Chinese Documentation](https://img.shields.io/badge/documentation-中文-blue.svg)](https://tensorlayercn.readthedocs.io/) [![Chinese Book](https://img.shields.io/badge/book-中文-blue.svg)](http://www.broadview.com.cn/book/5059/) -[![Build Status](https://img.shields.io/travis/tensorlayer/tensorlayer.svg?label=Travis&branch=master)](https://travis-ci.org/tensorlayer/tensorlayer) [![PyPI version](https://badge.fury.io/py/tensorlayer.svg)](https://pypi.org/project/tensorlayer/) [![Github commits (since latest release)](https://img.shields.io/github/commits-since/tensorlayer/tensorlayer/latest.svg)](https://github.com/tensorlayer/tensorlayer/compare/1.8.6rc1...master) [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/tensorlayer.svg)](https://pypi.org/project/tensorlayer/) [![Supported TF Version](https://img.shields.io/badge/tensorflow-1.6.0+-blue.svg)](https://github.com/tensorflow/tensorflow/releases) -[![Codacy Badge](https://api.codacy.com/project/badge/Grade/ca2a29ddcf7445588beff50bee5406d9)](https://app.codacy.com/app/tensorlayer/tensorlayer) + +[![Build Status](https://img.shields.io/travis/tensorlayer/tensorlayer.svg?label=Travis&branch=master)](https://travis-ci.org/tensorlayer/tensorlayer) [![CircleCI](https://img.shields.io/circleci/project/github/tensorlayer/tensorlayer.svg?label=Docker%20Build&branch=master)](https://circleci.com/gh/tensorlayer/tensorlayer/tree/master) [![Docker Pulls](https://img.shields.io/docker/pulls/tensorlayer/tensorlayer.svg?maxAge=604800)](https://hub.docker.com/r/tensorlayer/tensorlayer/) [![Documentation Status](https://img.shields.io/readthedocs/tensorlayer/latest.svg?label=ReadTheDocs-EN)](https://tensorlayer.readthedocs.io/) @@ -25,26 +26,24 @@
- +

-TensorLayer is a novel deep learning and reinforcement learning library based on [TensorFlow](https://www.tensorflow.org). It provides a large collection of customizable neural layers / functions to help researchers and engineers build complex AI applications. TensorLayer is awarded the 2017 Best Open Source Software by the [ACM Multimedia Society](http://www.acmmm.org/2017/mm-2017-awardees/). +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/). # Why another deep learning library: TensorLayer ## Motivation -As TensorFlow users, we have been long looking for a library that can address various development +As TensorFlow users, we have been looking for a library that can address various development purposes. This library is easy to adopt by providing diverse examples, tutorials and pre-trained models. -Later, it allow users to easily fine-tune the low-level features of TensorFlow. In the -end, this library is suitable for production deployment. TensorLayer aims to satisfy all these purposes. -It has three key features: +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: -- ***Simplicity*** : TensorLayer lifts the low-level dataflow abstraction of TensorFlow to *high-level* layers, and provides rich [example codes](https://github.com/tensorlayer/awesome-tensorlayer). -- ***Flexibility*** : TensorLayer APIs are transparent: it does not mask TensorFlow from users; but leaving massive hooks that help *low-level tuning*. +- ***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. +- ***Flexibility*** : TensorLayer APIs are transparent: it does not mask TensorFlow from users; but leaving massive hooks that help *low-level tuning* and *deep customization*. - ***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. | | CIFAR-10 | PTB LSTM | Word2Vec | @@ -55,15 +54,14 @@ It has three key features: ## Why using TensorLayer instead of Keras or TFLearn -Similar to TensorLayer, Keras and TFLearn are also popular TensorFlow wrapper libraries. -These libraries are comfortable to start with. They provide high-level abstractions; -but mask the underlying engine from users. It is thus hard to customize model behaviors -and touch the essential features of TensorFlow. Without compromise in simplicity, TensorLayer APIs are generally more flexible and transparent. Users often find it easy to start with the examples and tutorials of TensorLayer, and then dive -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. +Keras and TFLearn provide high-level abstractions; but mask the underlying engine from users. It is thus hard to customize +and fine-tune TensorFlow. On the contrary, TensorLayer APIs are generally flexible and transparent. +Users often find it easy to start with the examples and tutorials of TensorLayer, and then dive +into TensorFlow only if necessary. In addition, TensorLayer does not create library lock-in. TensorLayer users can always import models from Keras, TFSlim and TFLearn. -TensorLayer has a fast growing usage in academic and industry. It is widely used by researchers from -Imperial College London, Carnegie Mellon University, Stanford University, -University of Technology of Compiegne (UTC), and etc., as well as engineers from Google, Microsoft, Alibaba, Tencent, Xiaomi, Bloomberg and many others. +TensorLayer has a fast growing usage among top researchers and engineers, from universities like +Imperial College London, UC Berkeley, Carnegie Mellon University, Stanford University, and +University of Technology of Compiegne (UTC), and companies like Google, Microsoft, Alibaba, Tencent, Xiaomi, and Bloomberg. # Install From 7997741e0f7bbf7666b8a4f6c70260abf7c2b853 Mon Sep 17 00:00:00 2001 From: Luo Mai Date: Mon, 4 Jun 2018 11:58:26 +0800 Subject: [PATCH 03/16] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index bb3f7c07f..0e7dee571 100644 --- a/README.md +++ b/README.md @@ -17,10 +17,10 @@ [![Build Status](https://img.shields.io/travis/tensorlayer/tensorlayer.svg?label=Travis&branch=master)](https://travis-ci.org/tensorlayer/tensorlayer) [![CircleCI](https://img.shields.io/circleci/project/github/tensorlayer/tensorlayer.svg?label=Docker%20Build&branch=master)](https://circleci.com/gh/tensorlayer/tensorlayer/tree/master) -[![Docker Pulls](https://img.shields.io/docker/pulls/tensorlayer/tensorlayer.svg?maxAge=604800)](https://hub.docker.com/r/tensorlayer/tensorlayer/) [![Documentation Status](https://img.shields.io/readthedocs/tensorlayer/latest.svg?label=ReadTheDocs-EN)](https://tensorlayer.readthedocs.io/) [![Documentation Status](https://img.shields.io/readthedocs/tensorlayercn/latest.svg?label=ReadTheDocs-CN)](https://tensorlayercn.readthedocs.io/) [![PyUP Updates](https://pyup.io/repos/github/tensorlayer/tensorlayer/shield.svg)](https://pyup.io/repos/github/tensorlayer/tensorlayer/) +[![Docker Pulls](https://img.shields.io/docker/pulls/tensorlayer/tensorlayer.svg?maxAge=604800)](https://hub.docker.com/r/tensorlayer/tensorlayer/)
From d49c2ad4e40f3b4ce589dd902271173e919d700a Mon Sep 17 00:00:00 2001 From: Luo Mai Date: Mon, 4 Jun 2018 12:00:52 +0800 Subject: [PATCH 04/16] Update README.md --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 0e7dee571..db1ed19b9 100644 --- a/README.md +++ b/README.md @@ -46,11 +46,12 @@ Also, it allow users to easily fine-tune TensorFlow; while being suitable for pr - ***Flexibility*** : TensorLayer APIs are transparent: it does not mask TensorFlow from users; but leaving massive hooks that help *low-level tuning* and *deep customization*. - ***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. +
| | CIFAR-10 | PTB LSTM | Word2Vec | |------------- |--------------- |--------------- |--------------- | | TensorLayer | 2528 images/s | 18063 words/s | 58167 words/s | | TensorFlow | 2530 images/s | 18075 words/s | 58181 words/s | - +
## Why using TensorLayer instead of Keras or TFLearn From 841ad939dbecb445ba63d25fe6cac9ffed63e2e5 Mon Sep 17 00:00:00 2001 From: Luo Mai Date: Mon, 4 Jun 2018 12:01:15 +0800 Subject: [PATCH 05/16] Update README.md --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index db1ed19b9..23d9e38c0 100644 --- a/README.md +++ b/README.md @@ -47,10 +47,12 @@ Also, it allow users to easily fine-tune TensorFlow; while being suitable for pr - ***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.
+ | | CIFAR-10 | PTB LSTM | Word2Vec | |------------- |--------------- |--------------- |--------------- | | TensorLayer | 2528 images/s | 18063 words/s | 58167 words/s | | TensorFlow | 2530 images/s | 18075 words/s | 58181 words/s | +
## Why using TensorLayer instead of Keras or TFLearn From b9a04d7ec98e4e53e78762768a0c7219b775a279 Mon Sep 17 00:00:00 2001 From: Luo Mai Date: Mon, 4 Jun 2018 12:02:04 +0800 Subject: [PATCH 06/16] Update README.md --- README.md | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 23d9e38c0..4047edd2b 100644 --- a/README.md +++ b/README.md @@ -46,14 +46,11 @@ Also, it allow users to easily fine-tune TensorFlow; while being suitable for pr - ***Flexibility*** : TensorLayer APIs are transparent: it does not mask TensorFlow from users; but leaving massive hooks that help *low-level tuning* and *deep customization*. - ***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. -
- -| | CIFAR-10 | PTB LSTM | Word2Vec | -|------------- |--------------- |--------------- |--------------- | -| TensorLayer | 2528 images/s | 18063 words/s | 58167 words/s | -| TensorFlow | 2530 images/s | 18075 words/s | 58181 words/s | - -
+ | | CIFAR-10 | PTB LSTM | Word2Vec | + |------------- |--------------- |--------------- |--------------- | + | TensorLayer | 2528 images/s | 18063 words/s | 58167 words/s | + | TensorFlow | 2530 images/s | 18075 words/s | 58181 words/s | + ## Why using TensorLayer instead of Keras or TFLearn From c2a6f23d3067e5be7e801cad7a4627c72eaa2342 Mon Sep 17 00:00:00 2001 From: Luo Mai Date: Mon, 4 Jun 2018 12:07:27 +0800 Subject: [PATCH 07/16] Update README.md --- README.md | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 4047edd2b..ff1ccf95f 100644 --- a/README.md +++ b/README.md @@ -52,9 +52,10 @@ Also, it allow users to easily fine-tune TensorFlow; while being suitable for pr | TensorFlow | 2530 images/s | 18075 words/s | 58181 words/s | -## Why using TensorLayer instead of Keras or TFLearn +## Why using TensorLayer -Keras and TFLearn provide high-level abstractions; but mask the underlying engine from users. It is thus hard to customize +Similar to TensorLayer, Keras and TFLearn also provide high-level abstractions; but they +mask the underlying engine from users. It is thus hard to customize and fine-tune TensorFlow. On the contrary, TensorLayer APIs are generally flexible and transparent. Users often find it easy to start with the examples and tutorials of TensorLayer, and then dive into TensorFlow only if necessary. In addition, TensorLayer does not create library lock-in. TensorLayer users can always import models from Keras, TFSlim and TFLearn. @@ -112,11 +113,11 @@ docker pull tensorlayer/tensorlayer:latest-gpu-py3 nvidia-docker run -it --rm -p 8888:8888 -p 6006:6006 -e PASSWORD=JUPYTER_NB_PASSWORD tensorlayer/tensorlayer:latest-gpu-py3 ``` -# Contribute to TensorLayer +# Contribute Please read the [Contributor Guideline](https://github.com/tensorlayer/tensorlayer/blob/rearrange-readme/CONTRIBUTING.md) before submitting your PRs. -# Citation +# Cite If you find this project useful, we would be grateful if you cite the TensorLayer paper: ``` From 013dcf2e509d29ed8d2887458c0ab3d0b61f909c Mon Sep 17 00:00:00 2001 From: Luo Mai Date: Mon, 4 Jun 2018 12:08:43 +0800 Subject: [PATCH 08/16] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index ff1ccf95f..ba6d25a40 100644 --- a/README.md +++ b/README.md @@ -58,7 +58,7 @@ Similar to TensorLayer, Keras and TFLearn also provide high-level abstractions; mask the underlying engine from users. It is thus hard to customize and fine-tune TensorFlow. On the contrary, TensorLayer APIs are generally flexible and transparent. Users often find it easy to start with the examples and tutorials of TensorLayer, and then dive -into TensorFlow only if necessary. In addition, TensorLayer does not create library lock-in. TensorLayer users can always import models from Keras, TFSlim and TFLearn. +into TensorFlow. In addition, TensorLayer does not create library lock-in. TensorLayer users can always import models from Keras, TFSlim and TFLearn. TensorLayer has a fast growing usage among top researchers and engineers, from universities like Imperial College London, UC Berkeley, Carnegie Mellon University, Stanford University, and From 8cb3d0d5e721c9aeabc7f277c90c987f1b885576 Mon Sep 17 00:00:00 2001 From: Luo Mai Date: Mon, 4 Jun 2018 12:09:11 +0800 Subject: [PATCH 09/16] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index ba6d25a40..f7963f70d 100644 --- a/README.md +++ b/README.md @@ -58,7 +58,7 @@ Similar to TensorLayer, Keras and TFLearn also provide high-level abstractions; mask the underlying engine from users. It is thus hard to customize and fine-tune TensorFlow. On the contrary, TensorLayer APIs are generally flexible and transparent. Users often find it easy to start with the examples and tutorials of TensorLayer, and then dive -into TensorFlow. In addition, TensorLayer does not create library lock-in. TensorLayer users can always import models from Keras, TFSlim and TFLearn. +into TensorFlow seamlessly. In addition, TensorLayer does not create library lock-in. TensorLayer users can always import models from Keras, TFSlim and TFLearn. TensorLayer has a fast growing usage among top researchers and engineers, from universities like Imperial College London, UC Berkeley, Carnegie Mellon University, Stanford University, and From bb28f4e576699d617d69c7c05e10b2321f40481c Mon Sep 17 00:00:00 2001 From: Luo Mai Date: Mon, 4 Jun 2018 12:12:11 +0800 Subject: [PATCH 10/16] Update CHANGELOG.md --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0aa48b894..4964357d6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -87,6 +87,7 @@ To release a new version, please update the changelog as followed: - py3 + cpu - py3 + gpu - Documentation: + - Clean README (by @luomai in #677) - Release semantic version added on index page (by @DEKHTIARJonathan in #633) - Optimizers page added (by @DEKHTIARJonathan in #636) - `AMSGrad` added on Optimizers page added (by @DEKHTIARJonathan in #636) From c3047c99185d146bb89c36865d11d360cc93940a Mon Sep 17 00:00:00 2001 From: Luo Mai Date: Mon, 4 Jun 2018 12:19:16 +0800 Subject: [PATCH 11/16] Update README.md --- README.md | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/README.md b/README.md index f7963f70d..bd4489232 100644 --- a/README.md +++ b/README.md @@ -36,9 +36,7 @@ TensorLayer is a novel TensorFlow-based deep learning and reinforcement learning # Why another deep learning library: TensorLayer -## Motivation - -As TensorFlow users, we have been looking for a library that can address various development +As deep learning practitioners, we have been looking for a library that can address various development purposes. This library is easy to adopt by providing diverse examples, tutorials and pre-trained models. 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: @@ -52,8 +50,6 @@ Also, it allow users to easily fine-tune TensorFlow; while being suitable for pr | TensorFlow | 2530 images/s | 18075 words/s | 58181 words/s | -## Why using TensorLayer - Similar to TensorLayer, Keras and TFLearn also provide high-level abstractions; but they mask the underlying engine from users. It is thus hard to customize and fine-tune TensorFlow. On the contrary, TensorLayer APIs are generally flexible and transparent. From 0c0b72eebcaa6c6b8c5ebfa05025eb5f19a9b6f1 Mon Sep 17 00:00:00 2001 From: Luo Mai Date: Mon, 4 Jun 2018 12:22:54 +0800 Subject: [PATCH 12/16] Update README.md --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index bd4489232..b11c52151 100644 --- a/README.md +++ b/README.md @@ -50,9 +50,9 @@ Also, it allow users to easily fine-tune TensorFlow; while being suitable for pr | TensorFlow | 2530 images/s | 18075 words/s | 58181 words/s | -Similar to TensorLayer, Keras and TFLearn also provide high-level abstractions; but they -mask the underlying engine from users. It is thus hard to customize -and fine-tune TensorFlow. On the contrary, TensorLayer APIs are generally flexible and transparent. +TensorLayer stands at a unique spot of the deep learning landscape. Other TensorFLow-based libraries like Keras and TFLearn also provide high-level abstractions; but they often +mask the underlying engine from users, which make them hard to customize +and fine-tune. On the contrary, TensorLayer APIs are generally flexible and transparent. Users often find it easy to start with the examples and tutorials of TensorLayer, and then dive into TensorFlow seamlessly. In addition, TensorLayer does not create library lock-in. TensorLayer users can always import models from Keras, TFSlim and TFLearn. From ca2485e45fcba124d148bae384094689c09175b0 Mon Sep 17 00:00:00 2001 From: Luo Mai Date: Mon, 4 Jun 2018 12:24:51 +0800 Subject: [PATCH 13/16] Update README.md --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index b11c52151..575f4f706 100644 --- a/README.md +++ b/README.md @@ -44,10 +44,10 @@ Also, it allow users to easily fine-tune TensorFlow; while being suitable for pr - ***Flexibility*** : TensorLayer APIs are transparent: it does not mask TensorFlow from users; but leaving massive hooks that help *low-level tuning* and *deep customization*. - ***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. - | | CIFAR-10 | PTB LSTM | Word2Vec | - |------------- |--------------- |--------------- |--------------- | - | TensorLayer | 2528 images/s | 18063 words/s | 58167 words/s | - | TensorFlow | 2530 images/s | 18075 words/s | 58181 words/s | + | | CIFAR-10 | PTB LSTM | Word2Vec | + |------------- |---------------|---------------|---------------| + | TensorLayer | 2528 images/s | 18063 words/s | 58167 words/s | + | TensorFlow | 2530 images/s | 18075 words/s | 58181 words/s | TensorLayer stands at a unique spot of the deep learning landscape. Other TensorFLow-based libraries like Keras and TFLearn also provide high-level abstractions; but they often From 6b1b3e6b9f29d82a2cc838b0385633955d3cb36e Mon Sep 17 00:00:00 2001 From: Luo Mai Date: Mon, 4 Jun 2018 12:27:39 +0800 Subject: [PATCH 14/16] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 575f4f706..6f27caead 100644 --- a/README.md +++ b/README.md @@ -50,7 +50,7 @@ Also, it allow users to easily fine-tune TensorFlow; while being suitable for pr | TensorFlow | 2530 images/s | 18075 words/s | 58181 words/s | -TensorLayer stands at a unique spot of the deep learning landscape. Other TensorFLow-based libraries like Keras and TFLearn also provide high-level abstractions; but they often +TensorLayer stands at a unique spot of the library landscape. Other wrapper libraries like Keras and TFLearn also provide high-level abstractions. They, however, often mask the underlying engine from users, which make them hard to customize and fine-tune. On the contrary, TensorLayer APIs are generally flexible and transparent. Users often find it easy to start with the examples and tutorials of TensorLayer, and then dive From 90ca7344bd4f50592743ed5a5e80aa85b7b0cf63 Mon Sep 17 00:00:00 2001 From: Luo Mai Date: Mon, 4 Jun 2018 12:28:10 +0800 Subject: [PATCH 15/16] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 6f27caead..4c916aab8 100644 --- a/README.md +++ b/README.md @@ -50,7 +50,7 @@ Also, it allow users to easily fine-tune TensorFlow; while being suitable for pr | TensorFlow | 2530 images/s | 18075 words/s | 58181 words/s | -TensorLayer stands at a unique spot of the library landscape. Other wrapper libraries like Keras and TFLearn also provide high-level abstractions. They, however, often +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 mask the underlying engine from users, which make them hard to customize and fine-tune. On the contrary, TensorLayer APIs are generally flexible and transparent. Users often find it easy to start with the examples and tutorials of TensorLayer, and then dive From 08a6a1a15017ae17d8f158b125fe5d0989efceb9 Mon Sep 17 00:00:00 2001 From: Luo Mai Date: Mon, 4 Jun 2018 12:29:40 +0800 Subject: [PATCH 16/16] Update README.md --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 4c916aab8..3d57287fa 100644 --- a/README.md +++ b/README.md @@ -51,10 +51,10 @@ Also, it allow users to easily fine-tune TensorFlow; while being suitable for pr 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 -mask the underlying engine from users, which make them hard to customize +hide the underlying engine from users, which make them hard to customize and fine-tune. On the contrary, TensorLayer APIs are generally flexible and transparent. -Users often find it easy to start with the examples and tutorials of TensorLayer, and then dive -into TensorFlow seamlessly. In addition, TensorLayer does not create library lock-in. TensorLayer users can always import models from Keras, TFSlim and TFLearn. +Users often find it easy to start with the examples and tutorials, and then dive +into TensorFlow seamlessly. In addition, TensorLayer does not create library lock-in through native supports for importing components from Keras, TFSlim and TFLearn. TensorLayer has a fast growing usage among top researchers and engineers, from universities like Imperial College London, UC Berkeley, Carnegie Mellon University, Stanford University, and