Goals
-
We should have a Github repo
-
Each person should be able to…
-
Run the code from last project on their laptop
-
Access DeepThought and/or Nathan’s Desktop and run intensive training code
-
Access and contribute to the training data repository
Instructions
Things to install
-
Python 2.7
- Test: in terminal, run
python --version
- Test: in terminal, run
-
ROS Kinetic
- Test by running
rosversion -d
in a terminal
- Test by running
-
ML Libraries:
-
-
Don’t try to set up GPU support, it will end in fire and pain.
-
sudo -H pip install tensorflow
-
Test: in terminal, run
python -c "import tensorflow; print('Works!')"
-
-
-
sudo -H pip install keras
-
Test: in terminal, run
python -c "import keras"
It should say “Using TensorFlow backend.”
-
-
-
Misc
-
- Test: run
python -c "import bcolz; bcolz.test()"
- Test: run
-
Numpy: The preferred way to run numeric computations in python. All hail Numpy.
- Test: run
python -c "import numpy as np; np.test()"
- Test: run
-
Glob: Returns names of items in a directory as a list.
- Test: run
python -c "from glob import glob; print('Works')"
- Test: run
-
PIL
-
Matplotlib: Plots in python, based off of MatLab’s plotting commands
-
sudo apt-get install python-matplotlib
for Ubuntu Linux -
Test: run
python -c "import matplotlib.pyplot as plt; print('Works!')"
-
-
Seaborn: Prettier plots on top of matplotlib
- Test:
python -c "import seaborn as sns;print('Works')"
- Test:
-
Tqdm: Adds progress bars to loops
- Test:
python -c "import tqdm; print('Works')"
- Test:
-
Working on a remote computer:
Notes
-
The examples here assume the remote computer is called ‘nathanDesktop’, the username is ‘nathan’, and DNS resolving works properly on your network.
-
We are connecting to the remote computer because it’s a better way than using a shared user account. If you have a different method that works better for you, follow that.
Steps:
-
Get access to the remote computer using SSH public keys (once)
-
Generate them (Ubuntu Guide)
-
Transmit them to the owner
-
Your public key is found at
~/.ssh/id_rsa.pub
-
Send the contents of that file over email, Google Docs, etc.
-
While you’re at it, you should add your SSH key to Github, if you haven’t already. It’ll allow you to access your repos without entering your u/n and password every time.
-
-
Owner adds the keys to server
-
All public keys should be stored in .ssh/authorized_keys
-
http://stackoverflow.com/questions/12392598/how-to-add-rsa-key-to-authorized-keys-file
-
-
-
Access and edit your files!
-
Connect to the computer via ssh
ssh nathan@nathanDesktop
-
[Optional] If you want to use tmux rather than your normal terminal:
-
Try
$ tmux ls
- Should print out that jupyter_server is running.
-
tmux a -t jupyter_server
-
Navigate tmux using ctrl+b, arrow key
-
-
-
Open the remote jupyter server in your browser to start editing files
-
$ ssh -N -f -L localhost:8890:localhost:8890 nathan@nathanDesktop
-
Go to
localhost:8890/tree
in browser -
Change kernel to your deep learning one. On Jupyter’s top bar, Kernel>’Python [condaenv:deepLearning]’
-
-
Want a file explorer - nautilus
- sftp://nathan@nathandesktop/home/nathan/olin/spring2017/line-follower
-
Try broadcasting a message:
wall _____
-
Code to download
Clone our repository into