NodeSchool is one of the most inclusive software communities that I have come across. What I liked about it the most is its emphasis on writing code. There are so many meetups that I have been to where I simply listen to talks and go home without much of a takehome message. is an open-source project to teach the fundamentals of Deep Learning (DL) and as it evolves the advanced topics will be introduced. This project came out of a weekly class that I did at Arbor Networks where I work as a Data Scientist.

Personally I come from a background where I did a PhD in Machine Learning. However, with the development of tools such as Keras, DL has become a lot more accessible to the general community.

Even with these available tools teaching Deep Learning can be quite difficult. The first lesson I did was a complete train wreck. I had forgotten where I started and jumped straight into a multi layered Deep Net. I Took for granted that people would understand what a loss function is, and what regression vs logisitic regression is. owl

Conversely I did not want to spend too much time on the mathematics either. I wanted to create something that would get people tackling DL problems fast instead of diving too deep into the theory. I spent 6 months or so on Andrew Ngs DL course that did go through the theory. This unfortunately did not equip me with the tools necessary towards actually being comfortable with using DL in any meaningful way. The goal is to focus on the bigger picture of what you can do with DL.


  1. Make Deep Learning easier (minimal code).
  2. Minimise required mathematics.
  3. Make it practical (runs on laptops).
  4. Open Source Deep Learning Learning.
  5. Grow a collaborating practical community around DL.

The assumed knowledge is that you are able to code in Python. I make all code available in Jupyter Notebooks for the sole reason being that you can interact with it. Running on a single python script decreases this interactivity.

I also use Docker containers along with Docker-compose so that I don’t have to deal with installation issues. This tends to take up upwards of half an hour at some workshops. Mind you, the current container that I have put up uses 3GB of space.

Call for Contributions

There is still much to do with Deep School. These are some of the most important requirements in order of importance:

  1. Use the tutorials!
  2. Help with documenting tutorials (there are parts I could have explained better).
  3. Contribute tutorials. At the time of writing I am yet to do a LSTM tutorial. Furthermore I am yet to provide the more advanced tutorials such as Attention Networks, Generative Adversarial Networks, Reinforcement Learning etc.
  4. Help me setup a website/ forum. I have limited experience with websites. It would be good to provide a style webpage so that we could spread the message.
comments powered by Disqus