Independent Work Seminar Offerings - Spring 2022
COS IW 02 & 03: Machine Learning and Data Science
Instructor: Xiaoyan Li
Meeting Time: Tuesdays, 1:30pm-2:50pm (COS IW 02) | Tuesdays, 3:00-4:20pm (COS IW 03)
In this seminar, you will learn or review many machine learning methods, such as naïve Bayes classifier, Support Vector Machines, Decision Trees, AdaBoost, and Random Forest, etc. Students will choose at least one data set of interest and propose some questions that can be answered from the data set by applying two or more machine learning models and performing data analysis. A complete process of data analysis consists of raw data collecting, feature extraction, missing data imputation, feature selection, model fitting, making predictions for unseen data, performance evaluation, and error analysis, etc. While machine learning is a broad growing field, this seminar is focused on traditional machine learning methods, how to apply them in real-world data sets correctly, evaluate in different metrics, interpret the results, and identify important features.
There are no prerequisites beyond COS217 and COS226. However, it would be helpful if students know Python already because they will use existing machine learning packages in Python. But this is not required. There are some online Python tutorials and students can usually learn Python by themselves in a week.
This seminar will meet once a week. Class times are used to present machine learning methods and data analysis techniques, and to discuss students’ project progress. Each student will report their weekly progress on their project either in class or during a one-on-one meeting with the instructor. Each student will also be assigned one topic on machine learning methods or data analysis techniques to present in class with some guidance from the instructor.
We will help students find a topic during the first two classes. Each student should develop an individual project which is suitable for one semester work and may have the potential to extend to a senior thesis. A thorough solid project may also lead to publication in some conference or workshop in the field.
The two sections of the seminar are independent but will generally be quite similar.
COS IW 04: Hands-on Deep Learning for Language Understanding
Instructor: Danqi Chen
Meeting Time: Mondays, 11:00am-12:20pm
Recent advances in deep learning have ushered in extremely exciting developments in natural language understanding (NLU), which deals with computers’ capability of understanding and comprehension of human languages, one of the most challenging problems in artificial intelligence. This seminar aims to provide students the opportunity to learn the basics and acquire hands-on experience in building and learning about state-of-the-art NLU systems through a semester-long project. We will particularly focus on cutting-edge techniques including pre-trained language models (e.g., BERT, RoBERTa, T5/BART), fine-tuning/prompting, and recently-developed NLU benchmarks. Types of projects include developing better NLU models (more accurate, less compute, less storage, or more data-efficient), adapting existing approaches to new tasks of interest, analyzing and understanding the limitations of current systems, or developing better benchmarks and metrics.
Students are not required to have prior experience with NLP (but it is definitely useful) but are strongly encouraged to have taken COS324 before. Students may work in pairs if the project can be split so that each student has their own semester-size piece of the project. We will spend the first 2-3 meetings of the semester surveying the state-of-the-art in the field, brainstorming ideas, and developing project proposals. The remaining meetings will be used for project updates, formal student presentations, and discussions on how to perform background research, prepare a presentation, and write a final paper.
COS IW 05: Technology Policy
Instructor: Mihir Kshirsagar
Meeting Time: Fridays, 11:00 am - 12:20 pm
Abstract: In this IW seminar students get to work on crafting concrete policy responses to challenges posed by emerging computer and network technologies. There is a renewed sense of urgency to understand the implications of how these technologies are transforming public life and to craft practical solutions that address the difficult tradeoffs we need to make. Students in past seminars have worked on a variety of different projects, including those related to machine learning, social media, video game design, communication policy, competition, privacy, and cryptocurrencies, among other issues.
The first half of the seminar will focus on introducing students to policy challenges in different domains to help them explore potential topics for their final project. The second half of the seminar is devoted to workshopping the final projects and helping students develop workable proposals.
The final project will be student-driven, with the opportunity to create a real-world policy work product. Policymakers need thoughtful, technically sophisticated voices to help them develop evidence-based policies. This seminar helps students prepare to play that vital role. All students are expected to attend all weekly meetings and work collaboratively on shared projects. There are no prerequisites for taking this seminar.
COS IW 06: Digital Humanities
Instructor: Brian Kernighan
Meeting Time: Fridays, 11:00-12:20pm
"Digital humanities" covers a wide variety of ways in which scholars in the humanities -- literature, languages, history, music, art, religion, and many other disciplines -- collect, curate, analyze and present information about their fields, using digital representations and technology.
Digital humanities data is intrinsically messy, and there is always a considerable effort devoted to cleaning it up even before study can begin. There is also much effort devoted to figuring out how to present it effectively and make it accessible to others.
This seminar is aimed at building tools and developing techniques thatwill help humanities scholars work more effectively with their data. This might include machine learning, natural language processing, data visualization, data cleaning, and user interface design for making the processes available to scholars just starting out in technology.
A typical project might begin with a humanities dataset or a focus on a CS technique. In the former case, the goal would be to explore the data to learn and present new and interesting things about it. In the lattercase, the goal would be to create or improve tools, languages, and interfaces that help scholars in the humanities.
No particular background is required beyond COS 217 and 226 and an interest in learning new things and applying that knowledge usefully.
COS IW 07: Mobile and Wearable Design for Assistive and Medical Technology
Instructor: Kyle Jamieson
Meeting Time: Wednesdays, 11:00am-12:20pm
Mobile, wearable, and augmented-reality platforms, medical sensors, and other technologies are creating new opportunities to help persons with disabilities perform the activities of daily living. At the same time, these exciting, pervasive-computing technologies also create new opportunities to help doctors and therapists treat patients in the clinic and the home, in both developed and developing countries. Participants in this seminar will choose an assistive or medical application and develop a solution that will have real impact on patients lives.
Possible assistive applications include hearing impairment, cognitive impairment (aphasia, autism spectrum, Parkinson's disease, prosopagnosia), and vision impairment. Other in-scope applications targeted on medical and psychological contexts include dermatology (melanoma detection and diagnosis, jaundice), pulmonary spirometry, physical/occupational therapy (stroke rehabilitation), sports medicine, and health monitoring (blood glucose, EKG, blood oxygenation). Possible hardware platforms include mobile devices, wearable health monitors, augmented reality devices (Microsoft HoloLens, Fove VR), 360-degree cameras (Google), wearable body-cams, and an array of new-to-market medical sensor technology.
COS IW 08: The IW Seminar About Nothing
Instructor: David August
Meeting Time: Tuesdays, 1:30-2:50pm
This IW seminar is for you if you have a concrete independent work project plan, but your topic does not fit well into any other IW seminar. Rather than introduce you to a topic as part of a class, this seminar is designed to support you as you do your own independent exploration. This seminar is particularly appropriate for those with prior independent work experience, such as a JRW. (Note: IW seminar titles do not appear on transcripts.)
COS IW 09: You Be the Prof
Instructor: David Walker
Meeting Time: Tuesdays, 11:00am-12:20pm
Ever want to take over a course and show the prof how it's done? Now's your chance. In this IW seminar, develop technology, tools or materials to help other students learn. Doing so could entail:
- Developing a creative assignment for an existing course (one you've taken already at Princeton) designed to teach students a concept in computer science;
- Creating an interactive, web-based tutorial on an interesting topic that you've wanted to learn about (like automata tutor: https://automata-tutor.model.in.tum.de/);
- Developing a tool, app or web-based platform to aid teaching computer science in some way; or
- Developing a tool for teaching concepts in some other discipline outside of computer science.
Examples of past projects in this seminar include:
- A tutorial on reinforcement learning using PyGame;
- TigerStudy: A web-based interface and database for automating the creation of student study groups at Princeton;
- An assignment for COS 326 involving Sudoku solving via SAT and theorem proving;
- A framework for hosting competitive COS 445 game theory assignments; and
- A practice tool to help Princeton students applying to naval flight school succeed on the ASTB-E (Aviation Selection Test Battery Exam)
If you've taken any class and can think of a way to improve it or know of some skill or idea or concept outside of computer science that you can use computer science to help teach, you can explore such a project in this seminar.