This project rather than focussing just on the theory and the traditional way of teaching, focuses more on learning through examples. This problem solving approach of studying leads to a better understanding of real world applications.
We have developed a course that is not centered exclusively on theory or the code snippets and is rather somewhere between both these two extremes. This is pretty much the rationale behind this project. For the purpose of this project, we are using the Python language to write the code as python has some libraries like NumPy and pandas which we can harness to achieve various functionalities essential for a course like this one.
1. The Dependency Graph
To structure the project, we have made a dependency graph which allows the user to effectively study at their own pace and prerequisite specifications.This graph is made with the use of a python library known as graphviz.
2.The Various Nodes in the Graph
The Nodes present are the backbone of the project and, to make the tutorial
interactive we have made the use of Jupyter notebook and Google Colab.
With this we ensured that the person accessing the code can change it and
tinker around with the code so that they can understand exactly what the
consequence of the change they made in the code canbe, thus resulting in a
working knowledge of more properties than what canbe achieved in a lecture
3. The Website
Another question was how to present the curriculum in a way so that it’s accessible to a mass audience in a presentable and easy to use manner. After some deliberations, we came to the conclusion that a webpage is possibly the best solution here.
Since ML is an ever-expanding topic of study and research,we were naturally not able to cover all the topics. Therefore, we have envisioned this to be an open-source project, and users are encouraged to add more nodes.
Using Dependency Graph to model courses
We feel that Dependency Graph-centered courses could also be used in teaching various other topics. Through the use of DependencyGraph, we can ensure that users are not bogged down with unnecessary prerequisites and learn at a pace at which they feel comfortable, depending on their respective backgrounds.
Shrey Bansal and Ishan Rai
Our Project Report and Presentation can be found here -