Welcome to the Spring 2025 section of STA 295: Introduction to Statistical Learning
- Syllabus
- Instructor Information:
- Course Information
- Mentor Sessions
- Course Description
- Learning Objectives
- Class Format
- Tokens
- Class Requirements and Components
- Letter Grades
- Course Materials
- Course and College Policies
- Attendance
- Late Policy
- Incomplete Grade Policy
- Student Workload
- Academic Honesty Statement
- Sharing of Course Materials
- Religious Observance
- Students with Disabilities
- Pregnancy and Childcare
- Inclusion Statement
- Take Care of Yourself
- Acknowledgements
- Misc
- Course Schedule
Syllabus
Instructor Information:
Name: William Rebelsky
Office: Noyce 2220
Email: [rebelskyw]
Office Hours: Monday/Friday 10-11:30, Tuesday/Thursday 2:45-4, Friday 1-2
Course Information
Dates: January 21 – May 08
Times: 8:30-9:50 AM T/H
Classroom: Noyce 2401
Texts: An Introduction to Statistical Learning, 2nd Edition (2021) by James, Witten, Hastie, and Tibshirani. (A
.pdf copy of the text is available free of charge on the author’s website). Please use the R version not the Python version.
Mentor Sessions
This course does not have a mentor.
Course Description
Welcome to the Spring 2025 section of Grinnell College’s STA-295. This course is an overview of modern approaches to analyzing and modeling large multivariate data sets across a variety of fields. Theory and implementation for common predictive techniques will be covered, including linear, penalized, and logistic regression, tree-based models, and ensemble models. Framework for model assessment, including the bias-variance trade-off, train-testing splits, and resampling methods, will be discussed. This course will make extensive use of the R programming language.
Prerequisite: STA-209.
Learning Objectives
After completing this course, students will be able to do the following:
- Articulate and compare the different philosophical approaches to prediction, statistical inference, classification, and clustering.
- Create valid statistical models, perform data analysis using software, and communicate results in non-technical language using reproducible methods in order to answer a particular research question.
- Implement simulation and randomization algorithms in order to demonstrate and assess properties of
statistical models. - Assess and compare the performance of a variety of statistical models, and select appropriate models
according to suitable criteria. - Apply statistical learning techniques to real-world data and problems.
- Justify and describe properties of particular statistical learning methods by appealing to appropriate theory.
- Use the R programming language to perform exploratory data analysis, create statistical models, and
analyze model results.
Class Format
The current plan for the course is as follows:
- Every Class will have an assigned reading which should be completed Prior to the start of class
- Tuesdays and Thursdays will consist of a short lecture followed by a lab that will be worked on in pairs.
- Labs will generally be due every Friday
- There will be approximately weekly homework assignments due every Friday
- There will be 3 “Midterms” which are mostly project-based. These will also be due on Fridays
Tokens
Tokens reflect that life inevitably rears its ugly head in some fashion and ruins your best-laid plans.
You begin the course with 3 tokens. Tokens may be used for:
- Turning in a homework late (1 token per homework max, gives 2 late days)
- Re-doing a homework or Lab marked non-satisfactory (1 token per attempt, max 2 extra
attempts). Note that I expected re-submitted assignments to cross a higher bar for Satisfactory (closer to 90/95% correct)
You may not use more tokens than you have. In addition to the 3 tokens you start with, there will
be multiple opportunities to earn more:
- Attending an extra curricular event for one of your classmates that is announced in advance
- Please use this sheet to make suggestions at least a week in advance. I will approve them in column C.
- Attending Convocation
- Attending Department talks
- Attending Mentor Sessions (nothing needs to be submitted in advance)
After attending the event, submit a one-paragraph reflection on the event in the Tokens assignment on Gradescope within one week of the event.
Class Requirements and Components
All Components will be graded on a Satisfactory (S) or not-Satisfactory (NS) scale. In general, all deadlines are 10pm except for the final project group and the final project (5pm).
Daily Reading
Daily reading assignments will be posted on our course webpage, and will list the specific section(s) to read
for each day, along with a response question to be completed by 10 PM the night before class. The questions are not intended to be overly difficult, but should help both you and I highlight topics that need further review. Responses will be assessed primarily on the basis of completion. No extensions on daily readings will be given.
Labs
We will have in class labs almost every class. In general these will be due the Friday immediately following the class period in which they were released. In order to receive a Satisfactory:
- The Lab must be complete: answer all questions, follow all instructions
- The Lab must show a good faith effort on every problem
- Key understanding is shown for each concept (this will vary by Lab)
- Mistakes are minimal
Homework Assignments
We will have approximately weekly homework assignments due on Fridays at 10pm. In order to receive a Satisfactory:
- The Assignment must be complete: answer all questions, follow all instructions
- The Assignment must show a good faith effort on every problem
- Key understanding is shown for each concept
- Approximately 85-90% of problems are solved correctly
Projects
There will be 3 Projects (including the final project):
- Supervised Regression Project due week 6
- Unsupervised Clustering Project due week 10
- Open Ended Project due week 14 (last day of class)
Final Project
There will be no Final Exam in this course. Instead there will be a final project. Throughout the second half of the term, you will work in groups of 2 or 3 on a project that answers a significant research question using real-world data, by implementing the fundamental techniques developed in our class, as well as some more advanced methods from supplementary sources. The project will culminate in a 20 minute presentation and a 4-8 page reproducible technical report.
Attendance and participation
Your attendance and participation in class is an integral part of your learning. You are expected to attend every class and work respectfully and effectively with your assigned partner.
You may be excused from a class under certain situations. Excusable reasons to miss class include college sponsored sports absences, religious holidays, family emergencies, and illness. Please email me at least a week in advance in the event of a planned absence. In the event of an unplanned absence (e.g. illness), please let me know as soon as possible if you will miss class, ideally at least 30min in advance of the start of class. Excused absences will not count against the tokens and will count as an S for the purposes of letter grades below.
Letter Grades
This course will rely on the ideas of specifications grading and mastery grading. These systems, inspired by adult learning theory, are designed to create a “low-threat” learning environment where:
- Mastery obtained via exploration, experimentation, and failure is encouraged and valued as
highly as “getting it right” the first time. - Your final grade accurately reflects your mastery of the learning goals of the course.
I reserve the right to update requirements for grades as circumstances dictate over the course of
the semester (e.g. if the number of assignments or labs changes).
Letter grades for the entire course will be assigned according to the bundles in the table below. You will receive the grade corresponding to the bundle for which you meet all the requirements. All bundles list minimum amounts, you may exceed the requirements for a bundle and still qualify for it. All numbers in the table are the minimum number of satisfactory grades achieved.
| Grade | Daily Readings | Labs | Homework | Projects |
|---|---|---|---|---|
| 17 Possible | 20 Possible | 10 Possible | 3 Possible | |
| C | 12 | 14 | 7 | 1 |
| B | 14 | 16 | 8 | 2 |
| A | 15 | 18 | 9 | 3 |
F: 0-2 requirements of a C are met
Half letter grades (C+,B+): all of the lower tier (C/B) requirements met, two of the higher tier
(B/A) non-essay requirements met.
Half letter grades (B-,A-): all of the lower tier (C/B) requirements met, three of the higher tier
(B/A) non-essay requirements met.
I will link a spreadsheet that you can use to test various combinations to see what the grade will be by the midsemester date.
One of the fundamental principles behind this grading scheme is that you will have opportunities to re-try assignments if they do not originally obtain a satisfactory grade. My goal in using this schema is to reduce the stress that accompanies typical grading rubrics and give you permission to make mistakes and learn as much as possible. Ultimately, my goal is for each student to learn as much as possible, and I would be very happy to have every student earn an A. Letter grades for the entire course will be assigned according to the bundles in the table above. You will receive the grade corresponding to the bundle for which you meet all the requirements. All bundles list minimum amounts, you may exceed the requirements for a bundle and still qualify for it.
Course Materials
Required Textbooks and Materials:
- Access to a computer is required. There should be computers in the classroom if you would rather not use your personal computer
- If using a personal computer: R, Rstudio
Resources
- Submit your assignments on Gradescope
- Databases, journal articles, and more: Grinnell Library
- Receive Assistance with strengthening your writing: Grinnell Writing Lab
- Receive Assistance with Statistical concepts: Math Lab
- Receive Assistance with R coding and visualizations: DASIL
- Health and Wellness: SHAW
Course and College Policies
Attendance
I highly encourage you to attend all class sessions. Attendance affects your learning in this course, and thus affects your grade. If you know in advance that you will miss class due to a college sponsored sport or a religious holiday, please let me know in the first two weeks of the semester. If you have another emergency come up please let me (and the college) know when safe for you.
Late Policy
All assignments are to be turned in electronically by 10:00PM Central Time on the day they are due. I am aware that there are a number of things outside of your control that may affect your ability to complete work on time. If possible, please let me know if you plan to turn in work late. Assignments turned in more than two days late (without prior approval) will not be accepted.
Incomplete Grade Policy
All work for the course is due by 5:00 pm on the last day of finals (20 Dec 2024). This is a college policy and there is no flexibility in this time. In exceptional circumstances, incomplete grades can be granted. Talk with me if you think you might need an incomplete to complete all the requirements of the course.
Student Workload
You can expect to spend 12 hours per week on this course, including all in-class and out of class time. This number is based off of the Grinnell Guidelines for credit-hours. If you find that you are spending significantly more than 9 hours working on material for this course outside of class each week, please let me know.
Academic Honesty Statement
Grinnell College’s Academic Honesty Policy is located in the online Student Handbook. It is the College’s expectation that students be aware of and meet the expectations expressed in this policy. In addition, in this course, it is my expectation that students may collaborate on the Homework Assignments and must collaborate on the Labs, however your collaboration must be attributed and all answers must be written up separately. It is my expectation that the Midterm will be completed independently.
In this course, you are not allowed to use solutions you find on the internet, and further, you are not allowed to search for problem solutions on the internet (this includes resources such as ChatGpt). I know that there is great temptation to look for solutions online when things get difficult. It is my hope that the format of this course eases some of the pressure that you might feel. Additionally, we will work to build our growth mindset in this course, which makes it less uncomfortable to sit with a challenging problem. For more information on the way I approach academic honesty, it may be helpful to check out Professor Samuel Rebelsky’s extended statement on academic honesty and integrity.
Sharing of Course Materials
Our goal is to create an inclusive learning environment where people feel free to share, fail, and ultimately grow in knowledge. To create such an environment, it is imperative that we be mindful of what we share outside of our learning space. To this end, I request that you refraining from sharing any recordings of our class meetings with others. Recordings of class meetings that we provide, e.g., recorded through Microsoft Teams, are meant for your personal use and should not be shared outside of the class. Students should not make their own recordings of class meetings.
Furthermore, while you retain copyright of the work you produce in this course, we must still uphold the academic integrity of this course. To this end, you may not share copies of your assignments with others (unless otherwise allowed by the course policies) or upload your assignments to third party websites unless substantial changes are made to the assignment (e.g., significant extensions and improvements to your code) so that it is clear that the end product is significantly different from what was asked in original assignment. I do recognize that there are times where you want to do this, e.g., uploading projects to Github for your resume or to show to friends and family, and so I encourage you come talk to me in advance, so that we can ensure that you upload a meaningful project that does not run afoul of this policy.
Religious Observance
I encourage students who plan to observe holy days that coincide with class meetings or assignment due dates to consult with me in the first two weeks of classes so that we may reach a mutual understanding of how you can meet the terms of your religious observance and also the requirements for this course.
Students with Disabilities
I encourage students with documented disabilities, including invisible disabilities such as chronic illness, learning disabilities, and psychiatric disabilities, to discuss appropriate accommodations with me. You will also need to have a conversation about and provide documentation of your disability to the Coordinator for Disability Resources, located on the ground level of Steiner Hall (641-269-3124).
Pregnancy and Childcare
Grinnell College is committed to compliance with Title IX and to supporting the academic success of pregnant and parenting students and students with pregnancy related conditions. If you are a pregnant student, have pregnancy related conditions, or are a parenting student (child under one-year needs documented medical care) who wishes to request reasonable related supportive measures from the College under Title IX, please email the Title IX Coordinator at titleix@grinnell.edu. The Title IX Coordinator will work with Disability Resources and your professors to provide reasonable supportive measures in support of your education while pregnant or as a parent under Title IX.
Inclusion Statement
It is my intention that students from all backgrounds and perspectives will be well served by this course, and that the diversity that students bring to this class will be viewed as an asset. I welcome individuals of all ages, backgrounds, beliefs, ethnicities, genders, gender identities, gender expressions, national origins, religious affiliations, sexual orientations, socioeconomic background, family education level, ability – and other visible and nonvisible differences. All members of this class are expected to contribute to a respectful, welcoming, and inclusive environment for every other member of the class. Your suggestions are encouraged and appreciated.
Take Care of Yourself
Do your best to maintain a healthy lifestyle this term by eating well, exercising, avoiding drugs and alcohol, getting enough sleep and taking some time to relax. This will help you achieve your goals and cope with stress.
All of us benefit from support during times of struggle. You are not alone. There are many helpful resources available through campus and an important part of the college experience is learning how to ask for help. Asking for support sooner rather than later is often helpful. If you or anyone you know experiences any academic stress, difficult life events, or feelings like anxiety or depression, I strongly encourage you to seek support. Student Health and Wellness (SHAW) is here to help: call 641-269-3230 and visit their website at https://www.grinnell.edu/about/offices-services/student-health. Consider reaching out to a friend, faculty, or family member you trust for help getting connected to the support that can help.
If you or someone you know is feeling suicidal or in danger of self-harm, call someone immediately, day or night:
- Need to Talk Line: 641-269-4404 (available 24/7 for counseling needs)
- 24/7 Suicidal Hotline: 1-800-273-8255
- If the situation is life threatening, call 911
Acknowledgements
- This Syllabus is based off material taken from a variety of Professors at Grinnell including, but not limited to, Professors Eikmeier, Rebelsky, and Miller.
- The inclusion statement has been taken verbatim from https://lgbtq.asee.org/resources/ally-resources/
- The Take Care of Yourself Section has been taken verbatim from https://www.cmu.edu/
teaching/designteach/design/syllabus/syllabussupport.html
Misc
Why use R for Data Science?
If you’ve spent any time reading about data science online you’ll undoubtedly have noticed the prominence of the Python programming language. Indeed, research from Cal State University found Python was the most popular data science language in private industry, being mentioned in 42% of data scientist job postings. However, R, which was mentioned in 20% of job postings, is not far behind and offers a few advantages when approaching data science from a statistical perspective (hence this course having the STA prefix).
Both R and Python provide plenty of functions for data manipulation. However, because R was created by academic statisticians, it offers very strong data visualization and statistical modeling packages. On the other hand, Python is a general-purpose programming language that excels in production, deployment, and machine learning. Regardless of each language’s strengths and weaknesses, as an introductory course our focus is on the fundamental skills and thought processes used in data science – which is something that can be accomplished regardless of the tools used (which will change over time anyways).
Course Schedule
Spring Break is between Weeks 7 and 8
| Week | Day | Date | Weekly Topic | Topic | Reading Due | Labs Due | Homework Due | Project Due |
| 1 | Tuesday | 21-Jan | Introduction | Intro 1 | Labs 1, 2 | Homework 0 | ||
| Thursday | 23-Jan | Intro 2 | Chapter 1 | |||||
| 2 | Tuesday | 28-Jan | Foundations of Stat Learning | Foundations 1 | 2.1 | Labs 3, 4 | Homework 1 | |
| Thursday | 30-Jan | Foundations 2 | 2.2 | |||||
| 3 | Tuesday | 4-Feb | Basics of Linear Regression | Linear Regression | 3.1,3 | Labs 5, 6 | Homework 2 | |
| Thursday | 6-Feb | Multiple Lin Reg | 3.2 | |||||
| 4 | Tuesday | 11-Feb | Selection and regularization | Model Selection and Regularization | 6.1,2, 4 | Labs 7, 8 | Homework 3 | |
| Thursday | 13-Feb | Poly Regression | 7.1 | |||||
| 5 | Tuesday | 18-Feb | Resampling Methods | Cross Validation | 5.1 | Labs 9, 10 | Homework 4 | |
| Thursday | 20-Feb | Bootstraping | 5.2 | |||||
| 6 | Tuesday | 25-Feb | Open space for topics that take longer than planned | Project 1 Due | ||||
| Thursday | 27-Feb | |||||||
| 7 | Tuesday | 4-Mar | Classification | Logistic Regression | 4.1-3 | Labs 11, 12 | Homework 6 | Final: Group |
| Thursday | 6-Mar | Naïve Bayes | 4.4.4 | |||||
| Spring Break | ||||||||
| 8 | Tuesday | 25-Mar | Classification: Unsupervised | KNN | 12.1, 12.4.1 | Labs 13, 14 | ||
| Thursday | 27-Mar | Hierarchical | 12.4.2,12.4.3 | |||||
| 9 | Tuesday | 1-Apr | Tree Based Methods | Trees 1 | 8.1 | Labs 15, 16 | Homework 7 | Final: Proposal |
| Thursday | 3-Apr | Trees 2 | ||||||
| 10 | Tuesday | 8-Apr | Forests | Enemble Models | 8.2 | Labs 17, 18 | Project 2 Due | |
| Thursday | 10-Apr | Enemble Models: Forests | ||||||
| 11 | Tuesday | 15-Apr | SVM | SVM 1 | 9.1,2 | Labs 19, 20 | Homework 8 | Final: Data Exploration |
| Thursday | 17-Apr | SVM 2 | 9.3 | |||||
| 12 | Tuesday | 22-Apr | Open space for topics that take longer than planned | Homework 9 | Final: Draft | |||
| Thursday | 24-Apr | |||||||
| 13 | Tuesday | 29-Apr | Open space for topics that take longer than planned or project work time | |||||
| Thursday | 1-May | |||||||
| 14 | Tuesday | 6-May | Project Presentations | Final: Paper | ||||
| Thursday | 8-May | Project Presentations | ||||||