<aside>
👯♀️
Grading
This is graduate school. The course will ask effort of you but that doesn’t mean the grading will be harsh. Do the work and you’ll get a good grade.
Assignments (60%)
- Pass/Fail submitted individually
- Autograded but human-reviewed on failure
- “Due” the following week
- Accepted late without penalty (email if submitting late)
- No assignments for week 9-11 (focus on project)
Final Project (40%)
- Open-ended in format
- May work individually or in groups of any size
- Should probably use methods from this course
Course Topics
Foundational (1-4) → ML/AI (5-8) → Applied (9-10)
- Defensive Programming & Debugging
- Secrets and config with
.env and YAML
- Input validation, logging, and linting with Ruff
- VS Code debugger with Jupyter: breakpoints, logpoints, watches
- Larger-than-memory Data with Polars
- Why memory limits sneak up on you
- Lazy execution and streaming with
scan_* / collect
- Config-driven Polars pipelines
- SQL for Self-service Datasets & Analysis
- SQL in notebooks with JupySQL + DuckDB/SQLite
- Filtering, aggregation, joins, and execution order
- Subqueries, CTEs, window functions, and views
- SQL + Python workflows
- NLP: Extracting Meaning from Clinical Text
- Tokenization, POS tagging, and named entity recognition
- Text extraction with regex and spaCy matchers
- Bag-of-words, TF-IDF, and document similarity
- Clinical text pipelines
- Classification: Predicting Labels with Classic ML
- Train/test splits, cross-validation, and evaluation metrics
- Supervised model tour (logistic regression, SVM, Random Forest, XGBoost)
- How models fail, interpretation, and data preparation