<!--- Licensed to the Apache Software Foundation (ASF) under one -->
<!--- or more contributor license agreements.  See the NOTICE file -->
<!--- distributed with this work for additional information -->
<!--- regarding copyright ownership.  The ASF licenses this file -->
<!--- to you under the Apache License, Version 2.0 (the -->
<!--- "License"); you may not use this file except in compliance -->
<!--- with the License.  You may obtain a copy of the License at -->

<!---   http://www.apache.org/licenses/LICENSE-2.0 -->

<!--- Unless required by applicable law or agreed to in writing, -->
<!--- software distributed under the License is distributed on an -->
<!--- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -->
<!--- KIND, either express or implied.  See the License for the -->
<!--- specific language governing permissions and limitations -->
<!--- under the License. -->

Contributors of Apache MXNet (incubating)
=========================================
MXNet has been developed by a community of people who are interested in large-scale machine learning and deep learning.
Everyone is more than welcomed to is a great way to make the project better and more accessible to more users.

Committers
----------
Committers are people who have made substantial contribution to the project and being active.
The committers are the granted write access to the project.

* [Bing Xu](https://github.com/antinucleon)
  - Bing is the initiator and major contributor of operators and ndarray modules of MXNet.
* [Tianjun Xiao](https://github.com/sneakerkg)
  - Tianqjun is the master behind the fast data loading and preprocessing.
* [Yutian Li](https://github.com/hotpxl)
  - Yutian is the ninja behind the dependency and storage engine of MXNet.
* [Mu Li](https://github.com/mli)
  - Mu is the contributor of the distributed key-value store in MXNet.
* [Tianqi Chen](https://github.com/tqchen)
  - Tianqi is one of the initiator of the MXNet project.
* [Min Lin](https://github.com/mavenlin)
  - Min is the guy behind the symbolic magics of MXNet.
* [Naiyan Wang](https://github.com/winstywang)
  - Naiyan is the creator of static symbolic graph module of MXNet.
* [Mingjie Wang](https://github.com/jermainewang)
  - Mingjie is the initiator, and contributes the design of the dependency engine.
* [Chuntao Hong](https://github.com/hjk41)
  - Chuntao is the initiator and provides the initial design of engine.
* [Chiyuan Zhang](https://github.com/pluskid)
  - Chiyuan is the creator of MXNet Julia package.
* [Junyuan Xie](https://github.com/piiswrong)
* [Haibin Lin](https://github.com/eric-haibin-lin)
* [Qiang Kou](https://github.com/thirdwing)
  - KK is a R ninja, he makes mxnet available for R users.
* [Tong He](https://github.com/hetong007)
  - Tong is the major maintainer of MXNet R package, he designs the MXNet interface and wrote many of the tutorials on R.
* [Yizhi Liu](https://github.com/yzhliu)
  - Yizhi is the main creator on mxnet scala project to make deep learning available for JVM stacks.
* [Zixuan Huang](https://github.com/yanqingmen)
  - Zixuan is one of major maintainers of MXNet Scala package.
* [Yuan Tang](https://github.com/terrytangyuan)
  - Yuan is one of major maintainers of MXNet Scala package.
* [Chris Olivier](https://github.com/cjolivier01)
* [Sergey Kolychev](https://github.com/sergeykolychev)
  - Sergey is original author and current maintainer of Perl5 interface.
* [Naveen Swamy](https://github.com/nswamy)
* [Marco de Abreu](https://github.com/marcoabreu)
 - Marco is the creator of the current MXNet CI.
* [Carin Meier](https://github.com/gigasquid)
  - Carin created and is the current maintainer for the Clojure interface.
* [Patric Zhao](https://github.com/pengzhao-intel)
  - Patric is a parallel computing expert and a major contributor to the MXNet MKL-DNN backend.
* [Tao Lv](https://github.com/TaoLv)
  - Tao is a major contributor to the MXNet MKL-DNN backend and performance on CPU.
* [Zach Kimberg](https://github.com/zachgk)
  - Zach is one of the major maintainers of the MXNet Scala package.
* [Lin Yuan](https://github.com/apeforest)
  - Lin supports MXNet distributed training using Horovod and is also a major contributor to higher order gradients.


### Become a Committer
MXNet is a opensource project and we are actively looking for new committers
who are willing to help maintaining and leading the project. Committers come from contributors who:
* Made substantial contribution to the project.
* Willing to actively spend time on maintaining and leading the project.

New committers will be proposed by current committers, with support from more than two of current committers.


List of Contributors
--------------------
* [Full List of Contributors](https://github.com/apache/incubator-mxnet/graphs/contributors)
  - To contributors: please add your name to the list when you submit a patch to the project:)
* [Feng Wang](https://github.com/happynear)
  - Feng makes MXNet compatible with Windows Visual Studio.
* [Jack Deng](https://github.com/jdeng)
  - Jack created the amalgamation script and Go bind for MXNet.
* [Li Dong](https://github.com/donglixp)
* [Piji Li](https://github.com/lipiji)
* [Hu Shiwen](https://github.com/yajiedesign)
* [Boyuan Deng](https://github.com/bryandeng)
* [Junran He](https://github.com/junranhe)
  - Junran makes device kvstore allocation strategy smarter
* [Shuzhe Wu](https://github.com/II-Matto)
* [Xiaodong](https://github.com/XD-DENG)
* [Nan Xiao](https://github.com/road2stat)
* [Wei Wu](https://github.com/tornadomeet)
* [Michaël Benesty](https://github.com/pommedeterresautee)
  -Michaël contributes the R visualization module of MXNet
* [Kublai Jing](https://github.com/Kublai-Jing)
* [chenjx1005](https://github.com/chenjx1005)
* [ry](https://github.com/ry)
* [Ming Zhang](https://github.com/starimpact)
* [sxjscience](https://github.com/sxjscience)
* [Zheng Xu](https://github.com/XericZephyr)
* [Valentin Churavy](https://github.com/vchuravy)
* [Luke Metz](https://github.com/lukemetz)
* [Guosheng Dong](https://github.com/dongguosheng)
* [yang1fan2](https://github.com/yang1fan2)
* [Wang Gu](https://github.com/wangg12)
* [Zhenchuan Huang](https://github.com/chuan92)
* [Hang Su](https://github.com/suhangpro)
* [Rinu Boney](https://github.com/rinuboney)
* [nowozin](https://github.com/nowozin)
* [Mathis](https://github.com/sveitser)
* [sennendoko](https://github.com/sennendoko)
* [srand99](https://github.com/srand99)
* [Yizhi Liu](https://github.com/yzhliu)
* [Taiyun](https://github.com/taiyun)
* [Yanghao Li](https://github.com/lyttonhao)
* [Nan Zhu](https://github.com/CodingCat)
* [Ye Zhou](https://github.com/zhouye)
* [Zhang Chen](https://github.com/zhangchen-qinyinghua)
* [Xianliang Wang](https://github.com/wangxianliang)
* [Junru Shao](https://github.com/yzgysjr)
* [Xiao Liu](https://github.com/skylook)
* [Lowik CHANUSSOT](https://github.com/Nzeuwik)
* [Alexander Skidanov](https://github.com/SkidanovAlex)
* [Ruixiang Zhang](https://github.com/sodabeta7)
* [Lodewic van Twillert](https://github.com/Lodewic)
* [Aditya Kumar](https://github.com/hiraditya)
* [Dan Becker](https://github.com/dansbecker)
* [Yun Yan](https://github.com/Puriney)
* [Tao Wei](https://github.com/taoari)
* [Max Kuhn](https://github.com/topepo)
* [Yuqi Li](https://github.com/ziyeqinghan)
* [Depeng Liang](https://github.com/Ldpe2G)
* [Kiko Qiu](https://github.com/kikoqiu)
* [Yang Bo](https://github.com/Atry)
* [Jonas Amaro](https://github.com/jonasrla)
* [Yan Li](https://github.com/Godricly)
* [Yuance Li](https://github.com/liyuance)
* [Sandeep Krishnamurthy](https://github.com/sandeep-krishnamurthy)
* [Andre Moeller](https://github.com/andremoeller)
* [Miguel Gonzalez-Fierro](https://github.com/miguelgfierro)
* [Mingjie Xing](https://github.com/EricFisher)
* [Sebastian Bodenstein](https://github.com/sbodenstein)
* [Taliesin Beynon](https://github.com/taliesinb)
* [Chi Zhang](https://github.com/WellyZhang)
* [Wei Wu](https://github.com/lazyparser)
* [Shishi Duan](https://github.com/burness)
* [Yu Du](https://github.com/Answeror)
* [Xu Dong](https://github.com/dsqx71)
* [Chihiro Komaki](https://github.com/ckomaki)
* [Piyush Singh](https://github.com/Piyush3dB)
* [Freddy Chua](https://github.com/freddycct)
* [Jie Zhang](https://github.com/luoyetx)
* [Leonard Lausen](https://github.com/leezu)
* [Robert Stone](https://github.com/tlby)
* [Pedro Larroy](https://github.com/larroy)
* [Jun Wu](https://github.com/reminisce)
* [Dom Divakaruni](https://github.com/domdivakaruni)
* [David Salinas](https://github.com/geoalgo)
* [Asmus Hetzel](https://github.com/asmushetzel)
* [Roshani Nagmote](https://github.com/Roshrini)
* [Chetan Khatri](https://github.com/chetkhatri/)
* [James Liu](https://github.com/jamesliu/)
* [Nir Ben-Zvi](https://github.com/nirbenz/)
* [Arik Poznanski](https://github.com/arikpoz/)
* [Yuwen Xiong](https://github.com/Orpine/)
* [Haozhi Qi](https://github.com/Oh233/)
* [Yi Li](https://github.com/liyi14/)
* [Guodong Zhang](https://github.com/gd-zhang/)
* [Xizhou Zhu](https://github.com/einsiedler0408/)
* [Jean Kossaifi](https://github.com/JeanKossaifi/)
* [Kenta Kubo](https://github.com/kkk669/)
* [Manu Seth](https://github.com/mseth10/)
* [Calum Leslie](https://github.com/calumleslie)
* [Andre Tamm](https://github.com/andretamm)
* [Julian Salazar](https://github.com/JulianSlzr)
* [Meghna Baijal](https://github.com/mbaijal)
* [Tao Hu](https://github.com/dongzhuoyao)
* [Sorokin Evgeniy](https://github.com/TheTweak)
* [dwSun](https://github.com/dwSun/)
* [David Braude](https://github.com/dabraude/)
* [Nick Robinson](https://github.com/nickrobinson)
* [Kan Wu](https://github.com/wkcn)
* [Rahul Huilgol](https://github.com/rahul003)
* [Anirudh Subramanian](https://github.com/anirudh2290/)
* [Zheqin Wang](https://github.com/rasefon)
* [Thom Lane](https://github.com/thomelane)
* [Sina Afrooze](https://github.com/safrooze)
* [Sergey Sokolov](https://github.com/Ishitori)
* [Thomas Delteil](https://github.com/ThomasDelteil)
* [Jesse Brizzi](https://github.com/jessebrizzi)
* [Hang Zhang](http://hangzh.com)
* [Kou Ding](https://github.com/chinakook)
* [Istvan Fehervari](https://github.com/ifeherva)
* [Aaron Markham](https://github.com/aaronmarkham)
* [Sam Skalicky](https://github.com/samskalicky)
* [Per Goncalves da Silva](https://github.com/perdasilva)
* [Zhijingcheng Yu](https://github.com/jasonyu1996)
* [Cheng-Che Lee](https://github.com/stu1130)
* [Chaitanya Bapat](https://github.com/ChaiBapchya)
* [LuckyPigeon](https://github.com/LuckyPigeon)
* [Anton Chernov](https://github.com/lebeg)
* [Denisa Roberts](https://github.com/D-Roberts)
* [Dick Carter](https://github.com/DickJC123)
* [Rahul Padmanabhan](https://github.com/rahul3)
* [Yuxi Hu](https://github.com/yuxihu)
* [Harsh Patel](https://github.com/harshp8l)
* [Xiao Wang](https://github.com/BeyonderXX)
* [Piyush Ghai](https://github.com/piyushghai)
* [Dang Trung Kien](https://github.com/kiendang)
* [Zach Boldyga](https://github.com/zboldyga)
* [Gordon Reid](https://github.com/gordon1992)
* [Mikhail Lobanov](https://github.com/lobanov-m)
* [Ming Yang](http://ufoym.com)
* [Satya Krishna Gorti](https://github.com/satyakrishnagorti)
* [Neo Chien](https://github.com/cchung100m)
* [Wujie Zhou](https://github.com/eureka7mt)
* [Ciyong Chen](https://github.com/ciyongch)
* [Hao Li](https://github.com/lihaofd)
* [Jin Huang](https://github.com/jinhuang415)
* [Luobao Zou](https://github.com/luobao-intel)
* [Pengxin Yuan](https://github.com/pengxin99)
* [Rong Zhang](https://github.com/rongzha1/)
* [Shu Zhang](https://github.com/Sherry-Zhang)
* [Shufan Wu](https://github.com/juliusshufan)
* [Wenting Jiang](https://github.com/wentingj)
* [Xiaotao Chen](https://github.com/XiaotaoChen)
* [Xinyu Chen](https://github.com/xinyu-intel)
* [Zhennan Qin](https://github.com/ZhennanQin)
* [Zhiyuan Huang](https://github.com/huangzhiyuan)
* [Zak Jost](https://github.com/zjost)
* [Nick Guletskii](https://github.com/nickguletskii)
* [Shoubhik Bhattacharya](https://github.com/shoubhik)
* [Rohit Srivastava](https://github.com/access2rohit)
* [Caner Turkmen](https://github.com/canerturkmen)
* [Disi A](https://github.com/adis300)
* [Vandana Kannan](https://github.com/vandanavk)

Label Bot
---------
* [mxnet-label-bot](https://github.com/mxnet-label-bot)
  - mxnet-label-bot provides users with the functionality to manage labels for Issues/Pull Requests on the repository
  - To use me, comment:
    - @mxnet-label-bot add [specify comma separated labels here]
    - @mxnet-label-bot remove [specify comma separated labels here]
    - @mxnet-label-bot update [specify comma separated labels here]  
      (i.e. @mxnet-label-bot update [Bug, Python])
  
  - Available label names which are supported: [Labels](https://github.com/apache/incubator-mxnet/labels)
  - For further details: [My Wiki Page](https://cwiki.apache.org/confluence/display/MXNET/Machine+Learning+Based+GitHub+Bot)
