Courses

The listing of a course description here does not guarantee a course’s being offered in a particular term. Please refer to the published schedule of classes on the MyBU Student Portal for confirmation a class is actually being taught and for specific course meeting dates and times.

  • CDS DS 488: Spark! UX Design X-Lab Practicum
    Undergraduate Prerequisites: CDSDS280 OR equivalent - This course gives students an opportunity to apply methods and practices of user experience design to real-world projects. Students work in teams to address needs of industry partners for applying interactive software to solve practical problems. Addresses all phases of the user experience design process from user research and discovery to design and validation, with a focus on mastering techniques and methods for learning about users, applying design thinking methods to conceive and iterate on solutions, and validating designs through user testing and feedback.
  • CDS DS 490: Directed Study in Computing & Data Sciences
    Directed study in Computing & Data Sciences provides students the opportunity to complete directed research in a selected topic not covered in a regularly scheduled course under the supervision of a faculty member. Student and supervising faculty member arrange and document expectations and requirements. Examples include in-depth study of a special topic or independent research project.
  • CDS DS 499: CDS Practicum Course
    Undergraduate Prerequisites: consent of instructor - Courses engage students in interdisciplinary computing and data science projects. Projects may support CDS co-Labs, in partnership with internal and external organizations. Opportunities to connect computing and data sciences with domain-specific knowledge and expertise to advance co-Lab priorities.
  • CDS DS 501: Spark Client Meeting
    This section will be used to determine team assignments and provide meeting times for clients.
  • CDS DS 519: Spark! Software Engineering X-Lab Practicum
    This course offers students in computing disciplines the opportunity to apply their programming and system development skills by working on real-world projects provided from partnering organizations within and outside of BU, which are curated by Spark! The course offers a range of project options where students can improve their technical skills, while also gaining the soft skills necessary to deliver projects aligned to the partner's goals. These include teamwork and communications skills and software development processes. All students participating in the course are expected to complete a software engineering project including a final presentation to the partner organization. Effective Spring 2022, this course fulfills a single unit in each of the following BU Hub areas: Ethical Reasoning, Oral and/or Signed Communication, Teamwork/Collaboration.
    • Ethical Reasoning
    • Oral and/or Signed Communication
    • Teamwork/Collaboration
  • CDS DS 522: Stochastic Methods for Algorithms
    Application of stochastic process theory to design and analyze algorithms used in statistics and machine learning, especially Markov chain Monte Carlo and stochastic optimization methods. Emphasizes connecting theoretical results to practice through combination of proofs, numerical experiments, and expository writing. Effective Fall 2023, this course fulfills a single unit in each of the following BU Hub areas: Writing-Intensive Course, Creativity/Innovation.
    • Creativity/Innovation
    • Writing-Intensive Course
  • CDS DS 526: Critical Reading in Biological Data Science
    The goal of this course is to provide students with a framework, skills, and knowledge to critically evaluate research in biological data science. Biological research is rarely unequivocal in its findings; students will learn to systematically identify the claims advanced in research papers and evaluate whether each claim is established beyond a reasonable doubt by supporting evidence. We will examine papers that both meet and fail this test. In today's biology, to properly examine a paper in this way it is increasingly important to engage with the data provided as supporting evidence, and to critically examine the computational approach. Students will work with published data and computational tools. Further, students will learn to identify the ideology implicit in each paper, to understand how ideology shapes both the research questions and approach, and to imagine the same research under an alternative mindset. Classes will be split into lectures on background material for each paper and group discussions. Students will work in small groups to write a report on each paper. Each student will work on a final project to produce a critical review of a broader topic in the field. Prereq: Experience with computational biology.
  • CDS DS 539: Spark! Data Science X-Lab Practicum
    This course offers students in computing disciplines the opportunity to apply their data science skills by working on real-world projects provided from partnering organizations within and outside of BU, which are curated by Spark! The course offers a range of project options where students can improve their technical skills, while also gaining the soft skills necessary to deliver projects aligned to the partner's goals. These include communications skills, collaborative work processes and an assessment of the ethical considerations of their work. All students participating in the course are expected to complete a data science project including a final presentation to the partner organization. Effective Spring 2022, this course fulfills a single unit in each of the following BU Hub areas: Digital/Multimedia Expression, Research and Information Literacy, Teamwork/Collaboration.
    • Digital/Multimedia Expression
    • Research and Information Literacy
    • Teamwork/Collaboration
  • CDS DS 542: Deep Learning for Data Science
    In this course, students will gain an understanding of the fundamentals in deep learning and then apply those concepts in exercises and applications in python. We'll start with the origins of artificial neural networks, learn about loss functions, understand gradient descent, back propagation and various training optimization techniques. Students will be familiar with canonical network architecture such as multi-layer perceptions, convolutional neural networks, recursive neural networks, LSTMs and GRU, attention and transformers. Through explanations, examples and exercises students will build intuition on how deep learning algorithms work and how they are implemented in popular deep learning frameworks such as PyTorch. Students will be able to define, train and evaluate deep learning models as well as adapt deep learning frameworks to new functionality. Students will gain exposure to pre-trained large language models and other foundation models and the concepts of few-shot learning and reasoning. Finally, students will be able to apply many of the techniques they learned in a final class project.
  • CDS DS 543: Introduction to Reinforcement Learning
    This course aim to present a math-lite introduction to reinforcement learning. We will cover (1) the basics of Markov Decision Processes (2) primary algorithmic paradigms including model-based, value-based and policy-based learning (3) modern challenges and open problems in RL.
  • CDS DS 549: Spark! Machine Learning X-Lab Practicum
    The Spark! Practicum offers students in computing disciplines the opportunity to apply their knowledge in algorithms, inferential analytics, and software development by working on real-world projects provided from partnering organizations within BU and from outside. The course offers a range of project options where students can improve their technical skills, while also gaining the soft skills necessary to deliver projects aligned to the partner's goals. These include teamwork and communications skills and software development processes. All students participating in the course are expected to complete a project focused on an application of inferential analytics or machine learning, including a final presentation to the partner organization. Effective Spring 2022, this course fulfills a single unit in each of the following BU Hub areas: Ethical Reasoning, Research and Information Literacy, Teamwork/Collaboration.
    • Ethical Reasoning
    • Research and Information Literacy
    • Teamwork/Collaboration
  • CDS DS 551: Data Engineering at Scale
    Welcome to "Data Engineering at Scale," a course designed to immerse you into the fascinating world of large-scale data management, processing, and analytics. Throughout this course, we will focus on a mythical but powerful application called the "Epidemic Engine". This application gathers information about potential health events, aggregates this data, publishes it in diverse ways, and ultimately attempts to predict epidemics. The Epidemic Engine, while hypothetical, embodies the principles and challenges of real-world data engineering systems that power today's most innovative technologies, from social networks to streaming platforms to cutting-edge AI research.
  • CDS DS 561: Software Engineering Development on Modern Cloud Environments
    Most of today's organizations needing a technology solution look to satisfy their computing, storage and networking needs through one of the large public cloud providers. Unlike traditional environments where a company had to build its own infrastructure often at large time and monetary expense it can now rent what it needs at the click of a button. In this course we will provide hands on experience with one of the large public cloud platforms. In particular we will look into the different flavors of compute, storage and networking available, how best to use them to solve interesting problems, and how to do everything on a constrained budget. Students will get accounts and deliver project work on the public cloud while also learning some of the fundamental principles on how those different cloud systems work under the covers. It is recommended that students taking this class have learned the basic principles of Computer Systems such as those taught in DS210 and/or CS210.
  • CDS DS 574: Algorithmic Game Theory
    This course is an introduction to the interdisciplinary area of Algorithmic Mechanism Design: where computational perspectives are applied to economic problems, and economic techniques are brought to problems from computer science. We will explore a broad range of topics at the frontier of new research, starting with some of the fundamentals, such as welfare-maximizing auctions and types of Nash Equilibria. Throughout the semester, the class will also learn about prevalent topics such as (1) Data Science & Incentives, (2) Mechanism Design for Social Good, and (3) optimization and robustness in mechanism design. As part of this course, students will engage in a (guided) research project, experiencing the various parts of conducting original research. This course is designed as an introductory graduate - level course but is open to advanced undergraduates with permission from the instructor. While the formal undergraduate prerequisites are DS 120, DS 121, and DS122 and DS 320 (or equivalent), the course assumes strong proficiency in these topics for graduate students. Students should have: - Mathematical maturity and comfort with formal proofs - A solid understanding of probability (discrete and continuous random variables, moments, and conditional probability) - Familiarity with algorithms and computational efficiency. Undergraduate students interested in this course should contact Professor Goldner (goldner@bu.edu) before registering for the course.
  • CDS DS 587: Data Science in Human Contexts
    Where do statistical and computational insights lose historic social contexts? What are the impacts of datafication on individuals and communities? How do social and technical systems reify or challenge social hierarchies? Through a survey of academic literature, community-produced knowledge and coverage of technology in the popular press, this course will explore these themes as they relate to labor and automation, surveillance and the legal system, social media governance, and digital inclusion. Effective Fall 2024, this course fulfills a single unit in each of the following BU Hub areas: The Individual in Community, Oral and/or Signed Communication, Writing-Intensive Course.
    • The Individual in Community
    • Oral and/or Signed Communication
    • Writing-Intensive Course
  • CDS DS 590: CDS Research Initiation Seminar
    The first--year doctoral seminar is a required two--semester cohort--based course (4 credits) that must be taken during the first full academic year that a student enrolls in the PhD program in CDS. It is divided into two parts, each providing 2 credits. "CDS Research Initiation Seminar" is offered in the fall semester, and "CDS Research Development Seminar" is offered in the spring semester. The seminar serves three key purposes: 1. It introduces students to the scholarship of (and the rich set of research projects pursued by) the CDS faculty and their guests through colloquia pitched to a multidisciplinary audience. 2. It guides students through the challenging transition into the graduate program in CDS by introducing them to the variety of skills and capacities that are needed to succeed as a scholar. 3. It engenders a sense of community amongst the group of students entering the program as a cohort. 4 cr. Either sem.
  • CDS DS 592: Special Topics in Mathematical and Computational Sciences
    Topic for Spring 2025: Introduction to Sequential Decision Making This course introduces the study, design and analysis of algorithms for sequential decision making with a particular focus on bandit algorithms and other topics in statistical learning theory. Designed for upper undergraduate and graduate students, the course covers foundational concepts and cutting-edge research in multi-armed bandits, linear bandits, and contextual bandits. Students will gain an understanding of fundamental algorithmic principles in sequential decision making such as optimism, multiplicative weights as well as bandit algorithms such as UCB, EXP3, OFUL. Additionally, the class will cover bandit problems in the general function approximation regime via the study of algorithms such as SquareCB and statistical dimensions for function approximation, including the eluder dimension, dissimilarity dimension, and decision estimation coefficient. Finally, the course will also explore miscellaneous yet essential topics such as online model selection, and offline estimation. Through a combination of theoretical insights and practical applications, students will gain a comprehensive understanding of how to design, analyze, and implement algorithms for sequential decision-making tasks.
  • CDS DS 593: Topics in Data Science Methodologies
    Spring 2026 Topic: Theory and Applications of Large Language Models. In this course, students will become savvy consumers and sophisticated developers of LLMs and related tooling. We will start by orienting ourselves to the history of natural language processing and the current state of AI tools, which students will learn to critically evaluate and use extensively throughout the course. Students will develop a deep intuition for LLM concepts including attention and transformer architectures, sampling, and search, and will build small models from scratch. They will then apply pre-trained LLMs to solve real-world problems, working with advanced techniques including fine-tuning, prompt engineering, RAG, and AI agents. Throughout, the course emphasizes bias, safety, and responsible deployment. Through reflections, labs, and projects, students will demonstrate learning and develop a professional portfolio.
  • CDS DS 594: Spark! Data Visualization X-Lab Practicum
    The Data Visualization X-Lab Practicum offers students an opportunity to learn data visualization skills through course and project-based work. Projects will be completed on a schedule that aligns with topics being covered in class and assignments. This course provides an accurate experience of solving real-world problems with data visualization, and the various tradeoffs that need to be considered. Whether it's how to efficiently use color and space, effectively understand the profile of a dataset or cautiously avoid bias, this course will provide students with a solid understanding of applicable data visualization practices. Effective Fall 2024 fulfills a single unit in each of the following BU Hub areas: Digital Medial Expression, Oral and/or Signed Communication, Writing-Intensive Course.
    • Digital/Multimedia Expression
    • Oral and/or Signed Communication
    • Writing-Intensive Course
  • CDS DS 595: Special Topics in Physical and Engineering Sciences
    Spring 2026 Topic: AI for Science The goal of the course is to equip students with the tools necessary to understand and carry out research at the forefront of AI and the natural sciences. Prerequisites: Multivariable calculus, linear algebra, probability theory; familiarity with neural networks and deep learning frameworks (PyTorch or JAX); proficiency in Python. Exemplary: - Preliminaries: the AI4Science landscape, core ML concepts, automatic differentiation, Bayesian statistics, simulators, common scientific data modalities - Scientific computing infrastructure: data management, compute accelerators, benchmarking and evaluation, reproducibility - Bayesian inference: MCMC and variational methods - Generative modeling (e.g., diffusion models) and surrogate models - Differentiable programming for scientific computing - Neural network building blocks: encoding scientific inductive biases - Neural ODEs and operator learning - Uncertainty quantification - Interpretability and symbolic regression - Foundation models and LLMs for scientific applications - Case studies from across the natural sciences