Artifical Intelligence & Machine Learning

Courses

STAT 413 - INTRODUCTION TO STATISTICAL MACHINE LEARNING
Department: Statistics
Undergraduate
Description: This course is an introduction to concepts, methods, and best practices in statistical machine learning. Topics covered include regularized regression, classification, kernels, dimension reduction, clustering, trees, and ensemble learning. Emphasis will be placed on applied data analysis and computation.

STAT 502 - NEURAL MACHINE LEARNING I
Department: Statistics
Graduate
Description: Review of major neural machine learning (Artificial Neural Network) paradigms. Analytical discussion of supervised and unsupervised neural learning algorithms and their relation to information theoretical methods. Practical applications to data analysis such as pattern recognition, clustering, classification, function approximation/regression, non-linear PCA, projection pursuit, independent component analysis, with lots of examples from image and digital processings. Details are posted at www.ece.rice.edu/~erzsebet/ANNcourse.html. Cross-list: COMP 502, ELEC 502.

STAT 602 - NEURAL MACHINE LEARNING AND DATA MINING II
Department: Statistics
Graduate
Description: Advanced topics in ANN theories, with a focus on learning high-dimensional complex manifolds with neural maps (Self-Organizing Maps, Learning Vector Quantizers and variants). Application to data mining, clustering, classification, dimension reduction, sparse representation. The course will be a mix of lectures and seminar discussions with active student participation, based on most recent research publications. Students will have access to professional software environment to implement theories. Cross-list: COMP 602, ELEC 602.

STAT 613 - STATISTICAL MACHINE LEARNING
Department: Statistics
Graduate
Description: This course is an advanced survey of statistical machine learning theory and methods. Emphasis will be placed methodological, theoretical, and computational aspects of tools such as regularized regression, classification, kernels, dimension reduction, clustering, graphical models, trees, and ensemble learning.

STAT 648 - GRAPHICAL MODELS AND NETWORKS
Department: Statistics
Graduate
Description: Graphical models – aka Bayes networks, Markov networks, Gaussian networks, etc. – have been widely used to represent complex phenomena with dependence. The course aims to stimulate interest in graphical models and covers directed and undirected graphical models, exponential-family representations of graphical models, statistical inference, finite-sample and large-sample properties, and applications.

COMP 440 - ARTIFICIAL INTELLIGENCE
Department: Computer Science
Undergraduate
Description: This is a foundational course in artificial intelligence, the discipline of designing intelligent agents. The course will cover the design and analysis of agents that do the right thing in the face of limited information and computational resources. The course revolves around two main questions: how agents decide what to do, and how they learn from experience. Tools from computer science, probability theory, and game theory will be used. Interesting examples of intelligent agents will be covered, including poker playing programs, bots for various games (e.g. WoW), DS1 -- the spacecraft that performed an autonomous flyby of Comet Borrely in 2001, Stanley -- the Stanford robot car that won the Darpa Grand Challenge, Google Maps and how it calculates driving directions, face and handwriting recognizers, Fedex package delivery planners, airline fare prediction sites, and fraud detectors in financial transactions. Cross-list: ELEC 440.

COMP 441 - LARGE-SCALE MACHINE LEARNING
Department: Computer Science
Undergraduate
Description: Learning from large dataset is becoming a ubiquitous phenomena in all applications spanning robotics, medical decisions, internet, communication, biology, etc. Designed to give senior UG students a thorough grounding in the theory and algorithms needed for research and practical applications in machine learning for modern massive datasets. Topics draw from machine learning, classical statistics, algorithms and information theory.

COMP 470 - FROM SEQUENCE TO STRUCTURE: AN INTRODUCTION TO COMPUTATIONAL BIOLOGY
Department: Computer Science
Undergraduate
Description: Contemporary introduction to problems in computational biology spanning sequence to structure. The course has three modules: the first introduces students to the design and statistical analysis of gene expression studies; the second covers statistical machine learning techniques for understanding experimental data generated in computational biology; and the third introduces problems in the modeling of protein structure using computational methods from robotics. The course is project oriented with an emphasis on computation and problem-solving. Cross-list: BIOE 470, STAT 470.

COMP 502 - NEURAL MACHINE LEARNING I
Department: Computer Science
Graduate
Description: Review of major neural machine learning (Artificial Neural Network) paradigms. Analytical discussion of supervised and unsupervised neural learning algorithms and their relation to information theoretical methods. Practical applications to data analysis such as pattern recognition, clustering, classification, function approximation/regression, non-linear PCA, projection pursuit, independent component analysis, with lots of examples from image and digital processings. Details are posted at www.ece.rice.edu/~erzsebet/ANNcourse.html. Cross-list: ELEC 502, STAT 502.

COMP 540 - STATISTICAL MACHINE LEARNING
Department: Computer Science
Graduate
Description: COMP 540 is about learning models from data. The course is designed to give students a foundational understanding of modern algorithms in learning and data mining, as well as hands-on experience with its applications in science and engineering.

COMP 542 - LARGE-SCALE MACHINE LEARNING
Department: Computer Science
Graduate
Description: Learning from large dataset is becoming a ubiquitous phenomena in all applications spanning robotics, medical decisions, internet, communication, biology, etc. Designed to give senior UG students a thorough grounding in the theory and algorithms needed for research and practical applications in machine learning for modern massive datasets. Topics draw from machine learning, classical statistics, algorithms and information theory.

COMP 550 - ALGORITHMIC ROBOTICS
Department: Computer Science
Graduate
Description: Robots have fascinated people for generations. Today, robots are built for applications as diverse as exploring remote planets, de-mining war zones, cleaning toxic waste, assembling cars, inspecting pipes in industrial plants and mowing lawns. Robots are also interacting with humans in a variety of ways: robots are museum guides, robots assist surgeon sin life threatening operations, and robotic cars can drive us around. The field of robotics studies not only the design of new mechanisms but also the development of artificial intelligence frameworks to make these mechanism useful in the physical world, integrating computer science, engineering, mathematics and more recently biology and sociology, in a unique way. This class will present fundamental algorithmic advances that enable today’s robots to move in real environments and plan their actions. It will also explore fundamentals of the field of Artificial Intelligence through the prism of robotics. The class involves a significant programming project. Cross-list: ELEC 550, MECH 550,

COMP 557 - ARTIFICIAL INTELLIGENCE
Department: Computer Science
Graduate
Description: This is a foundational course in artificial intelligence, the discipline of designing intelligent agents. The course will cover the design and analysis of agents that do the right thing in the face of limited information and computational resources. The course revolves around two main questions: how agents decide what to do, and how they learn from experience. Tools from computer science, probability theory, and game theory will be used. Interesting examples of intelligent agents will be covered, including poker playing programs, bots for various games (e.g. WoW), DS1 -- the spacecraft that performed an autonomous flyby of Comet Borrely in 2001, Stanley -- the Stanford robot car that won the Darpa Grand Challenge, Google Maps and how it calculates driving directions, face and handwriting recognizers, Fedex package delivery planners, airline fare prediction sites, and fraud detectors in financial transactions. Additional coursework required beyond the undergraduate course requirements. Cross-list: ELEC 557, Graduate/Undergraduate Equivalency:

COMP 576 - INTRODUCTION TO DEEP LEARNING
Department: Computer Science
Graduate
Description: Deep Machine Learning has recently made many advances in difficult perceptual tasks, including object and phoneme recognition, and natural language processing. However, the field has a steep learning curve, both conceptually and practically. The point of this course is to engage students by jumping into the deep end, and building their own architectures and algorithms. Cross-list: ELEC 576.

COMP 602 - NEURAL MACHINE LEARNING AND DATA MINING II
Department: Computer Science
Graduate
Description: Advanced topics in ANN theories, with a focus on learning high-dimensional complex manifolds with neural maps (Self-Organizing Maps, Learning Vector Quantizers and variants). Application to data mining, clustering, classification, dimension reduction, sparse representation. The course will be a mix of lectures and seminar discussions with active student participation, based on most recent research publications. Students will have access to professional software environment to implement theories. Crosslist: ELEC 602, STAT 602. Repeatable for Credit.

CAAM 416 - NEURAL COMPUTATION
Department: Computational & Applied Math
Undergraduate
Description: How does the brain work? Understanding the brain requires sophisticated theories to make sense of the collective actions of billions of neurons and trillions of synapses. Word theories are not enough; we need mathematical theories. The goal of this course is to provide an introduction to the mathematical theories of learning and computation by neural systems. These theories use concepts from dynamical systems (attractors, oscillations, chaos) and concepts from statistics (information, uncertainty, inference) to relate the dynamics and functions of neural networks. We will apply these theories to sensory computation, learning and memory, and motor control. Students will learn to formalize and mathematically answer questions about neural computations, including “what does a network compute?”, “how does it compute?”, and “why does it compute that way?” Prerequisites: knowledge of calculus, linear algebra, and probability and statistics. Cross-list: ELEC 489, NEUR 416.

ELEC 378 - MACHINE LEARNING: CONCEPTS AND TECHNIQUES (Spring 2023)
Department: Electrical & Computer Eng.
Description: 

ELEC 406/506 - LINEAR ALGEBRA FOR DATA SCIENCE
Department: Electrical & Computer Eng.
Undergraduate Upper-Level
Description: Algorithmic procedures for working with data have been developed by re-searchers from a wide range of areas. These include theoretical computer science (TCS), numerical linear algebra (NLA), statistics, applied mathematics, data analysis, machine learning, etc. As a consequence of the multi-disciplinarity of the area, researchers often fail to appreciate the underlying connections and the significance of contributions developed outside their own area. In this course, rather than focusing on technical details, we will focus on highlighting for a broad, basic linear-algebra-savvy audience, the simplicity and generality of some core linear algebraic ideas. In particular, we will focus on two fundamental and much used matrix problems which have been at the center of recent developments: (1) Least Squares approximation and (2) Low-Rank Matrix Approximation. A key tool for achieving this goal are randomized algorithms which originated in TCS. Graduate/Undergraduate Equivalency: ELEC 506.

ELEC 439/519 - DATA SCIENCE AND DYNAMICAL SYSTEMS
Department: Electrical & Computer Eng.
Undergraduate Upper-Level
Description: In many applications one is faced with the task of simulating or controlling complex dynamical systems. Such applications include for instance, weather prediction, air quality management, VLSI chip design, molecular dynamics, active noise reduction, chemical reactors, etc. In all these cases complexity manifests itself as the number of first order differential equations which arise. Model (order) reduction (MOR) seeks to replace a large-scale system described in terms of differential or difference equations by a system of much lower dimension that has nearly the same response characteristics. The ensuing methods have been an indispensable tool for speeding up the simulations arising in various engineering applications involving large-scale dynamical systems. In this course we will develop the underlying approximation theory paying particular attention to its data-driven aspects. Graduate/Undergraduate Equivalency: ELEC 519. Recommended Prerequisite(s): ELEC 301 OR MATH 355 OR CAAM 335 Mutually Exclusive: Cannot register for ELEC 439 if student has credit for ELEC 519.

ELEC 447/546 - INTRODUCTION TO COMPUTER VISION
Department: Electrical & Computer Eng.
Undergraduate Upper-Level
Description: An introduction to the basic concepts, algorithms and applications in computer vision. Topics include: cameras, camera models and imaging pipeline, low-level vision/image processing methods such as filtering and edge detection; mid-level vision topics such as segmentation and clustering; shape reconstruction from stereo, introduction to high-level vision tasks such as object recognition and face recognition. The course will involve programming and implementing basic computer vision algorithms in Matlab. Cross-list: COMP 447. Graduate/Undergraduate Equivalency: ELEC 546. Mutually Exclusive: Cannot register for ELEC 447 if student has credit for ELEC 345/ELEC 546.

ELEC 475/575 - LEARNING FROM SENSOR DATA
Department: Electrical & Computer Eng.
Undergraduate Upper-Level
Description: The first half of this course develops the basic machine learning tools for signals images, and other data acquired from sensors. Tools covered include principal components analysis, regression, support vector machines, neural networks, and deep learning. The second half of this course overviews a number of applications of sensor data science in neuroscience, image and video processing, and machine vision. Graduate/Undergraduate Equivalency: ELEC 575. Mutually Exclusive: Cannot register for ELEC 475 if student has credit for ELEC 575.

ELEC 478 - INTRODUCTION TO MACHINE LEARNING
Department: Electrical & Computer Eng.
Undergraduate Upper-Level
Description: This course is an advanced introduction to concepts, methods, best practices, and theoretical foundations of machine learning. Topics covered include regression, classification, regularization, kernels, clustering, dimension reduction, decision trees, ensemble learning, and neural networks. Graduate/Undergraduate Equivalency: ELEC 578. Recommended Prerequisite(s): (STAT 405 OR CAAM 210 OR COMP 140 OR DSCI 101) AND (CAAM 334 OR CAAM 335 OR MATH 355 OR MATH 354) OR (ELEC 301 OR DSCI 301 OR STAT 310 OR STAT 311) Mutually Exclusive: Cannot register for ELEC 478 if student has credit for DSCI 303.

ELEC 483/548 - MACHINE LEARNING AND SIGNAL PROCESSING FOR NEURO ENGINEERING
Department: Electrical & Computer Eng.
Undergraduate Upper-Level
Description: This course covers advanced statistical signal processing and machine learning approaches for modern neuroscience data (primarily many-channel spike trains). Topics include latent variable models, point processes, Bayesian inference, dimensionality reduction, dynamical systems, and spectral analysis. Neuroscience applications include modeling neural firing rates, spike sorting, decoding. Graduate/Undergraduate Equivalency: ELEC 548. Recommended Prerequisite(s): ELEC 475 and STAT 413 and COMP 540 and (ELEC 242 or ELEC 243) Mutually Exclusive: Cannot register for ELEC 483 if student has credit for ELEC 548.

ELEC 502 - NEURAL MACHINE LEARNING I
Department: Electrical & Computer Eng.
Graduate
Description: Review of major neural machine learning (Artificial Neural Network) paradigms. Analytical discussion of supervised and unsupervised neural learning algorithms and their relation to information theoretical methods. Practical applications to data analysis such as pattern recognition, clustering, classification, function approximation/regression, non-linear PCA, projection pursuit, independent component analysis, with lots of examples from image and digital processings. Details are posted at www.ece.rice.edu/~erzsebet/ANNcourse.html. Cross-list: COMP 502STAT 502. Recommended Prerequisite(s): ELEC 430 and ELEC 431 or equivalent or permission of instructor.

ELEC 515 - MACHINE LEARNING FOR RESOURCE-CONSTRAINED PLATFORMS
Department: Electrical & Computer Eng.
Graduate
Description: Machine learning is in tremendous demand in numerous applications; however, its often prohibitive complexity remains a major challenge for its extensive deployment in resource constrained platforms. This course will introduce techniques which enable the development of energy/time efficient machine learning systems, taking a path from algorithm to architecture down to the circuit level. In particular, you will first learn commonly used machine learning algorithms, and then algorithm-, architecture-, circuit-level techniques for reducing the energy/time cost of machine learning systems while maintaining their powerful performance. Finally, we will do a deep dive into state-of-the-art efficient machine learning systems, such as Google's TPU and Eyeriss.

ELEC 542 - NEURAL METHODS FOR IMAGE SYNTHESIS
Department: Electrical & Computer Eng.
Graduate
Description: This course will cover state-of-the-art research in modern learning-based image synthesis algorithms. Each lecture will focus on one or two important research papers published at top computer vision, machine learning, or graphics venues on a topic. Each student will be responsible for presenting and leading discussion on one lecture topic in the semester. Homework assignments and a final project will require students to code algorithms covered in class. Because deep learning algorithms typically require graphical processing units (GPUs) to run efficiently, students will use Google Colab (a free cloud environment for running python code) to complete assignments.

ELEC 547 - COMPUTER VISION
Department: Electrical & Computer Eng.
Graduate
Description: The goal of computer vision is to make sense of the three dimensional world from captured images and videos. This requires understanding how light interacts with objects in the environment and then captured by a camera. The goal is to solve problems such as estimating 3D shape of an environment (How does Kinect work?), how to detect and recognize people (How to build your own iPhoto?), detect and track how things move. The course provides an introduction to solving such problems using vision tools such as feature detection, image segmentation, motion estimation, image mosaics, 3D shape reconstruction, and object recognition.

ELEC 576 - A PRACTICAL INTRODUCTION TO DEEP MACHINE LEARNING
Department: Electrical & Computer Eng.
Graduate
Description: Deep Machine Learning has recently made many advances in difficult perceptual tasks, including object and phoneme recognition, and natural language processing. However, the field has a steep learning curve, both conceptually and practically. The point of this course is to engage students by jumping into the deep end, and building their own architectures and algorithms. Cross-list: COMP 576. Mutually Exclusive: Cannot register for ELEC 576 if student has credit for COMP 647.

ELEC 577 - ALGORITHMS AND OPTIMIZATION FOR DATA SCIENCE
Department: Electrical & Computer Eng.
Graduate
Description: In this course, we study algorithms for analyzing data with provable performance, statistical, and computational guarantees. We focus on applications in machine learning and signal processing. Topics include: efficient algorithms for convex optimization, inverse problem, low-rank and sparse models, dimensionality reduction, and randomized algorithms. Recommended Prerequisite(s): MATH 355 and (ECON 307 or STAT 310) or digital circuit courses.

ELEC 602 - NEURAL MACHINE LEARNING AND DATA MINING II
Department: Electrical & Computer Eng.
Graduate
Description: Advanced topics in ANN theories, with a focus on learning high-dimensional complex manifolds with neural maps (Self-Organizing Maps, Learning Vector Quantizers and variants). Application to data mining, clustering, classification, dimension reduction, sparse representation. The course will be a mix of lectures and seminar discussions with active student participation, based on most recent research publications. Students will have access to professional software environment to implement theories. Cross-list: COMP 602STAT 602. Repeatable for Credit.

ELEC 631 - ADVANCED MACHINE LEARNING
Department: Electrical & Computer Eng.
Graduate
Description: There is a long history of algorithmic development for solving inferential and estimation problems that play a central role in a variety of learning, sensing, and processing systems, including medical imaging scanners, numerous machine learning algorithms, and compressive sensing, to name just a few. Until recently, most algorithms for solving inferential and estimation problems have iteratively applied static models derived from physics or intuition. In this course, we will explore a new approach that is based on “learning” various elements of the problem including i) stepsizes and parameters of iterative algorithms, ii) regularizers, and iii) inverse functions. For example, we will explore a new approach for solving inverse problems that is based on transforming an iterative, physics-based algorithm into a deep network whose parameters can be learned from training data. For a range of different inverse problems, deep networks have been shown to offer faster convergence to a better quality solution. Specific topics to be discussed include: Ill-posed inverse problems, iterative optimization, deep learning, neural networks, learning regularizers. This is a “reading course,” meaning that students will read and present classic and recent papers from the technical literature to the rest of the class in a lively debate format. Discussions will aim at identifying common themes and important trends in the field. Students will also get hands on experience with optimization problems and deep learning software through a group project. Repeatable for Credit.