About Data Driven World (DDW)
This course provides fundamentals for students with the necessary skills in a data driven world. The first half of the course focuses on providing students with algorithmic thinking and different paradigms of computation such as procedural, object-oriented design and state machine. The second half of the course focuses on a basic introduction to machine learning for categorical and continuous data. Students will be able to apply both algorithms and basic machine learning techniques to solve real-world problems driven by data and computation.
Prerequisite
10.014 Computational Thinking for Design (Term 1)
Assessments
Components | Percentage |
---|---|
Final Exam | 30 |
Mid-Term Exam | 25 |
1D Projects | 15 |
2D Project | 10 |
Cohort Sessions and Homeworks | 10 |
Pre-Class Activities | 8 |
Participation | 2 |
For Audit students to be considered pass, they need to have above 80% scores for the following assessments:
- 1D Projects
- Cohort Sessions and Homeworks
- Pre-Class Activities
Learning Objectives
By the end, students should be able to:
- Analyse different algorithms’s complexity in terms of computation time using Python computational model
- Identify recursive structure in a problem and implement its solution in Python
- Explain UML diagrams and design software using basic UML diagrams
- Apply appropriate data structure and implement them using object oriented design
- Implement algorithm to find coefficients for linear regression by minimizing its error
- Implement algorithm to classify categorical data using logistic regression for binary category and above
- Analyse and evaluate linear regression using mean square error and correlation coefficient
- Analyse and evaluate logistic regression using confusion matrix, its accuracy and recall
- Design state machine and implement it using object oriented paradigm
- Fix syntax errors and debug semantic errors using print statements
See Detailed Learning Objectives for more details.
Text References
Instructors will provide reading materials for each week. The references for this course include:
- How to Think Like a Computer Scientist
- Cormen, Thomas H., et al. Introduction to Algorithms, Third Edition, MIT Press, 2009. ProQuest Ebook Central
- James, Gareth et al. An Introduction to Statistical Learning: With Applications in R. Vol. 103. New York: Springer, 2013. Web
- Murphy, Kevin P.. Machine Learning : A Probabilistic Perspective, MIT Press, 2012. ProQuest Ebook Central
Instructional Methods and Expectations
The course will be run using a project-based and flipped-classroom strategy. Students are expected to do pre-class activities before coming to class. In-class hours are used to discuss and solve problems as well as to do projects. Each week there are mini-projects related to the topics just introduced in that week and it culminates in one open project at the end.
Students are expected to do their pre-reading and homework on their own while discussing the cohort sessions and projects with the instructors in class. There will be hands-on programming activities for all cohort sessions.