The word Machine learning has been around for quite some time. In most of the fields that you can name today, one can find this buzz-word hiding in some corner. Although ML may seem relatively new, its core concepts have been around since early 20th century and Mathematicians have been calling them Inverse problems.
But then, how did this word 'Machine learning' become trending?
Improved computing capabilities along with the elegence of efficient algorithms to compute core mathematical operations resulted in the ML community, who exploited these advances to realize their research findings computationally. Then another group of computer scientists started working towards adapting these computations for real time applications, thereby pushing towards deployment for real-life applications. When this gap between research and deployment started becoming lesser and lesser, more funds started flowing and more exciting it became.
Particularly, in the last five years, there have exponential amount of work done towards the aim of bringing research and deployment closer.
It is now time to make use of all these advancements to fortify the way we think and solve problems. The future generation should not see ML as a separate field of study, but as something that augments their problem solving capabilities.
There are a number of tutorials and lectures on this subject out there, but this end-to-end pipeline for taking a solution from research to deployment is mostly available only in bits and pieces. MLR2d aims to organize these contents to help you get a comprehensive view. Just a view is not enough though. We need also the comprehensive skills to achieve a technological perfection!
After completing Masters in Simulation science from RWTH Aachen, Germany in 2017, I got quite some taste of bleeding-edge advancements in ML. I also realized that this field is much more vast and there is a lot that needs to be mastered. In my attempt to achieve perfection, I have spent all my time trying to penetrate deeper into the subject as much as possible in two orthogonal directions - one towards mathematical research and another towards deployment. The contents started becoming volumnous and remembering them all was quite challenging. This website was developed as I was revising my notes, although only less than half of it is currently in digital format.
These contents are ideal for graduate or doctoral students or anyone who is trying to do something serious. The contents have been categorized into three sections:
Each category has several modules, arranged in an order that builds up on the concepts from previous modules. Each content in a module is also available as ipython notebook along with links to code in my github repository (if applicable). Since the contents were initially made for the purpose of my own reference, they can be crisp, yet quite extensive and needs to studied from start to end for complete undertstanding. The idea is, once you study a section, you should be confortable enough to look through the concepts published in journals or quickly understand the documentation or stackover flow answers related to that subject.
I have a github repository for every active section in each module, which contains ipython notebook files of the contents. This website automatically renders the html version of the ipython notebook files from the master branch of my git repository. So the contents are perfectly in sync.
The contents are constantly being updated and they all still require several revisions. Eventually, I'm looking to make this into a place where you can find precisce, neat and well-organized information, so that anyone can master this comprehensively.
Before getting started, read through the overview of each block in the flowchart to understand the overall contents. It is recommended that you start from the 'ML frameworks' and proceed on either direction to get a better picture. A penetrating approch have been adapted so that as you proceed along the direction of flow lines, deeper aspects will be uncovered.
7th March 2019