Computer Science: Perceiving and Responding
July 12 – 30, 2021
- Computer Science is a rich academic field that studies the computational structures and processes that appear throughout the natural and human worlds. The SLAI Computer Science Program approaches computer science with a liberal arts perspective, looking more broadly than programming alone.
- Students who attend the program will learn about finding computational solutions to two broad areas of interest: problems where the computer needs to perceive something about the world in which it lives, or alternatively problems where the computer needs to respond appropriately given a complex scenario. Participants will do this by attending classes, participating in hands-on lab activities, and working in small teams on projects directed by college faculty and mentored by undergraduate research assistants.
- The program culminates with an online research symposium where students demonstrate the results of their work to each other and the broader community.
Academic Credit Information
Summer Carls can earn Carleton course credits for successfully meeting faculty expectations and completing course requirements. The number of credits available for this program will be posted soon.
In addition to receiving written feedback about course performance from faculty, students will receive one of the following three possible grade designations: satisfactory (S), credit (Cr), or no credit (NC). Formal academic transcripts are available upon request for Summer Carl alumni and will reflect the name of the course and grade earned.
Of the multiple course topics listed on this page, Summer Carls will explore some topics in morning classes and one topic in an afternoon research group.
View SLAI’s Academic Structure Guide to learn more about how you can shape your program experience to fit your interests this summer.
Courses and Faculty:
Natural Language Processing
Natural Language Processing is a broad field that involves using computers to attempt to better interact with humans, either by understanding their speech or producing output that is easier for us to understand.
In this course, we’ll learn how to gather large amounts of human-produced data (perhaps via Twitter, Wikipedia, or another source), read it with modules in the Python programming language, and use some of those modules to perform various sorts of language processing. Some of the projects will include predicting who wrote what, or automatically generating text in the style of another author.
This course will be offered at two levels:
- Week 1: Beginners – The beginners level will be offered in the first week, and will automatically be the course taken by all students who are relatively new to programming. It will start off with an introduction to programming in Python, and then move on to covering language processing topics.
- Weeks 2 & 3 – Experienced – During the second two weeks, this course will be open to students that have had more programming experience, and will move more quickly in order to get to more advanced material.
Dave Musicant is a professor of computer science at Carleton, where he has been since 2000. He received his Ph.D. in computer sciences from the University of Wisconsin-Madison in 2000. His research interests span across solving machine learning and data mining problems, collaborative human/computing systems, and computer science education. Dave regularly teaches Introduction to Computer Science, Data Structures, Artificial Intelligence, Database Systems, Programming Languages, Parallel and Distributed Computing, Data Mining, and “Art, Interactivity, and Robotics.”
Professor Musicant is the Director of the Summer Computer Science