Spring 2024
I 320D Topics in Human-Centered Data Science: Applied Machine Learning with Python
DESCRIPTION
This course will cover relevant fundamental concepts in machine learning (ML) and how they are used to solve real-world problems. Students will learn the theory behind a variety of machine learning tools and practice applying the tools to real-world data such as numerical data, textual data (natural language processing), and visual data (computer vision). Each class is divided into two segments: (a) Theory and Methods, a concise description of an ML concept, and (b) Lab Tutorial, a hands-on session on applying the theory just discussed to a real-world task on publicly available data. We will use Python for programming. By the end of the course, the goals for the students are to: 1. Develop a sense of where to apply machine learning and where not to, and which ML algorithm to use 2. Understand the process of garnering and preprocessing a variety of “big” real-world data, to be used to train ML systems 3. Characterize the process to train machine learning algorithms and evaluate their performance 4. Develop programming skills to code in Python and use modern ML and scientific computing libraries like SciPy and scikit-learn 5. Propose a novel product/research-focused idea (this will be an iterative process), design and execute experiments, and present the findings and demos to a suitable audience (in this case, the class).
COURSE NOTES
Machine Learning (ML), Data Science (DS), and Artificial Intelligence (AI) are making significant contributions to modern technological advancements. Today, ML serves as the backbone technology for most industries and companies has undoubtedly become one of the most intriguing emerging subjects of study. Applied Machine Learning with Python is an introductory breadth-first course on ML technology, designed for the upper division undergraduate audience. The course aims to cover fundamental concepts in ML and how they are used to solve real-world problems. Students will learn the theory behind a variety of machine learning tools and practice applying the tools to real-world data such as numerical data, textual data (natural language processing), and visual data (computer vision). Each class is divided into two segments: (a) Theory and Methods, a concise description of an ML concept, and (b) Lab Tutorial, a hands-on session on applying the theory discussed in the first segment to a real-world task on publicly available data. We will use Python for programming.
PREREQUISITES
Upper-division standing; Informatics 310D and Informatics 304 (or one of the following approved substitutions: C S 303E, C S 312, C S 312H, C S 313E).
RESTRICTIONS
Registration prioritized for undergraduate Informatics majors through registration period 1, with access being extended to Informatics minors beginning in period 2. Outside students will be permitted to join our waitlists beginning with period 3.