DiRP is the Directed Reading Program, a UTCS student organization under the Turing Scholars Student Association. DiRP is meant to help undergraduate students get engaged in computer science research and explore concepts they might not have exposure to otherwise. We offer reading groups and project-based groups where you can spend time learning more about a topic you’re interested in, from architecture to AI to theory and more!
DiRP is completely open to everyone, and there's a group suited to you whether you're a beginner or a pro. If you're interested in either doing research or learning more about a specific area of computer science, DiRP is for you!
Principles of New Hardware
Exploring state-of-the-art computer hardware and architecture. Including techniques in out-of-order execution, super-scalar, fine-grained multi threading, and systolic array architectures. Option to be a reading group or implementation group in Verilog depending on interest.
Target Audience: Students who've taken CS 429. (need to know pipelining).
Computer Graphics
Ever wonder how your favorite digital visuals come to life, from simple shapes to intricate animations? Dive into the foundational principles of Computer Graphics alongside fellow curious minds through seminal and cool papers in graphics. With discussions ranging from the basics of image representation to the fundamentals of 3D modeling, you'll gain a solid understanding of the pixels and polygons behind the screens. No prior expertise required, just an eagerness to learn! Our group offers a supportive environment to decipher complex concepts and learn the ropes of this fascinating field. Join us and unravel the art and science that shape the virtual worlds we interact with every day.
Target Audience: Anyone; no experience required.
Reinforcement Learning
Reinforcement learning (RL) is a type of machine learning that teaches autonomous systems to make sequential decisions. Unlike traditional supervised learning that treats each inference as a stand-alone decision, RL considers the setting where a computer has to make a sequence of decisions that will lead to maximizing a reward function. RL has a rich history in dynamic programming and optimal control; it has recently leveraged advances in deep learning and produced results that significantly outperform previous methods for robotics, stock trading, and logistics, just to name a few.
Target Audience: undergrads and masters interested in RL, familiarity with machine learning (deep learning and strong stasitical background is a plus).
Intro to Machine Learning
A brief introduction to various ML topics, including general statistical techniques, computer vision, natural language processing, and reinforcement learning.
Target Audience: Anyone; no experience required.
Deep Learning Systems
The goal is to explore how deep learning systems like PyTorch and TensorFlow work internally. We'll cover high-level modeling design, device-level implementations of efficient algorithms, and hardware acceleration. We'll also build a small deep learning library for hands-on experience.
Target Audience: This is more of a study group than anything else, so anyone interested is welcome. Some systems programming experience, linear algebra would be preferred.
Natural Language Processing
The NLP landscape has changed (and continues to change) rapidly over the last few years. This presents new challenges and opportunities related to the use and analysis of Large Language Models (LLMs) like chatGPT: How is reproducible science possible? What do LLMs tell us about language or reasoning? Is it possible to build highly capable LMs under resource constraints? (e.g., the amount of data a small child has, rather than internet-scale data). How can we talk about "knowledge" in an LLM, and is it possible to for LMs to lie? Is it possible to reliably detect if a given text has been generated by an LLM?
Target Audience: Students interested in NLP or wanting to learn more about NLP
Fine-tuning Diffusion Model
We will be discussing how diffusion model works in practice how to train generative modle
Target Audience: CS students, computer vision concepts knowledge
Multi-Modal Representational Learning
The goal is to learn rich representations that capture multimodal information e.g vision and language using techniques like CLIP
Target Audience: ML Experts, Foundational ML and Python experience
Causal Machine Learning
We will be reading papers about causal machine learning, reinforcement learning, and its applications in business problems. The potential project will be around developing robust decision making algorithms, AI ethics or more efficient human-AI decision making systems.
Target Audience: Students who have pytorch experience and basic understanding of statistics and machine learning. Took relevant courses or participated in related projects.
Beginner Systems
A survey of important papers in computer systems. Mainly a reading group.
Target Audience: Freshmen; little to no experience.
Systems/PL Reading Group
Each week we'll gather to discuss a pre-selected paper related to some aspect of computer systems x programming languages/formal methods. It's more than fine if folks don't understand the entirety of the paper but we should all come with opinions ("I liked this part!", "I hated this part!", etc) or questions ("I don't understand how they built X", "What problem is this even solving...?") to seed the discussion. At the end of the discussion I will propose at least two papers for the next session: one related to the area we just read about and another in a different area of systems. Rinse and repeat!
Target Audience: Folks interested in systems and experiencing a simulacrum of a grad school reading group. At least one systems course would be good, but being independently minded and willing to actively engage in the discussion group is probably more important than, say, knowing how an interrupt handler works.
Emerging Cloud Infrastructure
Cloud computing has emerged as the major operational paradigm for most applications - ranging from serving websites to large scale ML applications. To accommodate various applications, systems researchers have come up with various systems to enable the cloud infrastructure to support such vast variety of applications. The goal for the infrastrcture is to provide high performance at low cost for the cloud provider (e.g. AWS, Google Cloud, Azure, etc.) and to the application developers. We will study some papers on how the cloud infrastrcutre has evolved - covering serverless, microservices, DL inference and DL training paradigms.
Target Audience: All are welcome! Just a basic understanding of computer system organisation should be enough. More detailed knowledge about cache, memory systems, kernel vs userspace, and operating system functions will be beneficial but not mandatory.
Distributed Systems
We will be covering fundamental problems, limitations, architectures, and tradeoffs that are made when designing real world distributed systems. additionally if interested, I'd like to explore how functional programming can be used to model distributed systems.
Target Audience: Undergraduates, no experience required.
Cryptography
We'll be discussing new directions of research in the field at a level that is hopefully understandable to all levels.
Target Audience: All levels undergrad
Quantum Computing Lite
This reading group will explore current events in quantum industry and academia through science articles and videos.
Target Audience: Those who wish to discuss quantum computing without getting too technical
Quantum Computing Leap
This reading group will explore the more technical concepts of quantum computing.
Target Audience: Anyone can attend, but we recommend participating in the Lite reading group first and/or participating in the Lite reading group concurrently!
Catch All
Introduction to research, communicating with professors, and how to learn more about the research process. You will see topics from different groups including machine learning, graphics, theory, systems, architecture, robotics.
Target Audience: people who have no idea what they're interested; freshmen; beginners.