Course Schedule
Part 1: Performance
Week 1
[Mon] Labor Day (Sep 6)
Week 2
[Mon] Performance 1 (Sep 13)
- check_output
- time
Lab: Cloud Setup
Released: P1 (perf measurements)
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
[Wed] Performance 2 (Sep 15)
- complexity analysis
- Big O
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
[Fri] Performance 3 (Sep 17)
- practice
Watch: Lecture
Worksheet: PDF
PythonTutor: examples
Read: Lecture Notes (NB)
Week 3
[Mon] Performance 4 (Sep 20)
- large data
- generators
Lab: Git Practice
Watch: Lecture
PythonTutor: examples
[Wed] OOP 1: Classes (Sep 22)
- attributes
- methods
- constructors
Optional Reading: Think Python 15, 16, and 17.1 - 17.5
Watch: Lecture
QUIZ 1 DUE
Slides: PDF
Read: Lecture Notes (NB)
[Fri] OOP 2: Special Methods (Sep 24)
- __str__, __repr__, _repr_html_
- __eq__, __lt__
- __len__, __getitem__
- __enter__, __exit__
Optional Reading: Python Data Model
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
Week 4
[Mon] OOP 3: Inheritance (Sep 27)
- method resolution order
- overriding methods
- calling overridden methods
Due: P1
Released: P2 (trees)
Optional Reading: Think Python 18
Lab: Files and Complexity
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
[Fri] Recursion (Oct 1)
- functions that return something
- functions that do something
Watch: Lecture
Read: Lecture Notes (NB)
Week 5
[Mon] Graphs and Tree Intro (Oct 4)
- types of graph
- graphviz
Lab: Linked Lists
Watch: Lecture
Read: Lecture Notes (NB)
[Wed] Trees 1 (Oct 6)
- trees
- binary trees
- binary search trees (BSTs)
QUIZ 3 DUE
Watch: Lecture
Read: Lecture Notes (NB)
[Fri] Trees 2 (Oct 8)
- implementing sets with BSTs
- balance, complexity
- graph search
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
Week 6
[Mon] Graph Search 1 (Oct 11)
- depth-first search
Lab: BSTs
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
[Wed] Graph Search 2 (Oct 13)
- breadth-first search
Due: P2
Released: P3 (crawler)
QUIZ 4 DUE
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
[Fri] Web 1: Selenium (Oct 15)
- advanced web scraping
TRICKY PAGES
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
Part 2: Web and Visualization
Week 7
[Mon] Web 2: Recursive Crawl (Oct 18)
- more tricky pages
- BFS for webpages
CRAWL PRACTICE
Lab: DFS vs. BFS
Watch: Lecture
Read: Lecture Notes (NB)
[Wed] Web 3: Flask (Oct 20)
- Internet overview
- flask
- decorators
QUIZ 5 DUE
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
[Fri] Web 4: More Flask (Oct 22)
- query strings
- rate limiting (HTTP 429)
- robots.txt
Watch: Lecture
Read: Lecture Notes (NB)
Week 8
[Mon] Web 5: A/B testing (Oct 25)
- data collection
- significance
Read: The Morality of A/B Testing (TechCrunch article)
Due: P3
Released: P4 (website)
Lab: Web
Watch: Lecture
Slides: PDF
[Fri] Regex 1 (Oct 29)
- character classes
- repetition
- anchoring
Read: DS100 Ch 13
Watch: Lecture
Slides: PDF
Week 9
[Wed] In-Class Midterm (Nov 3)
[Fri] Visualization 1 (Nov 5)
- matplotlib coordinate systems
- drawing custom lines/polygons
Watch: Lecture
Read: Lecture Notes (NB)
Week 10
[Mon] Visualization 2 (Nov 8)
- geographic maps
- shapefiles
- high resolution graphics
Lab: Geo Maps
Watch: Lecture
Read: Lecture Notes (NB)
[Wed] Visualization 3 (Nov 10)
- shapely
- animations
Due: P4
Released: P5 (trace analysis)
QUIZ 7 DUE
Watch: Lecture
Read: Lecture Notes (NB)
[Fri] Visualization 4 (Nov 12)
- big example
- animated map of incidents scraped from Madison Fire Department
Watch 1: Lecture (In Class)
Watch 2: Lecture (After Class)
Part 3: Machine Learning
Week 11
[Mon] Regression 1 (Nov 15)
- ML overview
- sklearn LinearRegression
- explained variance
- train/test split
Lab: Regressions and SQL
Watch: Lecture
Slides: PDF
[Fri] Linear Algebra 1 (Nov 19)
- numpy arrays
- numpy images
- multiplication
Watch: Lecture
Read: Lecture Notes (NB)
Week 12
[Mon] Linear Algebra 2 (Nov 22)
- more multiplication
- fit with np.linalg.solve
- predict with np.dot
- column perspective
Watch: Lecture
Due: P5
Released: P6 (land matrices and regression)
Lab: Dot Product and Counting Cells
Read: Lecture Notes (NB)
[Fri] Thanksgiving Break (Nov 26)
Week 13
[Mon] Linear Algebra 3 (Nov 29)
- column spaces
- projection matrices
Lab: Model Comparison
Watch: Lecture
Read: Lecture Notes (NB)
[Wed] Classification 1 (Dec 1)
- LogisticRegression
- multiclass, proba
- decision boundaries
QUIZ 10 DUE
Watch: Lecture
Slides: PDF
[Fri] Classification 2 (Dec 3)
- confusion matrices
- accuracy, precision, recall
- regularization and standardization
Due: P6
Released: P7 (classification)
Watch: Lecture
Slides: PDF
Week 14
[Wed] Clustering 2 (Dec 8)
- hierarchical clustering
- dendrograms
- linkage matrices
- AgglomerativeClustering
QUIZ 11 DUE
Watch: Lecture
Slides: PDF
[Fri] Decomposition (Dec 10)
- Singular Value Decomposition (SVD)
- Principal Component Analysis (PCA)
- Compressing Data
Watch: Lecture
Read: Lecture Notes (NB)
Week 15
[Mon] Parallelism 1 (Dec 13)
- multiprocessing pools
- parallel map
Lab: Clustering Pixels
Due: P7
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
[Mon] Labor Day (Sep 6)
[Mon] Performance 1 (Sep 13)
- check_output
- time
Released: P1 (perf measurements)
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
[Wed] Performance 2 (Sep 15)
- complexity analysis
- Big O
Slides: PDF
Read: Lecture Notes (NB)
[Fri] Performance 3 (Sep 17)
- practice
Worksheet: PDF
PythonTutor: examples
Read: Lecture Notes (NB)
Week 3
[Mon] Performance 4 (Sep 20)
- large data
- generators
Lab: Git Practice
Watch: Lecture
PythonTutor: examples
[Wed] OOP 1: Classes (Sep 22)
- attributes
- methods
- constructors
Optional Reading: Think Python 15, 16, and 17.1 - 17.5
Watch: Lecture
QUIZ 1 DUE
Slides: PDF
Read: Lecture Notes (NB)
[Fri] OOP 2: Special Methods (Sep 24)
- __str__, __repr__, _repr_html_
- __eq__, __lt__
- __len__, __getitem__
- __enter__, __exit__
Optional Reading: Python Data Model
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
Week 4
[Mon] OOP 3: Inheritance (Sep 27)
- method resolution order
- overriding methods
- calling overridden methods
Due: P1
Released: P2 (trees)
Optional Reading: Think Python 18
Lab: Files and Complexity
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
[Fri] Recursion (Oct 1)
- functions that return something
- functions that do something
Watch: Lecture
Read: Lecture Notes (NB)
Week 5
[Mon] Graphs and Tree Intro (Oct 4)
- types of graph
- graphviz
Lab: Linked Lists
Watch: Lecture
Read: Lecture Notes (NB)
[Wed] Trees 1 (Oct 6)
- trees
- binary trees
- binary search trees (BSTs)
QUIZ 3 DUE
Watch: Lecture
Read: Lecture Notes (NB)
[Fri] Trees 2 (Oct 8)
- implementing sets with BSTs
- balance, complexity
- graph search
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
Week 6
[Mon] Graph Search 1 (Oct 11)
- depth-first search
Lab: BSTs
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
[Wed] Graph Search 2 (Oct 13)
- breadth-first search
Due: P2
Released: P3 (crawler)
QUIZ 4 DUE
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
[Fri] Web 1: Selenium (Oct 15)
- advanced web scraping
TRICKY PAGES
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
Part 2: Web and Visualization
Week 7
[Mon] Web 2: Recursive Crawl (Oct 18)
- more tricky pages
- BFS for webpages
CRAWL PRACTICE
Lab: DFS vs. BFS
Watch: Lecture
Read: Lecture Notes (NB)
[Wed] Web 3: Flask (Oct 20)
- Internet overview
- flask
- decorators
QUIZ 5 DUE
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
[Fri] Web 4: More Flask (Oct 22)
- query strings
- rate limiting (HTTP 429)
- robots.txt
Watch: Lecture
Read: Lecture Notes (NB)
Week 8
[Mon] Web 5: A/B testing (Oct 25)
- data collection
- significance
Read: The Morality of A/B Testing (TechCrunch article)
Due: P3
Released: P4 (website)
Lab: Web
Watch: Lecture
Slides: PDF
[Fri] Regex 1 (Oct 29)
- character classes
- repetition
- anchoring
Read: DS100 Ch 13
Watch: Lecture
Slides: PDF
Week 9
[Wed] In-Class Midterm (Nov 3)
[Fri] Visualization 1 (Nov 5)
- matplotlib coordinate systems
- drawing custom lines/polygons
Watch: Lecture
Read: Lecture Notes (NB)
Week 10
[Mon] Visualization 2 (Nov 8)
- geographic maps
- shapefiles
- high resolution graphics
Lab: Geo Maps
Watch: Lecture
Read: Lecture Notes (NB)
[Wed] Visualization 3 (Nov 10)
- shapely
- animations
Due: P4
Released: P5 (trace analysis)
QUIZ 7 DUE
Watch: Lecture
Read: Lecture Notes (NB)
[Fri] Visualization 4 (Nov 12)
- big example
- animated map of incidents scraped from Madison Fire Department
Watch 1: Lecture (In Class)
Watch 2: Lecture (After Class)
Part 3: Machine Learning
Week 11
[Mon] Regression 1 (Nov 15)
- ML overview
- sklearn LinearRegression
- explained variance
- train/test split
Lab: Regressions and SQL
Watch: Lecture
Slides: PDF
[Fri] Linear Algebra 1 (Nov 19)
- numpy arrays
- numpy images
- multiplication
Watch: Lecture
Read: Lecture Notes (NB)
Week 12
[Mon] Linear Algebra 2 (Nov 22)
- more multiplication
- fit with np.linalg.solve
- predict with np.dot
- column perspective
Watch: Lecture
Due: P5
Released: P6 (land matrices and regression)
Lab: Dot Product and Counting Cells
Read: Lecture Notes (NB)
[Fri] Thanksgiving Break (Nov 26)
Week 13
[Mon] Linear Algebra 3 (Nov 29)
- column spaces
- projection matrices
Lab: Model Comparison
Watch: Lecture
Read: Lecture Notes (NB)
[Wed] Classification 1 (Dec 1)
- LogisticRegression
- multiclass, proba
- decision boundaries
QUIZ 10 DUE
Watch: Lecture
Slides: PDF
[Fri] Classification 2 (Dec 3)
- confusion matrices
- accuracy, precision, recall
- regularization and standardization
Due: P6
Released: P7 (classification)
Watch: Lecture
Slides: PDF
Week 14
[Wed] Clustering 2 (Dec 8)
- hierarchical clustering
- dendrograms
- linkage matrices
- AgglomerativeClustering
QUIZ 11 DUE
Watch: Lecture
Slides: PDF
[Fri] Decomposition (Dec 10)
- Singular Value Decomposition (SVD)
- Principal Component Analysis (PCA)
- Compressing Data
Watch: Lecture
Read: Lecture Notes (NB)
Week 15
[Mon] Parallelism 1 (Dec 13)
- multiprocessing pools
- parallel map
Lab: Clustering Pixels
Due: P7
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
[Mon] Performance 4 (Sep 20)
- large data
- generators
Watch: Lecture
PythonTutor: examples
[Wed] OOP 1: Classes (Sep 22)
- attributes
- methods
- constructors
Watch: Lecture
QUIZ 1 DUE
Slides: PDF
Read: Lecture Notes (NB)
[Fri] OOP 2: Special Methods (Sep 24)
- __str__, __repr__, _repr_html_
- __eq__, __lt__
- __len__, __getitem__
- __enter__, __exit__
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
[Mon] OOP 3: Inheritance (Sep 27)
- method resolution order
- overriding methods
- calling overridden methods
Released: P2 (trees)
Optional Reading: Think Python 18
Lab: Files and Complexity
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
[Fri] Recursion (Oct 1)
- functions that return something
- functions that do something
Read: Lecture Notes (NB)
Week 5
[Mon] Graphs and Tree Intro (Oct 4)
- types of graph
- graphviz
Lab: Linked Lists
Watch: Lecture
Read: Lecture Notes (NB)
[Wed] Trees 1 (Oct 6)
- trees
- binary trees
- binary search trees (BSTs)
QUIZ 3 DUE
Watch: Lecture
Read: Lecture Notes (NB)
[Fri] Trees 2 (Oct 8)
- implementing sets with BSTs
- balance, complexity
- graph search
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
Week 6
[Mon] Graph Search 1 (Oct 11)
- depth-first search
Lab: BSTs
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
[Wed] Graph Search 2 (Oct 13)
- breadth-first search
Due: P2
Released: P3 (crawler)
QUIZ 4 DUE
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
[Fri] Web 1: Selenium (Oct 15)
- advanced web scraping
TRICKY PAGES
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
Part 2: Web and Visualization
Week 7
[Mon] Web 2: Recursive Crawl (Oct 18)
- more tricky pages
- BFS for webpages
CRAWL PRACTICE
Lab: DFS vs. BFS
Watch: Lecture
Read: Lecture Notes (NB)
[Wed] Web 3: Flask (Oct 20)
- Internet overview
- flask
- decorators
QUIZ 5 DUE
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
[Fri] Web 4: More Flask (Oct 22)
- query strings
- rate limiting (HTTP 429)
- robots.txt
Watch: Lecture
Read: Lecture Notes (NB)
Week 8
[Mon] Web 5: A/B testing (Oct 25)
- data collection
- significance
Read: The Morality of A/B Testing (TechCrunch article)
Due: P3
Released: P4 (website)
Lab: Web
Watch: Lecture
Slides: PDF
[Fri] Regex 1 (Oct 29)
- character classes
- repetition
- anchoring
Read: DS100 Ch 13
Watch: Lecture
Slides: PDF
Week 9
[Wed] In-Class Midterm (Nov 3)
[Fri] Visualization 1 (Nov 5)
- matplotlib coordinate systems
- drawing custom lines/polygons
Watch: Lecture
Read: Lecture Notes (NB)
Week 10
[Mon] Visualization 2 (Nov 8)
- geographic maps
- shapefiles
- high resolution graphics
Lab: Geo Maps
Watch: Lecture
Read: Lecture Notes (NB)
[Wed] Visualization 3 (Nov 10)
- shapely
- animations
Due: P4
Released: P5 (trace analysis)
QUIZ 7 DUE
Watch: Lecture
Read: Lecture Notes (NB)
[Fri] Visualization 4 (Nov 12)
- big example
- animated map of incidents scraped from Madison Fire Department
Watch 1: Lecture (In Class)
Watch 2: Lecture (After Class)
Part 3: Machine Learning
Week 11
[Mon] Regression 1 (Nov 15)
- ML overview
- sklearn LinearRegression
- explained variance
- train/test split
Lab: Regressions and SQL
Watch: Lecture
Slides: PDF
[Fri] Linear Algebra 1 (Nov 19)
- numpy arrays
- numpy images
- multiplication
Watch: Lecture
Read: Lecture Notes (NB)
Week 12
[Mon] Linear Algebra 2 (Nov 22)
- more multiplication
- fit with np.linalg.solve
- predict with np.dot
- column perspective
Watch: Lecture
Due: P5
Released: P6 (land matrices and regression)
Lab: Dot Product and Counting Cells
Read: Lecture Notes (NB)
[Fri] Thanksgiving Break (Nov 26)
Week 13
[Mon] Linear Algebra 3 (Nov 29)
- column spaces
- projection matrices
Lab: Model Comparison
Watch: Lecture
Read: Lecture Notes (NB)
[Wed] Classification 1 (Dec 1)
- LogisticRegression
- multiclass, proba
- decision boundaries
QUIZ 10 DUE
Watch: Lecture
Slides: PDF
[Fri] Classification 2 (Dec 3)
- confusion matrices
- accuracy, precision, recall
- regularization and standardization
Due: P6
Released: P7 (classification)
Watch: Lecture
Slides: PDF
Week 14
[Wed] Clustering 2 (Dec 8)
- hierarchical clustering
- dendrograms
- linkage matrices
- AgglomerativeClustering
QUIZ 11 DUE
Watch: Lecture
Slides: PDF
[Fri] Decomposition (Dec 10)
- Singular Value Decomposition (SVD)
- Principal Component Analysis (PCA)
- Compressing Data
Watch: Lecture
Read: Lecture Notes (NB)
Week 15
[Mon] Parallelism 1 (Dec 13)
- multiprocessing pools
- parallel map
Lab: Clustering Pixels
Due: P7
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
[Mon] Graphs and Tree Intro (Oct 4)
- types of graph
- graphviz
Watch: Lecture
Read: Lecture Notes (NB)
[Wed] Trees 1 (Oct 6)
- trees
- binary trees
- binary search trees (BSTs)
Watch: Lecture
Read: Lecture Notes (NB)
[Fri] Trees 2 (Oct 8)
- implementing sets with BSTs
- balance, complexity
- graph search
Slides: PDF
Read: Lecture Notes (NB)
[Mon] Graph Search 1 (Oct 11)
- depth-first search
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
[Wed] Graph Search 2 (Oct 13)
- breadth-first search
Released: P3 (crawler)
QUIZ 4 DUE
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
[Fri] Web 1: Selenium (Oct 15)
- advanced web scraping
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
Part 2: Web and Visualization
Week 7
[Mon] Web 2: Recursive Crawl (Oct 18)
- more tricky pages
- BFS for webpages
CRAWL PRACTICE
Lab: DFS vs. BFS
Watch: Lecture
Read: Lecture Notes (NB)
[Wed] Web 3: Flask (Oct 20)
- Internet overview
- flask
- decorators
QUIZ 5 DUE
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
[Fri] Web 4: More Flask (Oct 22)
- query strings
- rate limiting (HTTP 429)
- robots.txt
Watch: Lecture
Read: Lecture Notes (NB)
Week 8
[Mon] Web 5: A/B testing (Oct 25)
- data collection
- significance
Read: The Morality of A/B Testing (TechCrunch article)
Due: P3
Released: P4 (website)
Lab: Web
Watch: Lecture
Slides: PDF
[Fri] Regex 1 (Oct 29)
- character classes
- repetition
- anchoring
Read: DS100 Ch 13
Watch: Lecture
Slides: PDF
Week 9
[Wed] In-Class Midterm (Nov 3)
[Fri] Visualization 1 (Nov 5)
- matplotlib coordinate systems
- drawing custom lines/polygons
Watch: Lecture
Read: Lecture Notes (NB)
Week 10
[Mon] Visualization 2 (Nov 8)
- geographic maps
- shapefiles
- high resolution graphics
Lab: Geo Maps
Watch: Lecture
Read: Lecture Notes (NB)
[Wed] Visualization 3 (Nov 10)
- shapely
- animations
Due: P4
Released: P5 (trace analysis)
QUIZ 7 DUE
Watch: Lecture
Read: Lecture Notes (NB)
[Fri] Visualization 4 (Nov 12)
- big example
- animated map of incidents scraped from Madison Fire Department
Watch 1: Lecture (In Class)
Watch 2: Lecture (After Class)
Part 3: Machine Learning
Week 11
[Mon] Regression 1 (Nov 15)
- ML overview
- sklearn LinearRegression
- explained variance
- train/test split
Lab: Regressions and SQL
Watch: Lecture
Slides: PDF
[Fri] Linear Algebra 1 (Nov 19)
- numpy arrays
- numpy images
- multiplication
Watch: Lecture
Read: Lecture Notes (NB)
Week 12
[Mon] Linear Algebra 2 (Nov 22)
- more multiplication
- fit with np.linalg.solve
- predict with np.dot
- column perspective
Watch: Lecture
Due: P5
Released: P6 (land matrices and regression)
Lab: Dot Product and Counting Cells
Read: Lecture Notes (NB)
[Fri] Thanksgiving Break (Nov 26)
Week 13
[Mon] Linear Algebra 3 (Nov 29)
- column spaces
- projection matrices
Lab: Model Comparison
Watch: Lecture
Read: Lecture Notes (NB)
[Wed] Classification 1 (Dec 1)
- LogisticRegression
- multiclass, proba
- decision boundaries
QUIZ 10 DUE
Watch: Lecture
Slides: PDF
[Fri] Classification 2 (Dec 3)
- confusion matrices
- accuracy, precision, recall
- regularization and standardization
Due: P6
Released: P7 (classification)
Watch: Lecture
Slides: PDF
Week 14
[Wed] Clustering 2 (Dec 8)
- hierarchical clustering
- dendrograms
- linkage matrices
- AgglomerativeClustering
QUIZ 11 DUE
Watch: Lecture
Slides: PDF
[Fri] Decomposition (Dec 10)
- Singular Value Decomposition (SVD)
- Principal Component Analysis (PCA)
- Compressing Data
Watch: Lecture
Read: Lecture Notes (NB)
Week 15
[Mon] Parallelism 1 (Dec 13)
- multiprocessing pools
- parallel map
Lab: Clustering Pixels
Due: P7
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
[Mon] Web 2: Recursive Crawl (Oct 18)
- more tricky pages
- BFS for webpages
Lab: DFS vs. BFS
Watch: Lecture
Read: Lecture Notes (NB)
[Wed] Web 3: Flask (Oct 20)
- Internet overview
- flask
- decorators
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
[Fri] Web 4: More Flask (Oct 22)
- query strings
- rate limiting (HTTP 429)
- robots.txt
Read: Lecture Notes (NB)
[Mon] Web 5: A/B testing (Oct 25)
- data collection
- significance
Due: P3
Released: P4 (website)
Lab: Web
Watch: Lecture
Slides: PDF
[Fri] Regex 1 (Oct 29)
- character classes
- repetition
- anchoring
Watch: Lecture
Slides: PDF
Week 9
[Wed] In-Class Midterm (Nov 3)
[Fri] Visualization 1 (Nov 5)
- matplotlib coordinate systems
- drawing custom lines/polygons
Watch: Lecture
Read: Lecture Notes (NB)
Week 10
[Mon] Visualization 2 (Nov 8)
- geographic maps
- shapefiles
- high resolution graphics
Lab: Geo Maps
Watch: Lecture
Read: Lecture Notes (NB)
[Wed] Visualization 3 (Nov 10)
- shapely
- animations
Due: P4
Released: P5 (trace analysis)
QUIZ 7 DUE
Watch: Lecture
Read: Lecture Notes (NB)
[Fri] Visualization 4 (Nov 12)
- big example
- animated map of incidents scraped from Madison Fire Department
Watch 1: Lecture (In Class)
Watch 2: Lecture (After Class)
Part 3: Machine Learning
Week 11
[Mon] Regression 1 (Nov 15)
- ML overview
- sklearn LinearRegression
- explained variance
- train/test split
Lab: Regressions and SQL
Watch: Lecture
Slides: PDF
[Fri] Linear Algebra 1 (Nov 19)
- numpy arrays
- numpy images
- multiplication
Watch: Lecture
Read: Lecture Notes (NB)
Week 12
[Mon] Linear Algebra 2 (Nov 22)
- more multiplication
- fit with np.linalg.solve
- predict with np.dot
- column perspective
Watch: Lecture
Due: P5
Released: P6 (land matrices and regression)
Lab: Dot Product and Counting Cells
Read: Lecture Notes (NB)
[Fri] Thanksgiving Break (Nov 26)
Week 13
[Mon] Linear Algebra 3 (Nov 29)
- column spaces
- projection matrices
Lab: Model Comparison
Watch: Lecture
Read: Lecture Notes (NB)
[Wed] Classification 1 (Dec 1)
- LogisticRegression
- multiclass, proba
- decision boundaries
QUIZ 10 DUE
Watch: Lecture
Slides: PDF
[Fri] Classification 2 (Dec 3)
- confusion matrices
- accuracy, precision, recall
- regularization and standardization
Due: P6
Released: P7 (classification)
Watch: Lecture
Slides: PDF
Week 14
[Wed] Clustering 2 (Dec 8)
- hierarchical clustering
- dendrograms
- linkage matrices
- AgglomerativeClustering
QUIZ 11 DUE
Watch: Lecture
Slides: PDF
[Fri] Decomposition (Dec 10)
- Singular Value Decomposition (SVD)
- Principal Component Analysis (PCA)
- Compressing Data
Watch: Lecture
Read: Lecture Notes (NB)
Week 15
[Mon] Parallelism 1 (Dec 13)
- multiprocessing pools
- parallel map
Lab: Clustering Pixels
Due: P7
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
[Wed] In-Class Midterm (Nov 3)
[Fri] Visualization 1 (Nov 5)
- matplotlib coordinate systems
- drawing custom lines/polygons
Read: Lecture Notes (NB)
[Mon] Visualization 2 (Nov 8)
- geographic maps
- shapefiles
- high resolution graphics
Watch: Lecture
Read: Lecture Notes (NB)
[Wed] Visualization 3 (Nov 10)
- shapely
- animations
Released: P5 (trace analysis)
QUIZ 7 DUE
Watch: Lecture
Read: Lecture Notes (NB)
[Fri] Visualization 4 (Nov 12)
- big example
- animated map of incidents scraped from Madison Fire Department
Watch 2: Lecture (After Class)
Part 3: Machine Learning
Week 11
[Mon] Regression 1 (Nov 15)
- ML overview
- sklearn LinearRegression
- explained variance
- train/test split
Lab: Regressions and SQL
Watch: Lecture
Slides: PDF
[Fri] Linear Algebra 1 (Nov 19)
- numpy arrays
- numpy images
- multiplication
Watch: Lecture
Read: Lecture Notes (NB)
Week 12
[Mon] Linear Algebra 2 (Nov 22)
- more multiplication
- fit with np.linalg.solve
- predict with np.dot
- column perspective
Watch: Lecture
Due: P5
Released: P6 (land matrices and regression)
Lab: Dot Product and Counting Cells
Read: Lecture Notes (NB)
[Fri] Thanksgiving Break (Nov 26)
Week 13
[Mon] Linear Algebra 3 (Nov 29)
- column spaces
- projection matrices
Lab: Model Comparison
Watch: Lecture
Read: Lecture Notes (NB)
[Wed] Classification 1 (Dec 1)
- LogisticRegression
- multiclass, proba
- decision boundaries
QUIZ 10 DUE
Watch: Lecture
Slides: PDF
[Fri] Classification 2 (Dec 3)
- confusion matrices
- accuracy, precision, recall
- regularization and standardization
Due: P6
Released: P7 (classification)
Watch: Lecture
Slides: PDF
Week 14
[Wed] Clustering 2 (Dec 8)
- hierarchical clustering
- dendrograms
- linkage matrices
- AgglomerativeClustering
QUIZ 11 DUE
Watch: Lecture
Slides: PDF
[Fri] Decomposition (Dec 10)
- Singular Value Decomposition (SVD)
- Principal Component Analysis (PCA)
- Compressing Data
Watch: Lecture
Read: Lecture Notes (NB)
Week 15
[Mon] Parallelism 1 (Dec 13)
- multiprocessing pools
- parallel map
Lab: Clustering Pixels
Due: P7
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
[Mon] Regression 1 (Nov 15)
- ML overview
- sklearn LinearRegression
- explained variance
- train/test split
Watch: Lecture
Slides: PDF
[Fri] Linear Algebra 1 (Nov 19)
- numpy arrays
- numpy images
- multiplication
Read: Lecture Notes (NB)
[Mon] Linear Algebra 2 (Nov 22)
- more multiplication
- fit with np.linalg.solve
- predict with np.dot
- column perspective
Due: P5
Released: P6 (land matrices and regression)
Lab: Dot Product and Counting Cells
Read: Lecture Notes (NB)
[Fri] Thanksgiving Break (Nov 26)
Week 13
[Mon] Linear Algebra 3 (Nov 29)
- column spaces
- projection matrices
Lab: Model Comparison
Watch: Lecture
Read: Lecture Notes (NB)
[Wed] Classification 1 (Dec 1)
- LogisticRegression
- multiclass, proba
- decision boundaries
QUIZ 10 DUE
Watch: Lecture
Slides: PDF
[Fri] Classification 2 (Dec 3)
- confusion matrices
- accuracy, precision, recall
- regularization and standardization
Due: P6
Released: P7 (classification)
Watch: Lecture
Slides: PDF
Week 14
[Wed] Clustering 2 (Dec 8)
- hierarchical clustering
- dendrograms
- linkage matrices
- AgglomerativeClustering
QUIZ 11 DUE
Watch: Lecture
Slides: PDF
[Fri] Decomposition (Dec 10)
- Singular Value Decomposition (SVD)
- Principal Component Analysis (PCA)
- Compressing Data
Watch: Lecture
Read: Lecture Notes (NB)
Week 15
[Mon] Parallelism 1 (Dec 13)
- multiprocessing pools
- parallel map
Lab: Clustering Pixels
Due: P7
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
[Mon] Linear Algebra 3 (Nov 29)
- column spaces
- projection matrices
Watch: Lecture
Read: Lecture Notes (NB)
[Wed] Classification 1 (Dec 1)
- LogisticRegression
- multiclass, proba
- decision boundaries
Watch: Lecture
Slides: PDF
[Fri] Classification 2 (Dec 3)
- confusion matrices
- accuracy, precision, recall
- regularization and standardization
Released: P7 (classification)
Watch: Lecture
Slides: PDF
[Wed] Clustering 2 (Dec 8)
- hierarchical clustering
- dendrograms
- linkage matrices
- AgglomerativeClustering
Watch: Lecture
Slides: PDF
[Fri] Decomposition (Dec 10)
- Singular Value Decomposition (SVD)
- Principal Component Analysis (PCA)
- Compressing Data
Read: Lecture Notes (NB)
Week 15
[Mon] Parallelism 1 (Dec 13)
- multiprocessing pools
- parallel map
Lab: Clustering Pixels
Due: P7
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)
[Mon] Parallelism 1 (Dec 13)
- multiprocessing pools
- parallel map
Due: P7
Watch: Lecture
Slides: PDF
Read: Lecture Notes (NB)