Description: |
Deep learning systems are now being widely productionized at large corporations and many AI-centric start-ups have been created. Productionizing AI systems requires more than just algorithmic considerations. We need to organize the data for training these systems, measure the bias present in these systems after training them, monitor them over time, and more. This course covers these topics, including, but are not limited to, deploying AI systems, MLOps, model versioning, dataset curation, data management, AI ethics/fairness, detecting and mitigation of bias, detecting out-of-distribution inputs, domain shift, data-centric AI, real-time machine learning, continual machine learning, monitoring AI systems after deployment, model/data parallelism, managing AI projects/teams, training and inference on edge-devices, and launching AI start-ups. Prerequisites: At least one course that covers neural networks, e.g., CSC 242, CSC 298/578, CSC 266/466), (CSC 249/449), or instructor permission. Students are expected to be familiar with Python, one or more deep learning toolboxes, deep learning, and machine learning more broadly. Students should have at least a high-level understanding of back propagation, multi-layer perceptrons, transformers, convolutional neural networks, and neural network fine-tuning. |