Fast.ai : Deep Learning for coders¶
1. Learning Deep learning with a top down practical approach¶
I wanted to use deep learning for a long time because I find it really ground breaking and I think I could build really powerful stuff in whatever field I decide to I apply it to.
I have already started the course a couple of times but never applied it for real. Therefore, I know already most of the lectures material but I lack practice !
This time I will go for it until the end and my key word will be : “Practice, practice, practice”.
What I like about the course is the really neat top down approach where you first learn to build a model and publish it and then you improve it until you get to world class quality by understanding the underlying mathematical principles.
The course is freely available at courses.fast.ai
2. Project Management and Structure¶
This week I worked on defining my organisation for the fastai course.
Organisation, Blogging and Community forums¶
My objective is to practice all that is taught in the course and then to build a network that I can integrate in my project aiming to tackle malaria using open source microscopy.
To really integrate the course material, Jeremy strongly advises to blog about it to fixate the learnings as well as to educate our fellow students because, as he puts it : “We are the ones who are in the best position to understand what it’s like to learn at this time.”.
Moreover, Jeremy advises to actively participate in the fast.ai forums and to start building a network in the data science / deep learning community. To do the latter, his best advice is to start following people on Twitter as that is the place where data science news is shared and spread. So I did just that, created a Twitter account and started following a few data science practicionners starting by Jeremy Howard, himself.
Because the fast.ai course is a lot more intensive in terms of coding and that the output is included in the Jupyter Notebooks where you run it, I wanted to switch to fastpages, a platform developped to publish a blog directly from the notebooks but I did not like the formatting and did not want to invest enough time to make it look good.
Therefore, I decided to stick to mkdocs in the beginning and keep the possibility open to later move to fastpages.
Most of the coding will be done on paperspace.io as training the networks requires a lot of parallel computing power, better done on GPU. Because of the limited availability of the free servers on paperspace.io, I will also set up an EC2 instance on AWS.
The libraries used are the ones described in the course at fast.ai.
To set up both of these, I followed the instructions on the fast.ai “Get started” page
All the code will be run in JupyterNotebooks regardless of the type of server used.
Now, Jeremy Howard, the professor and founder of fast.ai advises a course by the MIT named “The Missing Semester of Your CS Education” that goes more over managing the environment (bash, ssh, debugging, data wrangling, …) which sounds very interesting. While I am already running on Linux (Ubuntu 20.04) I often find myself stuck on situations that exceed my level of understanding of the OS. Therefore I will follow the course in parallel of fast.ai and blog about it here.