/*** To use jupyter notebooks on our CS department machines, you must add this line to your .bashrc file: export PATH=/usr/local/anaconda3/latest/bin:$PATH ***/ /*** Please send your suggestions regarding lecture topics to Chuck using [[https://tinyurl.com/2nyfzc36|this Google Docs form]]. Questions regarding assignments should be entered in Canvas discussions. ***/ \\ \\ \\ The following schedule is **tentative and is being updated**. All students may attend the lecture remotely using [[https://zoom.us/j/92107238733?pwd=Wggv0JQGepdeoezMRrv0gpVImn90yl.1|this zoom link]]. ===== August ===== |< 100% 18% 20% 22% 20% 20% >| ^ Week ^ Topic ^ Lecture Notes ^ Reading ^ Assignments ^ | Week 1:\\ Aug 20, 22 | Course overview. \\ Machine Learning and AI: History and Present Boom\\ Jupyter notebooks. | [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/01 Introduction to CS545.ipynb|01 Introduction to CS545]]\\ [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/01a Simple Animations.ipynb|01a Simple Animations]]\\ [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/02 Searching for Good Weights in a Linear Model.ipynb|02 Searching for Good Weights in a Linear Model]] | [[https://jupyterlab.readthedocs.io/en/stable/getting_started/overview.html|JupyterLab Introduction]], watch the video then play with jupyter lab. \\ [[https://www.freecodecamp.org/news/exploratory-data-analysis-with-numpy-pandas-matplotlib-seaborn/|What is Data Analysis? How to Visualize Data with Python, Numpy, Pandas, Matplotlib & Seaborn Tutorial]], by Aakash NS| Not graded: Please fill out [[https://forms.gle/hppJ5QuRFuRn1L2h7|this anonymous survey]] before Thursday class. | | Week 2:\\ Aug 27, 29 | Optimization algorithms. Simple linear and nonlinear models. Confidence intervals. | [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/02 Searching for Good Weights in a Linear Model.ipynb|02 Searching for Good Weights in a Linear Model]] \\ [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/02a Input Importance and Generative AI---Friend or Foe.ipynb|02a Input Importance and Generative AI---Friend or Foe]] \\ [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/03 Fitting Simple Models Using Gradient Descent in the Squared Error.ipynb|03 Fitting Simple Models Using Gradient Descent in the Squared Error]]\\ [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/04 Training Multiple Models to Obtain Confidence Intervals.ipynb|04 Training Multiple Models to Obtain Confidence Intervals]] | | | ===== September ===== |< 100% 18% 20% 22% 20% 20% >| ^ Week ^ Topic ^ Lecture Notes ^ Reading ^ Assignments ^ | Week 3:\\ Sept 3, 5 | Introduction to neural networks. | [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/05 Introduction to Neural Networks.ipynb|05 Introduction to Neural Networks]] | [[https://www.3blue1brown.com/topics/neural-networks|3Blue1Brown Introduction to Neural Networks]] in the first five chapters provides a fun video tutorial including error backpropagation. | | | Week 4:\\ Sept 10, 12 | Design of NeuralNetwork class. Optimizers. Overview of A2. Memory organization for neural network parameters. Optimizers tailored for neural networks. | [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/06 Python Classes.ipynb|06 Python Classes]]\\ [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/07 Optimizers Simple.ipynb|07 Optimizers Simple]]\\ [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/08 Collecting All Weights into One-Dimensional Vector for Use in Optimizers.ipynb|08 Collecting All Weights into One-Dimensional Vector for Use in Optimizers]]\\ [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/08a Optimizers.ipynb|08a Optimizers]] | [[https://machinelearningmastery.com/weight-initialization-for-deep-learning-neural-networks/|Weight Initialization for Deep Learning Neural Networks]], by Jason Brownlee | [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/A1.ipynb|A1]] due Monday, September 9th, 10:00 PM. | | Week 5:\\ Sept 17, 19\\ Chuck's office hours cancelled today. | Introduction to Classification. | [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/09 Introduction to Classification.ipynb|09 Introduction to Classification]] | | [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/A2 NeuralNetwork Class.ipynb|A2 NeuralNetwork Class]] due Thursday, September 19, 10:00 PM. Here is an example solution to A2: [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/A2 NeuralNetwork Class Solution.ipynb|A2 NeuralNetwork Class Solution]].\\ Examples of good A2 solutions from your classmates can be [[https://www.cs.colostate.edu/~anderson/cs545/notebooks/goodones/index.html|found here]] | | Week 6:\\ Sept 24, 26 | Classification with Logistic Regression. | [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/10 Classification with Linear Logistic Regression.ipynb|10 Classification with Linear Logistic Regression]]\\ [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/11 Classification with Nonlinear Logistic Regression Using Neural Networks.ipynb|11 Classification with Nonlinear Logistic Regression Using Neural Networks]] | ===== October ===== |< 100% 18% 20% 22% 20% 20% >| ^ Week ^ Topic ^ Lecture Notes ^ Reading ^ Assignments ^ | Week 7:\\ Oct 1, 3 | Classification with Nonlinear Logistic Regression, K-Nearest-Neighbors. Clustering with K-Means. | [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/12 K-Means Clustering, K-Nearest-Neighbor Classification.ipynb|12 K-Means Clustering, K-Nearest-Neighbor Classification]] | | [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/A3 NeuralNetwork Class Using Optimizers.ipynb|A3 NeuralNetwork Class Using Optimizers]] due Friday, October 4th, 10:00 PM. A3grader.zip is now available. Examples of good A3 solutions from your classmates can be [[https://www.cs.colostate.edu/~anderson/cs545/notebooks/goodones/index.html|found here]]| | Week 8:\\ Oct 8, 10 | A4. Introduction to Reinforcement Learning. | [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/13 Introduction to Reinforcement Learning.ipynb|13 Introduction to Reinforcement Learning]]\\ [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/14 Reinforcement Learning with Neural Networks as Q Function.ipynb|14 Reinforcement Learning with Neural Networks as Q Function]] | [[https://www.nytimes.com/2024/10/08/science/nobel-prize-physics.html?campaign_id=9&emc=edit_nn_20241008&instance_id=136314&nl=the-morning®i_id=78404199&segment_id=179882&te=1&user_id=d288e49a9a2fae84a8aae92c8c269127|John Hopfield and Geoffrey Hinton awarded Nobel Physics Prize]]\\ [[https://www.youtube.com/watch?v=N1TEjTeQeg0|Will digital intelligence replace biological intelligence?]]\\ [[https://www.youtube.com/watch?v=Y6Sgp7y178k|Geoffrey Hinton Warns of the “Existential Threat” of AI]] | | Week 9:\\ Oct 15, 17 | Reinforcement learning with Q Function as Neural Network. Learning to play games. | [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/14 Reinforcement Learning with Neural Networks as Q Function.ipynb|14 Reinforcement Learning with Neural Networks as Q Function]]\\ [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/15 Reinforcement Learning for Two Player Games.ipynb|15 Reinforcement Learning for Two Player Games]]\\ [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/16 Targets and Deltas Summary.ipynb|16 Targets and Deltas Summary]] | | [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/A4 Neural Network Classifier.ipynb|A4 Neural Network Classifier]] due Friday, October 18th, 10:00 PM. Examples of good A4 solutions from your classmates can be [[https://www.cs.colostate.edu/~anderson/cs545/notebooks/goodones/index.html|found here]] | | Week 10:\\ Oct 22, 24 | Modular framework for reinforcement learning. Parallel processing with ray. Introductions to Pytorch and Jax. | [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/17 Modular Framework for Reinforcement Learning.ipynb|17 Modular Framework for Reinforcement Learning]]\\ [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/18 Ray for Parallel Processing.ipynb|18 Ray for Parallel Processing]]\\ [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/19 More Tic-Tac-Toe and a Simple Robot Arm.ipynb|19 More Tic-Tac-Toe and a Simple Robot Arm]]\\ [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/20 Introduction to Jax.ipynb|19 Introduction to Jax]]\\ [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/21 Introduction to Pytorch.ipynb|21 Introduction to Pytorch]] | [[https://www.whitehouse.gov/briefing-room/statements-releases/2023/10/30/fact-sheet-president-biden-issues-executive-order-on-safe-secure-and-trustworthy-artificial-intelligence/|President Biden's Executive Order on Safe, Secure, and Trustworthy Artificial Intelligence]] | [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/Project Proposal and Report Example.ipynb|Project proposal]] due at 10 pm Friday evening, October 25th. | | Week 11:\\ Oct 29, 31 | A5.\\ Pytorch.\\ Convolutions. | [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/22 Introduction to Convolutional Neural Networks.ipynb|22 Introduction to Convolutional Neural Networks]]\\ [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/23 Convolutional Neural Network in Numpy.ipynb|23 Convolutional Neural Network in Numpy]] | [[https://medium.com/@mayank.utexas/backpropagation-for-convolution-with-strides-8137e4fc2710|Backpropagation for Convolution]] by Mayank Kaushik\\ [[https://pavisj.medium.com/convolutions-and-backpropagations-46026a8f5d2c|Convolutions and Backpropagations]] by Pavithra Solai | | ===== November ===== |< 100% 18% 20% 22% 20% 20% >| ^ Week ^ Topic ^ Lecture Notes ^ Reading ^ Assignments ^ | Week 12:\\ Nov 5, 7 | Convolutional Neural Networks in Pytorch | [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/24 Convolutional Neural Network Class in Pytorch.ipynb|24 Convolutional Neural Network Class in Pytorch]]\\ [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/25 CNN on One-Dimensional Data.ipynb|25 CNN on One-Dimensional Data]] | | [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/A5 Pole Balancing with Reinforcement Learning.ipynb|A5 Pole Balancing with Reinforcement Learning]] Updated Oct 29, 9:30 AM. Due Friday, , November 8th, 10:00 PM. | | Week 13:\\ Nov 12, 14 | Ensembles. Autoencoders. Recurrent Neural Networks. | [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/26 Ensembles.ipynb|26 Ensembles]]\\ [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/27 Autoencoders.ipynb|27 Autoencoders]]\\ [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/28 Recurrent Networks in Numpy.ipynb|28 Recurrent Networks in Numpy]]\\ [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/29 Recurrent Networks in Pytorch.ipynb|29 Recurrent Networks in Pytorch]] | | | Week 14:\\ Nov 19, 21 | Word Embeddings. Transformers. Support Vector Machines. | [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/30 Word Embeddings.ipynb|30 Word Embeddings]]\\ [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/31 Introduction to Transformers.ipynb|31 Introdcution to Transformers]]\\ [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/32 Support Vector Machines.ipynb|32 Support Vector Machines]] | [[https://www.nature.com/articles/d41586-023-03635-w|ChatGPT generates fake data set to support scientific hypothesis]] | [[https://nbviewer.org/url/www.cs.colostate.edu/~anderson/cs545/notebooks/A6 Convolutional Neural Networks.ipynb|A6 Convolutional Neural Networks]] Due Thursday, November 21st, 10:00 PM. | | Fall Break:\\ Nov 25-29 | No classes. | ===== December ===== |< 100% 18% 20% 22% 20% 20% >| ^ Week ^ Topic ^ Lecture Notes ^ Reading ^ Assignments ^ | Week 15:\\ Dec 3, 5 | Transformers. Streamlit. | | | | | Dec 10-12 | Final Exam Week | No Exams in this course | | |