Resources
Project Guide
Books
- (LFD) Abu-Mostafa, Magdon-Ismail, and Lin. Learning From Data.
- (ISL) James, Witten, Hastie, and Tibshirani. An Introduction to Statistical Learning. (generously provided for free by the authors)
- (MML) Deisenroth, Faisal, and Ong. Mathematics for Machine Learning. (generously provided for free by the authors)
- (DL) Goodfellow, Bengio, and Courville. Deep Learning. (generously provided for free by the authors)
- (RL) Sutton, and Barto. Reinforcement Learning: An Introduction. (generously provided for free by the authors)
Installing Mamba and Python packages
Newspapers
Digital access to the NYTimes and the Washington Post are available to all USNA students. Both (and especially the NYTimes) do a good job of data-driven reporting. We will access them both for class.
To sign up for the NYTimes, go here, enter “United States Naval Academy,” and create an account using your usna.edu email address.
To sign up for the Washington Post, go here, and enter your usna.edu email address to create a free account.
Working on a remote Jupyter notebook
When you run a Jupyter notebook, it sets up the Python kernel which is actually running your code, and a web server which serves the page you interact with it through. You can access that server remotely, which lets you run code on that faster machine over there, and interact with it with a machine over here.
- SSH onto the remote machine as normal, with no special flags.
- Run
tmux(orscreen, whichever you prefer). These programs allow you to run a command on a remote machine, “detatch” from that session, and they’ll keep running even if you lose connection. (NOTE:tmuxandscreencan change your life) - On the remote machine, run
jupyter notebook --no-browser --ip=0.0.0.0 --port=2XXXXwhere theXXXXis the last four numbers of your alpha. - It will output a URL that looks something like this:
http://ward-rweb-09:(your port)/?token=SOMELONGHASH. Copy it, and paste it into your local browser. - Detatch from the tmux or screen session (ctrl-b d on tmux, or ctrl-a d on screen). You can now log off the ssh terminal if you like.
- When you log back in, you can rejoin that session with
tmux attachorscreen -r.